Transformation tant que en do while
Résolu
VazyoO_
Messages postés
28
Statut
Membre
-
Utilisateur anonyme -
Utilisateur anonyme -
Bonjour je dois transformer un algorithme avec une boucle tant que avec une autre boucle do while voila mon code avec TQ :
et voila mon essaie avec do while mais ça ne fonctionne pas il me marque ligne 16 "error: expected ')' before ';' token
voici le code :
int main()
{ int N,S, I, nombre;
S=0;
printf (" Quel est le nombre de nombres entiers à saisir ? :");
scanf("%d",&N);
for (I=1;I<=N;I++){ printf( "Entrer un nombre entier :");
scanf("%d",&nombre);
(S=S+nombre);
}
printf(" La somme des %d des nombres saisies = %d",N,S);
}
et voila mon essaie avec do while mais ça ne fonctionne pas il me marque ligne 16 "error: expected ')' before ';' token
voici le code :
#include<stdio.h>
int main()
{ int N,S, I, nombre;
S=0;
printf (" Quel est le nombre de nombres entiers à saisir ? :");
scanf("%d",&N);
if (I=1);do{ printf( "Entrer un nombre entier :");
scanf("%d",&nombre);
(S=S+nombre);
}while(I<=N;I++);
printf(" La somme des %d des nombres saisies = %d",N,S);
}
3 réponses
-
Bonjour
Tu as aussi un problème d'interprétation ou de vocabulaire, quand tu dis
un algorithme avec une boucle tant que avec une autre boucle do while
Et que tu ajoutes que ton algorithme "tant que" est constitué d'une boucle for.
while
, avant d'être un opérateur, est un mot anglais qui signifie "tant que".
Donc une boucle while est une boucle tant que.
Avoir un algorithme en pseudo code du genretant que ma condition est vrai faire une action / un calcul fin tant que
Et traduire cet algorithme dans un langage veut dire écrire une boucle while, pas une boucle for.for
est aussi un mot anglais, qui signifie "pour".
Une boucle for dispose de plus de paramètres qu'une boucle while, Dalfab te les as décrit.
En pseudo code, cela revendrait àpour chaque valeur allant de début à fin que je vais mettre dans une variable faire une action / un calcul à partir de la variable, ou pas fin pour
-
yg_be Messages postés 23437 Date d'inscription Statut Contributeur Dernière intervention Ambassadeur 1 588
bonjour,
as-tu consulté la documentation dewhile
? -
Et regarde aussi la documentation de
for
.
Dans lefor(a;b;c){d}, il y a 4 choses :
a) une initialisation, donc ce qu'il faut faire avant même de commencer.
b) un test, qui dit s'il faut commencer et aussi s'il faut recommencer.
c) une expression à faire juste avant de tester s'il faut recommencer.
d) ce qu'il faut faire dans la boucle
Dans ledo{e}while(f);, il y a 2 choses :
e) ce qu'il faut faire dans la boucle
f) un test, qui dit s'il faut recommencer.
Il faut trouver comment replacer les a, b, c, d en utilisant ledo while()
, et tu l'as pressenti, tu auras aussi besoin d'ajouter unif()
.