2016-11-25 3 views
2

Je suis nouveau à JAVA et je dois utiliser du papier et un crayon pour créer une trace variable pour le code suivant, en traçant les valeurs de num1, num2, i, and any output. Voici le code que je dois tracer:Just Getting Sure

int num1 = 0;   
int num2 = 0:  

for (int i = 0; i <= 4; i++){   
      num1 = i * i;  
      num2 += num1;  
      System.out.println(num1 + " ");   
}  
System.out.println(num2);   

Ceci est ma première trace, je ne sais pas quel est le format. Voilà ce que je l'ai fait jusqu'à présent:

Variable i Variable num1 Variable num2 Output  
0    0    0    0  
1    1    1    1  
2    4    4    5  
3    9    9    14  
4    16    16    30  
5   False Condition 30  

(1) Lorsque i=0 num1 est 0 parce num1 = i * i;
Et pour trouver num2 nous num2 += num1; qui fait également 0.
(2) Lorsque i=1 num1 est également 1 parce num1 = i * i;
Et pour trouver num2 nous num2 += num1; qui fait également 1.

Et ainsi de suite

Pour la sortie, quand il ajoute (num2+=num1) la valeur de num2 reste. Ainsi, il ajoute la valeur num1 avec la sortie précédente. Donc, même si num2 et la sortie sont les mêmes, la valeur est différente, mais ils affichent tous les deux 30 à la fin et quand vous ajoutez toutes les valeurs de num2, ils vont jusqu'à 30. Donc, il affichera 0, 1, 4, 9, 16, 30.

Je veux juste assurez-vous que je l'ai bien fait et si je ne peux pas vous suggérer sur la façon dont je peux l'améliorer? Toute aide est grandement appréciée et merci d'avance!

+0

Quelle est la question? – ColinM

+0

Dernière ligne: Je veux juste m'assurer que je l'ai fait correctement et si je ne l'ai pas fait, pouvez-vous suggérer des améliorations? Première fois, ne pas connaître le format –

+3

Vous ne l'avez pas fait correctement, et vous pouvez le connaître en imprimant la valeur de i, num1 et num2 à chaque itération. –

Répondre

1

bonne table est

num1 num2 i  output 
0  0  0  0 
1  1  1  1 
4  5  2  4 
9  14  3  9 
16  30  4  16 
       5  30 
+0

oh, donc je devais retourner num2 et la sortie autour de –

+0

Je ne pense pas que vous avez compris ce que num2 + = num1 signifiait – Austin

+0

num2 + = num1; se traduit par num2 = num2 + num1; – Austin