IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

 C Discussion :

somme produit et moyenne


Sujet :

C

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre éclairé Avatar de chicabonux
    Profil pro
    Inscrit en
    Mai 2007
    Messages
    329
    Détails du profil
    Informations personnelles :
    Âge : 58
    Localisation : France, Oise (Picardie)

    Informations forums :
    Inscription : Mai 2007
    Messages : 329
    Par défaut somme produit et moyenne
    Bonjour

    Je dois réaliser un programme qui lit N nombres entiers au clavier et qui affiche leur somme ,leur produit et leur moyenne . Le nombre N est à entrer au clavier .

    J'ai fait ce code :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    #include<stdio.h>
     
    int main(int argc,char *argv[])
    {
    	int N,n=0,variablesTapees;
    	long somme=0,produit=1;
    	double moyenne=0;
     
    	printf("Veuillez taper une valeur pour designer le nombre de valeurs desirees :");
    	scanf("%i",&N);
     
    variablesTapees=N;
     
    	if(N==0)printf("pas de solution au probleme\n");
     
    	while(N!=0)
    	{
    		printf("Veuillez taper une valeur :");
    		scanf("%i",&n);
    		printf("%i\n",n);
     
    		somme+=n;
    		produit*=n;
    		N--;
    	}
     
    	moyenne=somme/variablesTapees;
     
    	printf("somme=%ld,produit=%ld,moyenne=%f\n,somme,produit,moyenne");
     
    	return 0;
    }
    mais ça ne fonctionne pas et comme d'habitude je ne comprends pas pourquoi ?

  2. #2
    Rédacteur

    Avatar de ram-0000
    Homme Profil pro
    Consultant en sécurité
    Inscrit en
    Mai 2007
    Messages
    11 517
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 62
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Consultant en sécurité
    Secteur : High Tech - Opérateur de télécommunications

    Informations forums :
    Inscription : Mai 2007
    Messages : 11 517
    Par défaut
    Qu'est ce qui ne fonctionne pas, la moyenne est fausse ?

    Cette ligne là produit un résultat incorrect car la division est une division entière et donc le résultat sera un nombre entier (stocké dans un double)
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    moyenne=somme/variablesTapees;
    Il faut faire :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    moyenne= (double)somme / (double)variablesTapees;
    Raymond
    Vous souhaitez participer à la rubrique Réseaux ? Contactez-moi

    Cafuro Cafuro est un outil SNMP dont le but est d'aider les administrateurs système et réseau à configurer leurs équipements SNMP réseau.
    e-verbe Un logiciel de conjugaison des verbes de la langue française.

    Ma page personnelle sur DVP
    .

  3. #3
    Membre éclairé Avatar de chicabonux
    Profil pro
    Inscrit en
    Mai 2007
    Messages
    329
    Détails du profil
    Informations personnelles :
    Âge : 58
    Localisation : France, Oise (Picardie)

    Informations forums :
    Inscription : Mai 2007
    Messages : 329
    Par défaut
    Merci de ton aide

    J'ai vraiment beaucoup de difficultés pour la rigueur et la logique . Je pense que pour y parvenir je dois pratiquer encore et encore ? a moins qu'il n'existe une autre solution ? Mais bon ça m'étonnerait

  4. #4
    Membre éclairé Avatar de chicabonux
    Profil pro
    Inscrit en
    Mai 2007
    Messages
    329
    Détails du profil
    Informations personnelles :
    Âge : 58
    Localisation : France, Oise (Picardie)

    Informations forums :
    Inscription : Mai 2007
    Messages : 329
    Par défaut
    Je comprends pas pourquoi ce programme plante ?
    Je pense que je dois mal écrire la boucle for ?

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    #include<stdio.h>
     
    int main(int argc,char *argv[])
    {
    	/*déclaration des données*/
    	int N,n,variablesTapees=0;
    	long somme=0,produit=1;
    	double moyenne;
     
    	/*saisie des données*/
    	printf("Taper un nombre N de valeurs :");
    	scanf("%i",&N);
     
    	N=variablesTapees;
     
    	/*boucle permettant les calculs désirés*/
    	for(N;N!=0;N--)
    	{
    		printf("Veuillez taper une valeur :");
    		scanf("%i",&n);
    		somme+=n;
    		produit*=n;
    	}
     
    	moyenne=(double)somme/(double)variablesTapees;
     
    	/*affichage des résultats*/
    	printf("somme=%ld,produit=%ld,moyenne=%f\n",somme,produit,moyenne);
     
    	return 0;
    }

  5. #5
    Expert confirmé
    Avatar de diogene
    Homme Profil pro
    Enseignant Chercheur
    Inscrit en
    Juin 2005
    Messages
    5 761
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Essonne (Île de France)

    Informations professionnelles :
    Activité : Enseignant Chercheur
    Secteur : Enseignement

    Informations forums :
    Inscription : Juin 2005
    Messages : 5 761
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    	int N,n,variablesTapees=0;
    .... 
    	N=variablesTapees; // donc N==0
     
    	/*boucle permettant les calculs désirés*/
    	for(N;N!=0;N--)
     // N; ne sert à rien N!= 0 est faux -> la boucle n'est jamais exécutée
    A quoi sert le code
    puisqu'immédiatement derriere on fait

  6. #6
    Membre éclairé Avatar de chicabonux
    Profil pro
    Inscrit en
    Mai 2007
    Messages
    329
    Détails du profil
    Informations personnelles :
    Âge : 58
    Localisation : France, Oise (Picardie)

    Informations forums :
    Inscription : Mai 2007
    Messages : 329
    Par défaut
    D'accord . Je vais me servir d'une autre variable comme compteur pour la boucle.

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. somme produit macro
    Par vilaf dans le forum Macros et VBA Excel
    Réponses: 5
    Dernier message: 15/06/2009, 16h53
  2. ecart type: Somme((1-[pvm]/[moyenne])^2)
    Par bmad1 dans le forum Requêtes et SQL.
    Réponses: 4
    Dernier message: 03/10/2007, 15h24
  3. [Requete] Faire une somme puis une moyenne
    Par Mou dans le forum Requêtes et SQL.
    Réponses: 2
    Dernier message: 14/05/2007, 10h09
  4. cmt calculez la somme et la moyenne en access
    Par elhosni dans le forum Access
    Réponses: 4
    Dernier message: 31/10/2005, 21h07

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo