Max et min

Fermé
FIDEL002 Messages postés 5 Date d'inscription vendredi 28 novembre 2014 Statut Membre Dernière intervention 1 décembre 2014 - Modifié par Whismeril le 30/11/2014 à 08:56
[Dal] Messages postés 6194 Date d'inscription mercredi 15 septembre 2004 Statut Contributeur Dernière intervention 11 octobre 2024 - 2 déc. 2014 à 11:54
#include<stdio.h>
#include<conio.h>
#include<stdlib.h>
main()
{
      int i,som=0,x,min=0,max=x;
      float moy;
    for(i=1;i<=5;i++)
    {
     
    printf("donner le %d entier\n",i);
    scanf("%d",&x);
    som+=x;
        
           
}
      moy=som/5;
                                 printf("la somme est %d et la moyenne est %.2f\n",som,moy);
                                 
                                 
      
                if(x<max)
               {
                        max=x;
                        }
                        if(x>min)
                        {
                                 min=x;
                                 }
                                 
                                 getch();
}


salut à tous
voila le programme mais max et min des valeur entrer ne s'affiche pas
svp quelque peux m'aider

EDIT: Ajout de la coloration syntaxique.
A voir également:

5 réponses

Utilisateur anonyme
30 nov. 2014 à 00:47
Bonjour,

Tu ne fais nulle part le printf de la valeur max. De plus tu as inversé le min et le max.

Après ta boucle, tu peux faire un printf("Le minimum est %d et le maximum est %d\n", min, max);

De même pour la moyenne mieux vaut aussi l'afficher à la fin.
0
FIDEL002 Messages postés 5 Date d'inscription vendredi 28 novembre 2014 Statut Membre Dernière intervention 1 décembre 2014
30 nov. 2014 à 08:01
bonjour
merci bcp vais essayer et j tiens au cournat
0
FIDEL002 Messages postés 5 Date d'inscription vendredi 28 novembre 2014 Statut Membre Dernière intervention 1 décembre 2014
30 nov. 2014 à 08:39
ça marche
0
fiddy Messages postés 11069 Date d'inscription samedi 5 mai 2007 Statut Contributeur Dernière intervention 23 avril 2022 1 842
Modifié par fiddy le 30/11/2014 à 08:48
Bonjour,

Tu mets ton code C dans la rubrique C++... Tu fais un programme C (mauvaise catégorie) ou C++ (tout ton code est à revoir) ?

Sinon, si c'est du C, pleins de choses sont à revoir :

#include<conio.h>
Non standard.

main()
Le bon prototype du main() sans argument est : int main(void)

max=x;
x n'est pas initialisé. Donc max contient une valeur bidon...
Note : c'est mieux de faire une déclaration par type et par même fonctionnalité (donc int min, max; et à la ligne, int som; et à la ligne, int i=0;).

float moy;
C'est mieux d'utiliser des double (sauf cas particulier).

moy=som/5;
som est un entier, et 5 aussi. Donc som/5 donnera un entier qui sera promu en float. Pour avoir un vrai arrondi, il faudrait plutôt faire : moy=(float) som/5; (ou (double) si tu utilises un double).

if(x<max)
{
max=x;
}
if(x>min)
{
min=x;
}

Tu inverses max et min...
De plus, tu ne fais le if qu'à la fin... Il faut que cette comparaison se fasse pour chacun des scanf(). Donc, il faut mettre cette instruction dans le for(). (Tu peux même utiliser une fonction).

Ensuite, tu as oublié printf() pour afficher le min et le max.

getch();
Non standard. Utilise plutôt getchar(); (dans ce cas, mettre un autre getchar() après ton scanf()); ou system("pause");

Et pour finir, n'oublie pas le return 0;

Cdlt,

Google is your friend
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
FIDEL002 Messages postés 5 Date d'inscription vendredi 28 novembre 2014 Statut Membre Dernière intervention 1 décembre 2014
Modifié par FIDEL002 le 30/11/2014 à 18:44
bsr
je ne sais pas tros mais le logiciel que j'utilise est DEV C ++
je pense que c'est du c++
0
fiddy Messages postés 11069 Date d'inscription samedi 5 mai 2007 Statut Contributeur Dernière intervention 23 avril 2022 1 842
30 nov. 2014 à 19:05
Dev C++ permet de faire du C et du C++.
Si, tu penses que c'est du C++. Il faut revoir tout ton code... Par exemple, ce n'est pas printf("coucou") mais plutôt std::cout << "coucou"; Autre exemple, ce n'est pas scanf("%d", &var); mais plutôt std::cin >> var; Bref c'est un autre langage. Donc, si tu connais pas, je te conseille de voir un tuto. Si c'est du C, il suffit de prendre en compte les remarques de mon ancien post.
Sinon, pour info, Dev C++ est obsolète. Utilise plutôt un IDE à jour comme Code::Blocks.
0
FIDEL002 Messages postés 5 Date d'inscription vendredi 28 novembre 2014 Statut Membre Dernière intervention 1 décembre 2014 > fiddy Messages postés 11069 Date d'inscription samedi 5 mai 2007 Statut Contributeur Dernière intervention 23 avril 2022
1 déc. 2014 à 04:50
mreci donc c'est du c
0
[Dal] Messages postés 6194 Date d'inscription mercredi 15 septembre 2004 Statut Contributeur Dernière intervention 11 octobre 2024 1 092
Modifié par [Dal] le 2/12/2014 à 11:56
Salut fiddy,

Sinon, pour info, Dev C++ est obsolète

La version originale éditée par Bloodshed Software n'est plus maintenue depuis 2005.

Cependant, le développement a été repris par un développeur dénommé "Orwell" (enfin, c'est son pseudo), qui produit désormais le fork Orwell Dev-C++ : http://orwelldevcpp.blogspot.com/

La dernière version d'Orwell Dev-C++ 5.8.3 date du 15 Novembre 2014.

Autrement, pour programmer avec le compilateur GNU, Codeblocks a aussi ma préférence :-) la communauté de développeurs étant active et plus substantielle, ou alors Eclipse CDT.


Dal
0