Bonsoir,
je rencontre un problème dans le traitement de données contenues dans un mémo.
Je dois récupérer des nombres, chiffres par chiffres contenus dans le mémo 1 vers mon tableau pour ensuite les additionner
par exemple
12345 = 1+2+3+4+5
ces nombres sont composés de 5 chiffres au minimum et 10 au max
lorsque ma boucle for J (l'imbriqué) est paramétrée sur 1 to 5 pas de soucis
exemple 12345 = 1+2+3+4+5 = 15 (affiché dans memo2)
par contre lorsque ma boucle est for J est paramétrée sur 6 et+ (10 max) le dernier caractère est réitéré et additionné
exemple sur boucle J 1 to 10
12345 = 1+2+3+4+5+5+5+5+5+5 ce qui renvoie une valeur erronée
avec un nombre composé de 10 chiffre aucuns soucis
En espérant que vous puissiez éclairer ma lanterne
je vous fais parvenir ci bas le code utilisé
Bonne soirée et cordialement
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28 procedure TForm1.Button3Click(Sender: TObject); var nombre : string ; i,j: integer; tableau : array of longint; begin Memo2.Text:=''; nombre := (memo1.Lines.Text); SetLength(tableau,memo1.Lines.Count + 1); for i := 0 to memo1.Lines.Count -1 do begin for j := 1 to 10 do begin if copy(memo1.Lines[I],j,1) <> '' then nombre := copy(memo1.Lines[I],j,1); tableau[i] := tableau[i] + strtoint(nombre); end; Memo2.Lines.Add(IntToStr(tableau[I])); end; end; end.
Partager