coniugazione verbi latini con visual basic

scrivere infinito e perfetto del verbo, cliccare su un tempo(es.presente), inserire forme verbali,cliccare su coniugare per verifica

 


VERSION 5.00
Begin {C62A69F0-16DC-11CE-9E98-00AA00574A4F} UserForm1 
   Caption         =   "UserForm1"
   ClientHeight    =   4500
   ClientLeft      =   45
   ClientTop       =   330
   ClientWidth     =   8010
   OleObjectBlob   =   "attiovo2.frx":0000
   StartUpPosition =   1  'CenterOwner
End
Attribute VB_Name = "UserForm1"
Attribute VB_GlobalNameSpace = False
Attribute VB_Creatable = False
Attribute VB_PredeclaredId = True
Attribute VB_Exposed = False
Rem coniugazione verbo latino regolare
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 = ""
seconda.Caption = ""
terza.Caption = ""
quarta.Caption = ""
quinta.Caption = ""
sesta.Caption = ""
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)
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
Private Sub regola_Change()
End Sub
Private Sub UserForm_Click()
End Sub