Valeurs positives ou négatives [Résolu]

Signaler
Messages postés
256
Date d'inscription
mercredi 31 mars 2010
Statut
Membre
Dernière intervention
10 mars 2016
-
Messages postés
256
Date d'inscription
mercredi 31 mars 2010
Statut
Membre
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 !!

4 réponses

Messages postés
3839
Date d'inscription
dimanche 12 décembre 2004
Statut
Modérateur
Dernière intervention
15 avril 2021
121
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;
}

Messages postés
256
Date d'inscription
mercredi 31 mars 2010
Statut
Membre
Dernière intervention
10 mars 2016
1
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 !
Messages postés
3839
Date d'inscription
dimanche 12 décembre 2004
Statut
Modérateur
Dernière intervention
15 avril 2021
121
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
Messages postés
256
Date d'inscription
mercredi 31 mars 2010
Statut
Membre
Dernière intervention
10 mars 2016
1
D'accord vraiment merci beaucoup a toi d'avoir pris le temps