structure répétition en vb.net, etudiant newbee - C#/.NET managed - Programmation
Marsh Posté le 20-11-2004 à 21:14:07
Vectteur a écrit : |
Remplace la ligne en gras par celle en rouge, ca ira mieux deja...
Marsh Posté le 20-11-2004 à 21:22:51
cool, j'ai finit par trouver mais ça m'a pris du temps.. merci !
là je dois dessiner un carré constitué de '*' dans une boite de texte multiligne en utilisant les répétitions.
le pseudo-code du professeur fonctionne avec variable 'ligne' et 'colone';
POUR Ligne de 1 a 8 saut 1
POUR colone de 1 a 8 saut 1
ECRIRE '*'
FIN POUR
changement de ligne
FIN POUR
ce qui me bloque ce sont les variables ligne et colone dans ma boite de texte, elle corresponde à quoi ?
car j'en comprends que pour les colone 1 à 8 il ecrit un asterix, puis je fais ligne = ligne + 1, et il repasse la boucle jusqu'à la ligne 8, mais ligne c'est quoi ?
comment VB fait le lien entre 'ligne' et ma boite de texte qui sert à dessiner le resultat ?
Marsh Posté le 20-11-2004 à 21:50:31
ok c'est bon, mais il me fait un 4X4 avec pourtant 1 à 8...
Dim line As Integer = 1
Dim column As Integer = 1
Dim test As String
If rbplein.Checked = True Then
For line = 1 To 8
For column = 1 To 8
test = test + "*"
column = column + 1
Next
test = test + vbNewLine
line = line + 1
Next
txtform.Text = test
End If
bonne nuit
Marsh Posté le 21-11-2004 à 09:22:58
Vectteur a écrit : ok c'est bon, mais il me fait un 4X4 avec pourtant 1 à 8... |
le code en gras est inutile, et meme pire, il pourrit ton code. Le mot clé "Next" s'occupe deja d'incrémenté ta variable de boucle (par défaut, le pas est de 1 et positif). Donc la tu incrementes deux fois en fait : comme tu comptes de 2 en 2, tu écris 4 étoiles au lieu de 8...
Marsh Posté le 21-11-2004 à 09:25:51
oh..
merci de la reponse, j'ai finit par me déboguer par essaie erreur sans vraiment comprendre la logique du code..s'pas tres constructif
Marsh Posté le 21-11-2004 à 09:27:47
Vectteur a écrit : oh.. |
Euh si c'est pour un TP, j'imagine que tu as eu des cours avec... c'est pas expliqué dedans ca ? Je veux dire, c'est pas spécifique à un langage en particulier, c'est le comportement normal et standard d'un "Next"...
Marsh Posté le 21-11-2004 à 10:20:14
je suis dans un programme accéléré, ayant négligé un peu la prog au profit de math et de reseau..j'ai perdu le fils un peu
1 cours pour les IF
1 pour les CASE IS
1 pour les repetition
quand t'as jamais touché a ca c lourd de maitriser tout a fond.. du coup jai installé VB chez moi afin recommencer tout seul au lieu de copier des bout de code en classe qui me font passer sans comprendre..
Marsh Posté le 20-11-2004 à 18:49:58
pour un TP très simple je dois faire un formulaire de placement
mes objets sont;
une boite du montant initial (txtmontant.text)
une boite du taux annuel (txttaux.text)
une boite du nombre d'année (txtcycle.text)
j'ai un bouton calculer et une boite multiligne (txtfinal.text) permettant d'afficher pour chaque ligne la valeur du placement par rapport au nombre d'année.
mais sans même afficher, la base de mon code est pourrit et ne calcule pas de la bonne facon, priorité d'opérateur ou variable mal déclaré, je comprend rien à la base de VB, et même si mon pseudo-code est bon comme ligne directrice, une fois dans VB c'est tout autre..
Private Sub cmdcalculer_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles cmdcalculer.Click
Dim cycle As String = 1
Dim resultat As String = Val(txtmontant.Text)
Dim final As String
Do
resultat = Val(resultat) * (1 + (Val(txttaux.Text) / 100))
final = resultat + vbNewLine
cycle = Val(cycle) + 1
Loop While Val(cycle) <= Val(txtcycle.Text)
txtfinal.Text = final
End Sub
en gros je suis sur que vous comprenez mon code, mais bon, il marche pas dutout, ma boite de resultat se réinitialise a toutes les boucle malgré le vbnewline etc....
le niveau de difficulté d'un tel prog est vraiment, mais vraiment facile, donc si tu comprend pas, pas la peine de poster.. y'a beaucoup de connaisseur avancé ici, et y'a qu'eux pour m'aider rapidement..
---------------
ceci est un bloc de texte