1: DECLARE FUNCTION FixVerb$ (v$) 2: DECLARE FUNCTION IsVowel! (v$) 3: DECLARE SUB DoExt (Ext$) 4: ON ERROR GOTO AResume 5: DIM SHARED Ext$(1 TO 8) 6: CLS 7: LINE INPUT "Output Device>", IO$ 8: OPEN IO$ FOR OUTPUT AS #1 9: 10 LINE INPUT "Verb>", IRVerb$ 10: IF IRVerb$ = "" THEN CLOSE 1: END 11: IF IsVowel(LEFT$(IRVerb$, 1)) THEN Sep$ = "'" ELSE Sep$ = "e " 12: LINE INPUT "Meaning>", Meaning$ 13: DoExt RIGHT$(UCASE$(IRVerb$), 2) 14: Stem$ = LCASE$(LEFT$(IRVerb$, LEN(IRVerb$) - 2)) 15: IF RTRIM$(LTRIM$(Meaning$)) <> "" THEN PRINT #1, UCASE$(LEFT$(IRVerb$, 1)) + LCASE$(RIGHT$(IRVerb$, LEN(IRVerb$) - 1)) + " - " + LCASE$(RTRIM$(LTRIM$(Meaning$))) 16: PRINT #1, "(1) Present Indicative (2) Negative" 17: PRINT #1, "" 18: PRINT #1, "Je " + Stem$ + Ext$(1) + STRING$(38 - LEN("Je " + Stem$ + Ext$(1)), " ") + "Je ne " + Stem$ + Ext$(1) + " pas" 19: PRINT #1, "Tu " + Stem$ + Ext$(2) + STRING$(38 - LEN("Tu " + Stem$ + Ext$(2)), " ") + "Tu ne " + Stem$ + Ext$(2) + " pas" 20: PRINT #1, "Il " + Stem$ + Ext$(3) + STRING$(38 - LEN("Il " + Stem$ + Ext$(3)), " ") + "Il ne " + Stem$ + Ext$(3) + " pas" 21: PRINT #1, "Elle " + Stem$ + Ext$(4) + STRING$(38 - LEN("eeIl " + Stem$ + Ext$(4)), " ") + "Elle ne " + Stem$ + Ext$(4) + " pas" 22: PRINT #1, "Nous " + Stem$ + Ext$(5) + STRING$(38 - LEN("eeIl " + Stem$ + Ext$(5)), " ") + "Nous ne " + Stem$ + Ext$(5) + " pas" 23: PRINT #1, "Vous " + Stem$ + Ext$(6) + STRING$(38 - LEN("eeIl " + Stem$ + Ext$(6)), " ") + "Vous ne " + Stem$ + Ext$(6) + " pas" 24: PRINT #1, "Ils " + Stem$ + Ext$(7) + STRING$(38 - LEN("Ils " + Stem$ + Ext$(7)), " ") + "Ils ne " + Stem$ + Ext$(7) + " pas" 25: PRINT #1, "Elles " + Stem$ + Ext$(8) + STRING$(38 - LEN("eeIll " + Stem$ + Ext$(8)), " ") + "Elles ne " + Stem$ + Ext$(8) + " pas" 26: PRINT #1, "" 27: PRINT #1, "" 28: PRINT #1, "(3) Interogative (4) Negative Interogative" 29: PRINT #1, "" 30: PRINT #1, "Est-ce que je " + Stem$ + Ext$(1) + STRING$(38 - LEN("Est-ce que je " + Stem$ + Ext$(1)), " ") + "Est-ce que je ne " + Stem$ + Ext$(1) + " pas" 31: MID$(Stem$, 1, 1) = UCASE$(MID$(Stem$, 1, 1)) 32: PRINT #1, Stem$ + Ext$(2) + "-tu" + STRING$(38 - LEN("Tu " + Stem$ + Ext$(2)), " ") + "Ne " + LCASE$(Stem$) + Ext$(2) + "-tu pas" 33: PRINT #1, Stem$ + Ext$(3) + "-il" + STRING$(38 - LEN("Il " + Stem$ + Ext$(3)), " ") + "Ne " + LCASE$(Stem$) + Ext$(3) + "-il pas" 34: PRINT #1, Stem$ + Ext$(4) + "-elle" + STRING$(38 - LEN("eeIl " + Stem$ + Ext$(4)), " ") + "Ne " + LCASE$(Stem$) + Ext$(4) + "-elle pas" 35: PRINT #1, Stem$ + Ext$(5) + "-nous" + STRING$(38 - LEN("eeIl " + Stem$ + Ext$(5)), " ") + "Ne " + LCASE$(Stem$) + Ext$(5) + "-nous pas" 36: PRINT #1, Stem$ + Ext$(6) + "-vous" + STRING$(38 - LEN("eeIl " + Stem$ + Ext$(6)), " ") + "Ne " + LCASE$(Stem$) + Ext$(6) + "-vous pas" 37: PRINT #1, Stem$ + Ext$(7) + "-ils" + STRING$(38 - LEN("Ils " + Stem$ + Ext$(7)), " ") + "N" + Sep$ + LCASE$(FixVerb$(Stem$)) + Ext$(7) + "-ils pas" 38: PRINT #1, Stem$ + Ext$(8) + "-elles" + STRING$(38 - LEN("eeIll " + Stem$ + Ext$(8)), " ") + "Ne " + LCASE$(Stem$) + Ext$(8) + "-elles pas" 39: PRINT #1, "" 40: PRINT #1, "" 41: LOCATE , , 1: LOCATE 25, 1: PRINT "Do another (y/N)?"; : d$ = UCASE$(INPUT$(1)): PRINT d$; 42: IF d$ = "Y" THEN CLS : GOTO 10 43: CLOSE 1 44: END 45: 46: AResume: 47: RESUME 48: 49: SUB DoExt (Ext$) 50: SELECT CASE UCASE$(Ext$) 51: CASE "IR" 52: Ext$(1) = "is" 'JE-IS 53: Ext$(2) = "is" 'TU-IS 54: Ext$(3) = "it" 'IL-IT 55: Ext$(4) = "it" 'ELLE-IT 56: Ext$(5) = "issons" 'NOUS-ISSONS 57: Ext$(6) = "issez" 'VOUS-ISSEZ 58: Ext$(7) = "issent" 'ILS-ISSENT 59: Ext$(8) = "issent" 'ELLES-ISSENT 60: CASE "ER" 61: Ext$(1) = "e" 'JE-E 62: Ext$(2) = "es" 'TU-ES 63: Ext$(3) = "e" 'IL-E 64: Ext$(4) = "e" 'ELLE-E 65: Ext$(5) = "ons" 'NOUS-ONS 66: Ext$(6) = "ez" 'VOUS-EZ 67: Ext$(7) = "ent" 'ILS-ENT 68: Ext$(8) = "ent" 'ELLES-ENT 69: CASE "RE" 70: Ext$(1) = "s" 'JE-E 71: Ext$(2) = "s" 'TU-ES 72: Ext$(3) = "" 'IL- 73: Ext$(4) = "" 'ELLE- 74: Ext$(5) = "ons" 'NOUS-ONS 75: Ext$(6) = "ez" 'VOUS-EZ 76: Ext$(7) = "ent" 'ILS-ENT 77: Ext$(8) = "ent" 'ELLES-ENT 78: CASE ELSE: PRINT "UNKNOW VERB TYPE: " + UCASE$(Ext$): END 79: END SELECT 80: END SUB 81: 82: FUNCTION FixVerb$ (v$) 83: IF LCASE$(LEFT$(v$, 1)) = "a" OR LCASE$(LEFT$(v$, 1)) = "e" OR LCASE$(LEFT$(v$, 1)) = "i" OR LCASE$(LEFT$(v$, 1)) = "o" OR LCASE$(LEFT$(v$, 1)) = "u" THEN FixVerb$ = RIGHT$(v$, LEN(v$) - 1) ELSE FixVerb$ = v$ 84: END FUNCTION 85: 86: FUNCTION IsVowel (v$) 87: IF LCASE$(LEFT$(v$, 1)) = "a" OR LCASE$(LEFT$(v$, 1)) = "e" OR LCASE$(LEFT$(v$, 1)) = "i" OR LCASE$(LEFT$(v$, 1)) = "o" OR LCASE$(LEFT$(v$, 1)) = "u" THEN IsVowel = -1 ELSE IsVowel = 0 88: END FUNCTION 89: |