Langage C

Fermé
queenfina Messages postés 45 Date d'inscription mercredi 8 septembre 2010 Statut Membre Dernière intervention 14 avril 2012 - Modifié par queenfina le 18/04/2011 à 00:40
malaik5 Messages postés 258 Date d'inscription vendredi 20 novembre 2009 Statut Membre Dernière intervention 28 novembre 2013 - 18 avril 2011 à 10:00
Bonjour,

je débute en programmation et j'ai quelques problemes pour traduire cet algo en C
voici l'algo :


Variables Nbr, i, PGN en Entier
Debut
Gd = 0
Pour i = 1 à 20
Ecrire "Entrez un nombre : "
Lire N
Si i = 1 ou Nbr > PGN Alors
PGN = Nbr
FinSi
i = i+1
Ecrire "Le nombre le plus grand était : ", Gd
Fin


voici mon code qui me renvoi toujours le dernier nombre comme plus grand meme si c'est faux !!!


#include <stdio.h>
#include <stdlib.h>

int main()
{
int nbre, i, PGN ;
PGN = 0 ;
i=1 ;

for (i=1; i<=20; i++ )
{
printf("Entrez le nombre %d:",i);
scanf("%d",&nbre);
}

if ( i=1 || nbre > PGN )
{
PGN = nbre ;
}

printf ("le nombre le plus grand etait :%d\n",PGN);

return 0;
}



merci de bien vouloir m'aider
A voir également:

2 réponses

Char Snipeur Messages postés 9813 Date d'inscription vendredi 23 avril 2004 Statut Contributeur Dernière intervention 3 octobre 2023 1 298
18 avril 2011 à 08:45
Salut
Il faut inclure ton "if" dans la boucle "for" sinon ça ne fonctionnera jamais.
Ensuite, la comparaison en C se fait avec le symbole "==" et non "=" qui est réservé à l'affectation.
Ensuite, ça devrais fonctionner.
0
malaik5 Messages postés 258 Date d'inscription vendredi 20 novembre 2009 Statut Membre Dernière intervention 28 novembre 2013 33
18 avril 2011 à 10:00
Bonjour,
J'ai plusieurs remarques concernant ton algo de départ déjà pas celui que t'as fait apres,

1- Le lire N sert à quoi puisque le tu ne l'utilise pas apres.
2- à la fin tu dis le plus grand nombre était Gd ..., hors que ce dernier était initialisé à 0 et jamais modifier dans l'algorithme apres, donc ta valeur restera à jamais 0.
3- PGN tu l'as sorti d'ou ??

.....

je sais c'est surement que t'as oublié de renommer tes variables dans la boucle mais c'est important commence pas corriger ça apres on verra la suite.
0