codice utilizzabile per le quattro coniugazioni:
es.lodare, monere, legere, audire
si devono solo modificare le desinenze
proprie per ogni coniugazione
(alcune restano costanti)
-----------------------------------------------------------------------------------
Rem coniugazione verbo latino regolare
Private Sub CommandButton1_Click()
dimensionamento stringhe, numeri
Dim infinito As String
Dim perfetto As String
Dim lungo As Integer
Dim x As Integer
Dim radice As String
Dim radicep As String
Dim radicex As String
ricerca radice da infinito e
perfetto inseriti
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
verifica se coniugazione corretta in funzione di
desinenza finale
Dim desi As String
desi = Right$(infinito, 3)
If desi <> "are" Then
MsgBox ("non è della prima coniugazione:riprova")
End If
attiva chiamata procedura per coniugazione
Call primax(radice, radicep,
radicex)
End Sub
Private Sub primax(rad1 As String, rad2 As String, rad3 As
String)
dimensionamento
Dim radice As String
Dim radicep As String
Dim radicex As String
Dim codice As Integer
assegna contenuto a variabili
codice = indice.Text
radice = rad1
radicep = rad2
radicex = rad3
seleziona tempo da coniugare in funzione di
pulsante cliccato
assegna desinenze per coniugare tempi selezionati e radice da
usare
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
Public Sub coniugare(a1 As String, a2 As String, a3 As String, a4
As String, a5 As String, a6 As String, radi As String)
dimensionamento
Dim forma(6) As String
Dim coniuga(6) As String
forma(1) = a1
forma(2) = a2
forma(3) = a3
forma(4) = a4
forma(5) = a5
forma(6) = a6
crea forme verbali
For x = 1 To 6
coniuga(x) = radi & forma(x)
Next x
stampa forme verbali
prima.Caption = coniuga(1)
seconda.Caption = coniuga(2)
terza.Caption = coniuga(3)
quarta.Caption = coniuga(4)
quinta.Caption = coniuga(5)
sesta.Caption = coniuga(6)
End Sub
seleziona pulsanti per tempi da coniugare
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
Private Sub UserForm_Click()
End Sub