Valeurs positives ou négatives [Résolu]

Messages postés
256
Date d'inscription
mercredi 31 mars 2010
Dernière intervention
10 mars 2016
-
Bonjour, j'ai comme énoncé cette exercice mais quand je l'exécute ca ne marche pas............., le but étant de compter le nombres de valeurs négatives et positives voici l'énoncé :


programme valeurs
positif, nb, valeur : numérique
debut
positif ß 0
pour nb de 1 à 20
afficher "entrer un nombre = "
saisir valeur
si valeur >= 0 alors
positif ß positif + 1
finsi
finpour
afficher "nombre de valeurs positives = " + positif
afficher "nombre de valeurs négatives = " + (20 - positif)
fin


et moi j'ai codé cela :

// -- bibliothèques nécessaires --
#include <stdio.h>
#include <conio.h>

// -- programme principal --
int main () {
 
 // déclarations
 float positif = 0 ;
 float nbre = 1 ;
 float valeur ;
 
 // saisie des valeurs
 while(nbre <= 20) {
  printf(" Entrer un nombre = ") ;
  scanf("%f",&valeur) ;
  if (valeur >= 0) {
   positif++ ;
  }
  }
 printf(" Nombre de valeurs positives = ", positif) ;
 printf(" Nombre de valeurs négatives = ",(20 - positif)) ;
 
 getch () ;
 return 0 ;
}


J'espère que vous pourrez m'aider !!
Afficher la suite 

Votre réponse

4 réponses

Messages postés
3830
Date d'inscription
dimanche 12 décembre 2004
Statut
Modérateur
Dernière intervention
19 novembre 2018
0
Merci
Bonjour.

Pense à mettre les balises de code. Je te les ai ajouté sur tes deux posts, mais la prochaine fois: pas de balise == pas de réponse.

Ton erreur vient du fait que tu n'incrémentes jamais nbre dans ta boucle, donc tu restes coincé infiniement.
Quelques remarques:
  • Pas de conio.h
  • Utilise des int, si tu n'as pas besoin de valeurs décimales.
  • Pas besoin d'accolades, s'il n'y a qu'une seule instruction dans une structure de controle (if, while, for, etc...).
  • N'oublie pas les "\n" à la fin des printfs, les sauts de lignes ne sont pas automatiques.


#include <stdio.h>

int main()
{
  double valeur = 0;
  int positif = 0;
  int nbre = 0;

  while (nbre < 20)
  {
    printf("Entrez un nombre: ");
    scanf("%lf", &valeur);
    if (valeur >= 0)
      positif++;
    nbre++;
  }

  printf("Nombre de valeurs positives = %i\n", positif);
  printf("Nombre de valeurs négatives = %i\n", (nbre - positif));

  return 0;
}

Commenter la réponse de cptpingu
Messages postés
256
Date d'inscription
mercredi 31 mars 2010
Dernière intervention
10 mars 2016
0
Merci
Comment on met les Balises stp ?

Tu le met nbre = 0 alors qu'il doit varier entre 1 et 20 ?? Je ne savais pas si on devait l'initialiser ou pas donc..............

En tout cas merci pour tout !
Commenter la réponse de TheRogerFederer
Messages postés
3830
Date d'inscription
dimanche 12 décembre 2004
Statut
Modérateur
Dernière intervention
19 novembre 2018
0
Merci
Tu tapes < code c> ton code </code> (sans l'espace après le "<").
Ou alors tu as un menu déroulant au dessus de la boite d'écriture (gras, italique, code, image, etc...).
Avant d'envoyer, clic toujours sur "Prévisualiser".


Améliorer votre expérience CodeS-SourceS avec ce plugin:
http://codes-sources.commentcamarche.net/forum/affich-10000111-plugin-better-cs-2#cptpingu-signature
Commenter la réponse de cptpingu
Messages postés
256
Date d'inscription
mercredi 31 mars 2010
Dernière intervention
10 mars 2016
0
Merci
D'accord vraiment merci beaucoup a toi d'avoir pris le temps
Commenter la réponse de TheRogerFederer

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.