En vb.net
madeog
Messages postés
74
Date d'inscription
Statut
Membre
Dernière intervention
-
Utilisateur anonyme -
Utilisateur anonyme -
Bonjour,
je veux ecrire un programme qui calcule la table de multiplication
j'ai essaye mais je suis bloquée.
voici le code que j'ai ecrit
Merci d'y penser dans tes prochains messages.
je veux ecrire un programme qui calcule la table de multiplication
j'ai essaye mais je suis bloquée.
voici le code que j'ai ecrit
Dim nbre, i, J As Integer nbre = CInt(Txtnbre.Text) If nbre < 2 Or nbre > 20 Then MsgBox("entrer des valeurs comprises entre 2 et 20 . svp") Else Txtaffichage.Text = CStr(nbre) + Environment.NewLine For i = 0 To nbre If i <> 0 Then Txtaffichage.Text = i.ToString Else Txtaffichage.Text = "" End If For J = 1 To nbre Txtaffichage.Text = J.ToString Next j
EDIT : Ajout des balises de code (la coloration syntaxique).
Explications disponibles ici : ICI Merci d'y penser dans tes prochains messages. |
Merci d'y penser dans tes prochains messages.
A voir également:
- En vb.net
- Vb.net express - Télécharger - Langages
- Vb.net - Télécharger - Langages
- Vb.net timestamp ✓ - Forum Framework .NET
- Vb.net xml ✓ - Forum Framework .NET
- Convert | VB.net ✓ - Forum Framework .NET
1 réponse
Bonjour
déjà tu mélanges VB6 et VB.Net, c'est déconseillé, principalement parce que les instruction VB6 ne sont pas objet. Mais aussi parce que dans de rares cas, il se passe des choses imprévues et qu'il est très difficile de débugger.
Je te conseille donc d'enlever la référence à Visual Basic, voir ici pour plus d'infos https://codes-sources.commentcamarche.net/faq/11151-pourquoi-mon-code-vb6-vba-ne-marche-pas-en-vb-net
Ensuite, il manque
Voilà ton code remis en forme et en couleur (voir https://codes-sources.commentcamarche.net/faq/11288-les-balises-de-code
Donc, tu commences par rentrer le nombre avec un retour charriot
Puis tu effaces ce qu'il y a dans resultat pour y mettre i ou ""
Je ne sais pas quelle mise en forme tu cherches à avoir mais dans tous les cas, effacer ce qu'il y a dans la variable c'est pas bon.
Tu peux simplement faire un truc comme ça
Tu peux utiliser un StringBuilder pour construire le texte petit bout par petit bout https://docs.microsoft.com/fr-fr/dotnet/standard/base-types/stringbuilder
Par exemple
Tu peux aussi te servir de String.Format https://www.dotnetperls.com/format-vbnet
Par exemple
déjà tu mélanges VB6 et VB.Net, c'est déconseillé, principalement parce que les instruction VB6 ne sont pas objet. Mais aussi parce que dans de rares cas, il se passe des choses imprévues et qu'il est très difficile de débugger.
Je te conseille donc d'enlever la référence à Visual Basic, voir ici pour plus d'infos https://codes-sources.commentcamarche.net/faq/11151-pourquoi-mon-code-vb6-vba-ne-marche-pas-en-vb-net
Ensuite, il manque
Next i End Ifdans le code que tu présentes, mais on va supposer qu'il s'agit d'une erreur de copier / coller.
Voilà ton code remis en forme et en couleur (voir https://codes-sources.commentcamarche.net/faq/11288-les-balises-de-code
Dim nombre As String = "3" 'pour simuler ton textbox Dim resultat As String = "" 'idem Dim nbre, i, J As Integer nbre = Convert.ToInt32(nombre) If nbre < 2 Or nbre > 20 Then MessageBox.Show("entrer des valeurs comprises entre 2 et 20 . svp") Else resultat = nbre.ToString() + Environment.NewLine For i = 0 To nbre If i <> 0 Then resultat = i.ToString() Else resultat = "" End If For J = 1 To nbre resultat = J.ToString() Next J Next i End If
Donc, tu commences par rentrer le nombre avec un retour charriot
resultat = nbre.ToString() + Environment.NewLine
Puis tu effaces ce qu'il y a dans resultat pour y mettre i ou ""
If i <> 0 Then resultat = i.ToString() Else resultat = "" End Ifet enfin tu effaces à nouveau ce qu'il y a dedans pour y mettre j
For J = 1 To nbre resultat = J.ToString() Next J
Je ne sais pas quelle mise en forme tu cherches à avoir mais dans tous les cas, effacer ce qu'il y a dans la variable c'est pas bon.
Tu peux simplement faire un truc comme ça
resultat = resultat + i.ToString()ça va ajouter le texte au texte existant.
Tu peux utiliser un StringBuilder pour construire le texte petit bout par petit bout https://docs.microsoft.com/fr-fr/dotnet/standard/base-types/stringbuilder
Par exemple
resultat = nbre.ToString() + Environment.NewLinedeviendrait
monBuilder.AppendLine(nbre.ToString())
Tu peux aussi te servir de String.Format https://www.dotnetperls.com/format-vbnet
Par exemple
monBuilder.AppendLine(String.Format("Voici la table du {0}",nbre))
et merci à balader d'avoir édité ton message pour que le code soit en couleur