Besoin d'aide en c++
aloush
-
aloush -
aloush -
Bonjour,
J'ai besoin un peut d'aide dans le programme ci-dessous:
La compagnie MÉTÉO-VOTRE NOM désire émettre des statistiques sur la température de plusieurs périodes de temps.
Faire le programme qui permet de
Étape 1: afficher un écran de bienvenue
Étape 2: lire à l'écran la température de chaque jour de la période, un jour à la fois
(valeur sentinelle -99)
Étape 3 : afficher les statistiques suivantes :
- le nombre de jours de la période
- le nombre de jours très froids (où la température a été inférieure à –15 degrés)
- le nombre de jours où il a gelé (où la température n'a pas dépassé 0 degrés)
- le nombre de jours chauds (où la température a atteint ou dépassé 20 degrés)
- la température moyenne de la période
- la température la plus chaude et la plus froide de la période
Étape 4 : demander si on désire recommencer pour une autre période et lire la réponse
- si on désire recommencer, revenir à l'étape sinon poursuivre à l'étape 5
Étape 5 : afficher un écran d'au revoir
======================
voila mon programme:
#include <iostream>
using namespace std;
int main()
{
float n;
int count=0;
int countc=0;
int countf=0;
int countg=0;
//ETAPE 1 ==================================================================
//MESSAGE DE BIENVENUE:
cout<<" BIENVENU A METEO -"<<endl;
cout<<endl;
cout<<"Nous allons emettre des statistiques "<<endl;
cout<<"sur diverses periodes de temps"<<endl;
//FIN ETAPE 1 || DEBUT ETAPE 2 ================================================
do {
cout<<"Entrez la temperature du jour :";
cin>>n;
count++;
cout<<endl;
}
while(n!=-99);
//ETAPE 3:
cout<<"STATISTIQUES - periode de "<<(count-1)<<" jours: "<<endl<<endl;
if (n>=20)
{countc++;
cout<<" On a atteint les 20.0 degrés pendant "<<countc<<" jour(s). "<<endl;
}
else if (n=0)
{
countg++;
cout<<" Il a gele pendant "<<countg<<" jour(s). "<<endl;
}
else if (n<-15.0)
{countf++;
cout<<countf<<" jour(s) ont ete tres froide. "<<endl;
}
else
cout<<" ERREUR"<<endl;
//ETAPE 5 ==================================================================
cout<<endl;
cout<<"LA COMPAGNIE METEO - VOUS SOUHAITE BONNE JOURNEE"<<endl;
cout<<endl;
//FIN ETAPE 5 ==================================================================
system("pause");
}
//FIN
====================
merci
J'ai besoin un peut d'aide dans le programme ci-dessous:
La compagnie MÉTÉO-VOTRE NOM désire émettre des statistiques sur la température de plusieurs périodes de temps.
Faire le programme qui permet de
Étape 1: afficher un écran de bienvenue
Étape 2: lire à l'écran la température de chaque jour de la période, un jour à la fois
(valeur sentinelle -99)
Étape 3 : afficher les statistiques suivantes :
- le nombre de jours de la période
- le nombre de jours très froids (où la température a été inférieure à –15 degrés)
- le nombre de jours où il a gelé (où la température n'a pas dépassé 0 degrés)
- le nombre de jours chauds (où la température a atteint ou dépassé 20 degrés)
- la température moyenne de la période
- la température la plus chaude et la plus froide de la période
Étape 4 : demander si on désire recommencer pour une autre période et lire la réponse
- si on désire recommencer, revenir à l'étape sinon poursuivre à l'étape 5
Étape 5 : afficher un écran d'au revoir
======================
voila mon programme:
#include <iostream>
using namespace std;
int main()
{
float n;
int count=0;
int countc=0;
int countf=0;
int countg=0;
//ETAPE 1 ==================================================================
//MESSAGE DE BIENVENUE:
cout<<" BIENVENU A METEO -"<<endl;
cout<<endl;
cout<<"Nous allons emettre des statistiques "<<endl;
cout<<"sur diverses periodes de temps"<<endl;
//FIN ETAPE 1 || DEBUT ETAPE 2 ================================================
do {
cout<<"Entrez la temperature du jour :";
cin>>n;
count++;
cout<<endl;
}
while(n!=-99);
//ETAPE 3:
cout<<"STATISTIQUES - periode de "<<(count-1)<<" jours: "<<endl<<endl;
if (n>=20)
{countc++;
cout<<" On a atteint les 20.0 degrés pendant "<<countc<<" jour(s). "<<endl;
}
else if (n=0)
{
countg++;
cout<<" Il a gele pendant "<<countg<<" jour(s). "<<endl;
}
else if (n<-15.0)
{countf++;
cout<<countf<<" jour(s) ont ete tres froide. "<<endl;
}
else
cout<<" ERREUR"<<endl;
//ETAPE 5 ==================================================================
cout<<endl;
cout<<"LA COMPAGNIE METEO - VOUS SOUHAITE BONNE JOURNEE"<<endl;
cout<<endl;
//FIN ETAPE 5 ==================================================================
system("pause");
}
//FIN
====================
merci
Configuration: Windows Vista Firefox 3.0.3
4 réponses
-
-
Comme tu n'utilises pas de tableau, tu dois faire les tests dans la boucle de saisie des valeurs de températures,
donc dans ton do...while:
//MESSAGE DE BIENVENUE:
cout<<" BIENVENU A METEO -"<<endl;
cout<<endl;
cout<<"Nous allons emettre des statistiques "<<endl;
cout<<"sur diverses periodes de temps"<<endl;
//FIN ETAPE 1 || DEBUT ETAPE 2 ================================================
do {
cout<<"Entrez la temperature du jour :";
cin>>n;
count++;
if (n>=20)countc++;
else if (n==0)countg++;
else if (n<-15)countf++;
cout<<endl;
}
while(n!=-99);
//ETAPE 3:
cout<<"STATISTIQUES - periode de "<<(count-1)<<" jours: "<<endl<<endl;
cout<<" On a atteint les 20.0 degrés pendant "<<countc<<" jour(s). "<<endl;
cout<<" Il a gele pendant "<<countg<<" jour(s). "<<endl;
cout<<countf<<" jour(s) ont ete tres froide. "<<endl; -
Bonsoir,
J'ai fait quelques tests, il serait bien que tu en fasses toi aussi, j'ai pù oublier des cas de figure.
#include <iostream> using namespace std; // test61.cpp int main() { int count = 0; int countc = 0; int countf = 0; int countg = 0; int rep_stop = 0; signed int plus_chaud = -1; signed int plus_froid = 1; signed int n = 0; signed int jours [365]; float cum_temp = 0; //ETAPE 1 ================================================================== //INITIALISATION ET MESSAGE DE BIENVENUE: do { system ("cls"); count = 0; countc = 0; countf = 0; countg = 0; rep_stop = 0; n = 0; cum_temp = 0; plus_chaud = -1; plus_froid = 1; for (int I = 0; I < 365; I++) {jours [I] = 0;} cout << "\n\n BIENVENU A METEO -"<<endl; cout << "Nous allons emettre des statistiques "<<endl; cout << "sur diverses periodes de temps"<<endl; //FIN ETAPE 1 || DEBUT ETAPE 2 ================================================ do { cout << "\n Entrez la temperature du "<<count + 1<<"em. jour :"; cin >> n; if ( n > 90 ) { cout << " \n Valeur eronee : "<<n<<" non prise n compte.";} else { jours [count] = n; count++; } } while ( n != -99 ); // Pour TESTS : //for (int i = 0; jours [i] != -99; i++ ) {cout <<"\n jour [i] = " //<<jours [i]<<" i = "<<i;} //ETAPE 3: cout << "\n\n STATISTIQUES - periode de "<<(count-1) <<" jours: "<<endl; for ( int i = 0; jours [i] != -99; i++ ) { cum_temp = cum_temp + jours [i]; if ( jours [i] > plus_chaud) { plus_chaud = jours [i];} if ( jours [i] < plus_froid) { plus_froid = jours [i];} if ( jours [i] >= 20 ) { countc++; } else if ( jours [i] <= 0 ) { countg++; } if ( jours [i] < -15 ) { countf++; } } cout << "\n On a atteint ou dépassé les 20.0 degrés pendant " <<countc<<" jour(s). "<<endl; cout << "\n Il a gele pendant "<<countg<<" jour(s). "<<endl; cout << "\n "<<countf<<" jour(s) ont ete tres froide. "<<endl; if ( jours [0] != -99 ) { cout << "\n La moyenne des temperatures est : " <<cum_temp / float ((count - 1))<<endl; cout << "\n La temperature la plus chaude est : "<<plus_chaud; cout << "\n La temperature la plus froide est : "<<plus_froid; } do { cout << "\n\n VOULEZ-VOUS POURSUIVRE LE TRAITEMENT STATISTIQUE " "0=Oui 1=Non ?"<<endl; cin >> rep_stop ; } while ( rep_stop != 0 && rep_stop != 1 ); } while ( rep_stop == 0); //ETAPE 5 ================================================================== cout<<"\n\n LA COMPAGNIE METEO - VOUS SOUHAITE BONNE JOURNEE"<<endl; //FIN ETAPE 5 ================================================================== } //FIN -
RECTIFICATIF :
signed int plus_chaud = -11111; signed int plus_froid = 11111; double n = 0;
au lieu de :signed int plus_chaud = -1; signed int plus_froid = 1; signed int n = 0;
etplus_chaud = -11111; plus_froid = 11111;au lieu de :plus_chaud = -1; plus_froid = 1;Ceci afn de palier à une absence de saisie d'une température positive ou négative pour une même période. Ce qui aurait eu pour efffet d'afficher à tord la valeur d'initialisation -1 dans le cas d'absence de tempérture positive (plus_chaud) et 1 dans le cas d'absence de tempérture négative (plus_froid) pour une même période.
if ( n > 90 || n < -99) { cout << " \n Valeur eronee : " <<n<<" non prise n compte.";}a lieu de :if ( n > 90 ) { cout << " \n Valeur eronee : "<<n<<" non prise n compte.";}Afin d'intégrer le contrôle de saisie de températures négatives incohérentes (< -99).