Entraînement à la la conjugaison du futur simple

Description

Exercices d'observation de formation du futur simple de l'indicatif (difficultés liées au radical), puis d'entraînement sur cette conjugaison
On peut créer sa propre liste de verbes à tester en listant 21 verbes à l'infinitif dans le fichier "verb20.txt" (inf1 [ENTREE] inf2 [ENTREE] -ne rien écrire d'autre-)

On peut aussi créer (plus laborieux) d'autres textes à mettre au futur à partir de "(docfutur).rtf " que vous pourrez écrire ou scanner :
utiliser la source " http://www.vbfrance.com/codes/EXERCICES-TROUS-PARTIR-DOCUMENT-RTF-EXEMPLES-SAISIES-EXEMPLES_52633.aspx " :
observer le codage de "HARENIFS.TXT" puis
utiliser ("sais1mtrtf-txt.exo" à modifier en "sais1mtrtf-txt.exe" ) pour créer le fichier.txt à joindre (ajouter aux coordonnées saisies les renseignements nécessaires:nb tirets,infinitif,code modif radical), en respectant la forme des renseignements à y inclure(cf HARENIFS.TXT) et enfin en modifiant le suffixe "(docfutur).rtf " en "(docfutur).rfs "

Si -par hasard- quelqu'un l'utilise et trouve des erreurs ou des oublis, ==> commentaire, et je serais très heureux de modifier .
[NB: 1 - j'ai mis les verbes en -ayer au même rang que les autres en-yer: (y ==>i) [ierai, ieras...] (sauf envoyer, bien sûr)
2- je n'ai compté comme impersonnels/défectifs que falloir, pleuvoir, seoir et messeoir] ...Je n'ai pas ajouté neiger, venter......
Si ça vous gêne vraiment, dites-le (ou complétez dans" sub afficher":defect = "012345": If inf = "falloir" Or inf = "pleuvoir" Then defect = "2" Else If inf = "seoir" Or inf = "messeoir" Then defect = "25" - ou faire un array et test de liste)]

