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

ritorna