Bonjour/bonsoir,
Je suis en L1 de maths et j'ai une matière info. C'est la première fois de ma vie que je fais de la programmation (c'est un début d'initiation).
Je bloque vraiment sur la boucle for.
J'ai deux exemples que je ne comprends pas. Je voudrais bien des explications quant à ce que le programme exécutera (je ne peux pas vérifier moi-même).
Les voici :
1/
Pour cette boucle, je comprends bien que le programme va faire prendre à l'entier i les valeurs de 0 à 99 avec un pas de 1 (0, 1, 2, ..., 98, 99). Mais ensuite ? Si le reste de la division euclidienne de i par 2 est égal à 0, alors l'entier est pair ?
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7 for (int i=0; i<100; i++) { if (i%2==0) { printString ("Pair."); } else { printString ("Impair."); } }
Donc qu'affiche le programme ?
i=0 => "Pair"
i=1 => "Impair"
...
i=99 => "Impair"
?
Donc est-ce qu'il affiche : Pair Impair ... Impair ? Ou bien 1 2 3 4 5 ... 99 ?
2/ Et le deuxième, le plus difficile (pour moi, hein ) !
Que valent les variables x et s après les instructions précédentes ?
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6 int x=0; String s=""; for (int n=0; n<10; n++){ x=x+1; s=s+"1"; }
Donc là je comprends bien que l'entier x est initialement égal à 0, que la chaîne de caractères s est vide, puis que l'entier n prend les valeurs de 0 à 9 avec un pas de 1.
Mais après, je ne comprends plus rien !
x=x+1 donc x=0+1=1 puis x=1+1=2 etc etc.
s=s+"1" donc s="1" puis s="1"+"1"="11" puis "11"+"1"="111" etc.
Donc qu'affiche ce programme ?
Affiche-t-il : 0 1 2 3 4 5 6 7 8 9 ?
Ou affiche-t-il la valeur de x et de s 10 fois (correspondant à n=0, n=1,..., n=9 ?
Voilà, j'aurais réellement besoin d'être éclaircie. Je ne sais pas si je suis claire dans mes 'questions' !
Merci pour vos réponses et bonne journée / soirée.
Partager