latino
esempio coniugazione verbi latini con correzione errori eventuali Private Sub CommandButton1_Click() Dim infinito As String Dim perfetto As String Dim lungo As Integer Dim x As Integer Dim verbor As Integer Dim radice As String Dim radicep As String Dim radicex As String infinito = verbo.Text perfetto = perfettox.Text lungo = Len(verbo.Text) lungop = Len(perfettox.Text) radice = Left$(infinito, lungo - 3) radicep = Left$(perfetto, lungop - 1) radicex = infinito Dim desi As String desi = Right$(infinito, 3) If desi = "are" Then verbor = 1 If desi = "ére" Then verbor = 2 If desi = "ere" Then verbor = 3 If desi = "ire" Then verbor = 4 If desi = "are" Then tipo.Caption = "prima coniugazione" If desi = "ére" Then tipo.Caption = "seconda coniugazione" If desi = "ere" Then tipo.Caption = "terza coniugazione" If desi = "ire" Then tipo.Caption = "quarta coniugazione" Call scelta(radice, radicep, radicex, verbor) End Sub Public Sub scelta(rad1 As String, rad2 As String, rad3 As String, verbor As Integer) Dim numerox As Integer Dim radice As String Dim radicep As String Dim codice As Integer radice = rad1 radicep = rad2 Dim radicex As String radicex = rad3 numerox = verbor Select Case numerox Case 1 Call primac(radice, radicep, rad3) Case 2 Call secondac(radice, radicep, rad3) Case 3 Call terzac(radice, radicep, rad3) Case 4 Call quartac(radice, radicep, rad3) End Select End Sub Private Sub primac(rad1 As String, rad2 As String, rad3 As String) Dim radice As String Dim radicep As String Dim radicex As String Dim codice As Integer codice = indice.Text radice = rad1 radicep = rad2 radicex = rad3 Select Case codice Case 1 Call coniugare("o", "as", "at", "amus", "atis", "ant", radice) Case 2 Call coniugare("abam", "abas", "abat", "abamus", "abatis", "abant", radice) Case 3 Call coniugare("abo", "abis", "abit", "abimus", "abitis", "abunt", radice) Case 4 Call coniugare("i", "isti", "it", "imus", "istis", "erunt", radicep) Case 5 Call coniugare("eram", "eras", "erat", "eramus", "eratis", "erant", radicep) Case 6 Call coniugare("ero", "eris", "erit", "erimus", "eritis", "erint", radicep) Case 7 Call coniugare("em", "es", "et", "emus", "etis", "ent", radice) Case 8 Call coniugare("m", "s", "t", "mus", "tis", "nt", radicex) Case 9 Call coniugare("erim", "eris", "erit", "erimus", "eritis", "erint", radicep) Case 10 Call coniugare("issem", "isses", "isset", "issemus", "issetis", "issent", radicep) End Select End Sub Private Sub secondac(rad1 As String, rad2 As String, rad3 As String) Dim radice As String Dim radicep As String Dim radicex As String Dim codice As Integer codice = indice.Text radice = rad1 radicep = rad2 radicex = rad3 Select Case codice Case 1 Call coniugare("eo", "es", "et", "emus", "etis", "ent", radice) Case 2 Call coniugare("ebam", "ebas", "ebat", "ebamus", "ebatis", "ebant", radice) Case 3 Call coniugare("ebo", "ebis", "ebit", "ebimus", "ebitis", "ebunt", radice) Case 4 Call coniugare("i", "isti", "it", "imus", "istis", "erunt", radicep) Case 5 Call coniugare("eram", "eras", "erat", "eramus", "eratis", "erant", radicep) Case 6 Call coniugare("ero", "eris", "erit", "erimus", "eritis", "erint", radicep) Case 7 Call coniugare("eam", "eas", "eat", "eamus", "eatis", "eant", radice) Case 8 Call coniugare("m", "s", "t", "mus", "tis", "nt", radicex) Case 9 Call coniugare("erim", "eris", "erit", "erimus", "eritis", "erint", radicep) Case 10 Call coniugare("issem", "isses", "isset", "issemus", "issetis", "issent", radicep) End Select End Sub Private Sub terzac(rad1 As String, rad2 As String, rad3 As String) Dim radice As String Dim radicep As String Dim radicex As String Dim codice As Integer codice = indice.Text radice = rad1 radicep = rad2 radicex = rad3 Select Case codice Case 1 Call coniugare("o", "is", "it", "imus", "itis", "unt", radice) Case 2 Call coniugare("ebam", "ebas", "ebat", "ebamus", "ebatis", "ebant", radice) Case 3 Call coniugare("am", "es", "et", "emus", "etis", "ent", radice) Case 4 Call coniugare("i", "isti", "it", "imus", "istis", "erunt", radicep) Case 5 Call coniugare("eram", "eras", "erat", "eramus", "eratis", "erant", radicep) Case 6 Call coniugare("ero", "eris", "erit", "erimus", "eritis", "erint", radicep) Case 7 Call coniugare("am", "as", "at", "amus", "atis", "ant", radice) Case 8 Call coniugare("m", "s", "t", "mus", "tis", "nt", radicex) Case 9 Call coniugare("erim", "eris", "erit", "erimus", "eritis", "erint", radicep) Case 10 Call coniugare("issem", "isses", "isset", "issemus", "issetis", "issent", radicep) End Select End Sub Private Sub quartac(rad1 As String, rad2 As String, rad3 As String) Dim radice As String Dim radicep As String Dim radicex As String Dim codice As Integer codice = indice.Text radice = rad1 radicep = rad2 radicex = rad3 Select Case codice Case 1 Call coniugare("io", "is", "it", "imus", "itis", "iunt", radice) Case 2 Call coniugare("iebam", "iebas", "iebat", "iebamus", "iebatis", "iebant", radice) Case 3 Call coniugare("iam", "ies", "iet", "iemus", "ietis", "ient", radice) Case 4 Call coniugare("i", "isti", "it", "imus", "istis", "erunt", radicep) Case 5 Call coniugare("eram", "eras", "erat", "eramus", "eratis", "erant", radicep) Case 6 Call coniugare("ero", "eris", "erit", "erimus", "eritis", "erint", radicep) Case 7 Call coniugare("iam", "ias", "iat", "iamus", "iatis", "iant", radice) Case 8 Call coniugare("m", "s", "t", "mus", "tis", "nt", radicex) Case 9 Call coniugare("erim", "eris", "erit", "erimus", "eritis", "erint", radicep) Case 10 Call coniugare("issem", "isses", "isset", "issemus", "issetis", "issent", radicep) End Select End Sub Public Sub coniugare(a1 As String, a2 As String, a3 As String, a4 As String, a5 As String, a6 As String, radi As String) Dim forma(6) As String Dim coniuga(6) As String Dim rispo(6) As String forma(1) = a1 forma(2) = a2 forma(3) = a3 forma(4) = a4 forma(5) = a5 forma(6) = a6 rispo(1) = risposta1.Text rispo(2) = risposta2.Text rispo(3) = risposta3.Text rispo(4) = risposta4.Text rispo(5) = risposta5.Text rispo(6) = risposta6.Text For x = 1 To 6 coniuga(x) = radi & forma(x) Next x For x = 1 To 6 If coniuga(x) = rispo(x) Then MsgBox x & " esatto" Else If coniuga(x) <> rispo(x) Then MsgBox x & " errato,era=" & coniuga(x) End If End If Next x prima.Caption = coniuga(1) If rispo(1) <> coniuga(1) Then MsgBox "errato:era=" & coniuga(1) seconda.Caption = coniuga(2) If rispo(2) <> coniuga(2) Then MsgBox "errato:era=" & coniuga(2) terza.Caption = coniuga(3) If rispo(3) <> coniuga(3) Then MsgBox "errato:era=" & coniuga(3) quarta.Caption = coniuga(4) If rispo(4) <> coniuga(4) Then MsgBox "errato:era=" & coniuga(4) quinta.Caption = coniuga(5) If rispo(5) <> coniuga(5) Then MsgBox "errato:era=" & coniuga(5) sesta.Caption = coniuga(6) If rispo(6) <> coniuga(6) Then MsgBox "errato:era=" & coniuga(6) MsgBox "premi OK per continuare o finire" prima.Caption = "1 persona" seconda.Caption = "2 persona" terza.Caption = "3 persona" quarta.Caption = "4 persona" quinta.Caption = "5 persona" sesta.Caption = "6 persona" tipo.Caption = "" End Sub Private Sub Label9_Click() End Sub Private Sub CommandButton10_Click() indice = 9 End Sub Private Sub CommandButton11_Click() indice = 10 End Sub Private Sub CommandButton2_Click() indice = 1 End Sub Private Sub CommandButton3_Click() indice = 3 End Sub Private Sub CommandButton4_Click() indice = 5 End Sub Private Sub CommandButton5_Click() indice = 2 End Sub Private Sub CommandButton6_Click() indice = 4 End Sub Private Sub CommandButton7_Click() indice = 6 End Sub Private Sub CommandButton8_Click() indice = 7 End Sub Private Sub CommandButton9_Click() indice = 8 End Sub