APPRENTISSAGE DE LA CONJUGAISON DU PRÉSENT DE L'INDICATIF (JE,TU,IL)
NHenry
Messages postés15102Date d'inscriptionvendredi 14 mars 2003StatutModérateurDernière intervention27 mars 2024
-
8 août 2012 à 12:29
oulipan
Messages postés46Date d'inscriptionjeudi 10 septembre 2009StatutMembreDernière intervention19 février 2024
-
9 août 2012 à 23:18
Cette discussion concerne un article du site. Pour la consulter dans son contexte d'origine, cliquez sur le lien ci-dessous.
oulipan
Messages postés46Date d'inscriptionjeudi 10 septembre 2009StatutMembreDernière intervention19 février 2024 9 août 2012 à 23:18
Bonsoir, NHenry,
Excusez-moi tout d'abord de ne pas avoir répondu à votre premier message sur la précédente source ... Toujours mes travers...
Le problème, c'est qu'avec le grand nombre de paramètres, je me perds sur tant de lignes, alors que, pour la présentation de la programmation, la règle, la tournure d'esprit et l'habitude générale sont de visualiser comme vous me le proposez.
Ce que j'aurais pu faire pour limiter -dans la partie que vous me donnez en illustration-, c'est englober dans radi(string radical selon type de verbe) les codes de pointage du cheminement correspondant pour l'utilisateur (pour formation radical et 2 façons pour terminaison:par raisonnement-élimination (menu) et par choix de tableaux de terminaisons);
j'aurais pu mettre des N°s correspondant à des array qui reprennent ces codages, puis, avant utilisation, redistribution de ces N°S pour reformer les codes.
par.ex: codradi=array("p0(0)","p0(1)",...etc...
codterm=array("t0(0)","t0(1),...
Ainsi je n'aurais eu par-exemple que If Right(inf1, 4) "ncre" Then radi "42208" & Left(inf1, Len(inf1) - 2)en évitant: dg3 4: codrp "p03(3)": codtp = "t014(0)"
et, à la fin, avant passage de la main à l'utilisateur,
dg3=val(left(radi,1)) ' pour affichage étiquettes
codrp=codrad(val(mid(radi,2,2))) ' pour cheminement dans menu radical
codtp=codterm(val(mid(radi,4,2))) ' pour cheminement dans menu
radi=mid(radi,6) ' on retrouve le radical
quant à "' ??? voir code radical", j'ai oublié de l'enlever ... C'était pour moi ... Une recherche de " ??? "et je retrouve les questions que je me posais et les trucs à vérifier
En vous remerciant de m'avoir lu;
Bonne soirée.
NHenry
Messages postés15102Date d'inscriptionvendredi 14 mars 2003StatutModérateurDernière intervention27 mars 2024159 8 août 2012 à 12:29
Bonjour,
Je n'ai pas tout regardé, mais évites ce genre de syntaxe : If Right(inf1, 4) "ncre" Then radi Left(inf1, Len(inf1) - 2): dg3 = 4: codrp = "p03(3)": codtp = "t014(0)" _Else radi Left(inf1, Len(inf1) - 2): dg3 1: codrp = "p03(1)": codtp = "t014(3)" ' ??? voir code radical"
Car c'est quasi illisible, en général, c'est une instruction par ligne :
If Right(inf1, 4) = "ncre" Then
radi = Left(inf1, Len(inf1) - 2)
dg3 = 4
codrp = "p03(3)"
codtp = "t014(0)"
Else
radi = Left(inf1, Len(inf1) - 2)
dg3 = 1
codrp = "p03(1)"
codtp = "t014(3)" ' ??? voir code radical"
End If
Est bien plus lisible (Et encore mieux avec l'indentation).
9 août 2012 à 23:18
Excusez-moi tout d'abord de ne pas avoir répondu à votre premier message sur la précédente source ... Toujours mes travers...
Le problème, c'est qu'avec le grand nombre de paramètres, je me perds sur tant de lignes, alors que, pour la présentation de la programmation, la règle, la tournure d'esprit et l'habitude générale sont de visualiser comme vous me le proposez.
Ce que j'aurais pu faire pour limiter -dans la partie que vous me donnez en illustration-, c'est englober dans radi(string radical selon type de verbe) les codes de pointage du cheminement correspondant pour l'utilisateur (pour formation radical et 2 façons pour terminaison:par raisonnement-élimination (menu) et par choix de tableaux de terminaisons);
j'aurais pu mettre des N°s correspondant à des array qui reprennent ces codages, puis, avant utilisation, redistribution de ces N°S pour reformer les codes.
par.ex: codradi=array("p0(0)","p0(1)",...etc...
codterm=array("t0(0)","t0(1),...
Ainsi je n'aurais eu par-exemple que If Right(inf1, 4) "ncre" Then radi "42208" & Left(inf1, Len(inf1) - 2)en évitant: dg3 4: codrp "p03(3)": codtp = "t014(0)"
et, à la fin, avant passage de la main à l'utilisateur,
dg3=val(left(radi,1)) ' pour affichage étiquettes
codrp=codrad(val(mid(radi,2,2))) ' pour cheminement dans menu radical
codtp=codterm(val(mid(radi,4,2))) ' pour cheminement dans menu
radi=mid(radi,6) ' on retrouve le radical
quant à "' ??? voir code radical", j'ai oublié de l'enlever ... C'était pour moi ... Une recherche de " ??? "et je retrouve les questions que je me posais et les trucs à vérifier
En vous remerciant de m'avoir lu;
Bonne soirée.
8 août 2012 à 12:29
Je n'ai pas tout regardé, mais évites ce genre de syntaxe : If Right(inf1, 4) "ncre" Then radi Left(inf1, Len(inf1) - 2): dg3 = 4: codrp = "p03(3)": codtp = "t014(0)" _Else radi Left(inf1, Len(inf1) - 2): dg3 1: codrp = "p03(1)": codtp = "t014(3)" ' ??? voir code radical"
Car c'est quasi illisible, en général, c'est une instruction par ligne :
If Right(inf1, 4) = "ncre" Then
radi = Left(inf1, Len(inf1) - 2)
dg3 = 4
codrp = "p03(3)"
codtp = "t014(0)"
Else
radi = Left(inf1, Len(inf1) - 2)
dg3 = 1
codrp = "p03(1)"
codtp = "t014(3)" ' ??? voir code radical"
End If
Est bien plus lisible (Et encore mieux avec l'indentation).