(les cf.rtf, cf0.rtf, etc sont laissés si vous voulez les arranger à votre sauce: pour la série "cf-.", faire une copie d'écran et cadrer l'image.jpg obtenue (à enregistrer avec même radical), car c'est l'image qui sera affichée)
(pour la série cfs-:[ cfs1.rtf, cfs2.rtf, etc...] c'est le .rtf qui sera affiché en aide: vous pouvez les arranger à condition de réenregistrer sous le même nom)
le fichier "formfuturx.exo" doit être modifié en "formfuturx.exe" -(en plus des .dll ,etc de base de vb6, il faut les .dll ,etc de richtextbox:riched20.dll,riched32.dll,etc dans system32 ou syswow64, semble-t-il)

Pour les vbsixtes...
"doublons" n'est qu'un petit outil pour supprimer les doubles de mes listes (ouvrir et changer si néc le nom des fichiers.txt)
  • Ne pas lancer "exofs2.vbp" car j'ai modifié la fermeture de "exofs2.frm" pour l'inclure dans l'ensemble "formfuturx.vbp"


Toutes mes excuses auprès des administrateurs de vbfrance, particulièrement à Nhenry, car j'ai eu la flegme de redisposer l'ensemble mon bricolage (instructions multiples, pas assez de commentaires,etc...) [particulièrement exofs2 que j'avais fait dans les années 2000 et auquel je n'ai pas retouché] -seuls quelques petits éléments de procédures ont été mieux disposés-

Source / Exemple :


(quelques choix au départ:)
csne = Array("b", "c", "d", "f", "g", "j", "k", "l", "m", "n", "p", "r", "s", "t", "v", "z", "br", "cr", "ch", "qu", "vr") '0 à 15/16-20 (pas "x" ...voir si autres?
eter = Array("acheter", "corseter", "crocheter", "fileter", "fureter", "haleter") '0-5
eler = Array("celer", "déceler", "receler", "ciseler", "démanteler", "écarteler", "dégeler", "décongeler", "recongeler", "congeler", "surgeler", "geler", "marteler", "modeler", "peler") '  (0-14)

elter = Array("acheter", "corseter", "crocheter", "fileter", "fureter", "haleter", "celer", "déceler", "receler", "ciseler", "démanteler", "écarteler", "dégeler", "décongeler", "recongeler", "congeler", "surgeler", "geler", "marteler", "modeler", "peler") '  (0-20)   ,  ….)
prsuj = Array(" je (ou j') ", "    tu    ", "il,elle,on", "  nous    ", "  vous    ", "ils, elles")
prse = Array("me ", "te ", "se ", "nous ", "vous ", "se ")
prse1 = Array("m'", "t'", "s'", "nous ", "vous ", "s'")
term = Array("ai", "as", "a", "ons", "ez", "ont")
titfr = Array("infinitif complet + ai,as,a,ons,ez,ont", "inf-e + ai,as,a,ons,ez,ont  (rendr-) [dir-]...", "verbes en -yer", "E +consonne + er : [achEter ; pEler ; appEler ; jEter ; sEmer ; pEser]", _
"être  ;  composés de _faire", "avoir  ;  savoir ", "  aller   ", "composés de _tenir et _venir", "composés de _courir et de _quérir ; mourir", "verbes en -oir  [prévoir et pourvoir ont l'infinitif complet]", _
"composés de _cueillir")
testvf0 = Array("nouer", "s'acheter", "jeter", "peler", "s'appeler", "lancer", "manger", "se souvenir", "pouvoir", "être", "savoir", "se satisfaire", "avoir", "voir", "envoyer", "s'appuyer", "vouloir", "crier", "jaunir", "distribuer", "bouillir") '0-20

(partie "tri des verbes"):
Private Sub formationf() '************ tri formation du radical des verbes au futur simple***************
inf1 = Trim(inf): vpro = 0
If Left(inf, 2) = "s'" Then inf1 = Mid(inf, 3): vpro = 2 Else If Left(inf, 3) = "se " Then inf1 = Mid(inf, 4): vpro = 1 'cas des verbes pronominaux

If Right(inf1, 2) = "er" Then
    If inf1 = "aller" Then
        rad = "ir": codf = "f20(2)": r = "ir": 'aller
    ElseIf Right(inf1, 3) = "yer" Then If Right(inf1, 7) = "envoyer" Then rad = Left(inf1, Len(inf1) - 4) + "err": codf = "f10(0)" Else rad = Left(inf1, Len(inf1) - 3) + "ier": codf = "f10(1)":  ''envoyer ou autres-yer  (je n'ai pas gardé la possibilité -ayerai)
    Else
    
        For xx = 0 To 15
            If Right(inf1, 4) = "e" & csne(xx) & "er" Then
                If csne(xx) = "l" Or csne(xx) = "t" Then 'tester d'abord les -eler; -eter
                    For yy = 0 To 20
                    If inf1 = elter(yy) Then rad = Left(inf1, Len(inf1) - 4) + "è" + Mid(inf1, Len(inf1) - 2, 1) + "er": codf = "f110(0)": yy = 20: 'voir si c'est ds la liste des _èler-/_èter-
                    Next yy
                    If rad = "" Then rad = Left(inf1, Len(inf1) - 2) & Mid(inf1, Len(inf1) - 2, 1) & "er": codf = "f110(2)"
                Else
                    rad = Left(inf1, Len(inf1) - 4) + "è" + Mid(inf1, Len(inf1) - 2, 1) + "er": codf = "f11(1)": 'sinon _elle-/_ette-
                End If
                xx = 15
            End If
        Next xx
        For xx = 16 To 20 'e+vr+er,etc (2consonnes)
        If Right(inf1, 5) = "e" & csne(xx) & "er" Then rad = Left(inf1, Len(inf1) - 5) + "è" & csne(xx) & "er": codf = "f11(1)": xx = 20
        Next xx
    If rad = "" Then rad = inf1: codf = "f0(0)" 'sinon, cas normal:inf complet
    End If
ElseIf Right(inf1, 2) = "re" Then
    If inf1 = "être" Then rad = "ser": codf = "f20(0)": r = "ir": 'être
    If Right(inf1, 5) = "faire" Then rad = Left(inf1, Len(inf1) - 4) + "er": codf = "f20(0)": r = "ir": ' et -faire
    If rad = "" Then rad = Left(inf1, Len(inf1) - 1): codf = "f0(1)" 'autres verbes terminés par-e
   
ElseIf Right(inf1, 2) = "ir" Then
    If Right(inf1, 3) = "oir" Then
        If Right(inf1, 5) = "evoir" Or Right(inf1, 5) = "uvoir" Then rad = Left(inf1, Len(inf1) - 3) + "r": codf = "f22(1)" '-evoir; -uvoir, sauf pouvoir,revoir,entrevoir donc placer  test pouvoir,revoir,entrevoir après pour son cas -rr-
        If inf1 = "pouvoir" Then rad = Left(inf1, Len(inf1) - 4) + "rr": codf = "f22(3)" 'pouvoir
        If inf1 = "voir" Or inf1 = "se voir" Or inf1 = "revoir" Or inf1 = "se revoir" Or inf1 = "entrevoir" Then rad = Left(inf1, Len(inf1) - 3) + "err": codf = "f22(3)": r = "r": 'il n'y a pas prévoir, ni pourvoir (inf complet)
        If Right(inf1, 5) = "avoir" Then rad = Left(inf1, Len(inf1) - 4) + "ur": codf = "f20(1)" 'avoir,savoir
        If Right(inf1, 6) = "valoir" Then rad = Left(inf1, Len(inf1) - 4) + "udr": codf = "f22(2)" ',valoir
        If Right(inf1, 7) = "falloir" Or Right(inf1, 7) = "vouloir" Then rad = Left(inf1, Len(inf1) - 5) + "udr": codf = "f22(2)" 'vouloir,falloir
        If Right(inf1, 7) = "asseoir" Or inf1 = "seoir" Or inf1 = "messeoir" Then rad = Left(inf1, Len(inf1) - 4) + "iér": codf = "f22(4)"
        If rad = "" Then rad = inf1: codf = "f22(0)" '(choir, pourvoir,prévoir)
   Else
    
     If Right(inf1, 6) = "courir" Or Right(inf1, 6) = "mourir" Then rad = Left(inf1, Len(inf1) - 2) + "r": codf = "f2(1)" 'courir, mourir,
     If Right(inf1, 6) = "quérir" Then rad = Left(inf1, Len(inf1) - 4) + "err": codf = "f2(1)" 'acquérir,requérir

    
     If Right(inf1, 5) = "tenir" Or Right(inf1, 5) = "venir" Then rad = Left(inf1, Len(inf1) - 4) + "iendr": codf = "f20(3)": r = "tv": '-tenir,-venir
     If Right(inf1, 8) = "cueillir" Then rad = Left(inf1, Len(inf1) - 2) + "er": codf = "f2(3)": r = "ir": 'trsm = "4" & inf1 '-cueillir
     If rad = "" Then rad = inf1: codf = "f0(0)" 'sinon, infinitif complet
    End If

End If

End Sub

Conclusion :


Et bonnes vacances.

Codes Sources

A voir également

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.