Informatică, întrebare adresată de RazvyMihai, 9 ani în urmă

Cerinţa
Se citesc numere de la tastatură până la apariția lui zero. Să se determine cea mai mare valoare citită.

Date de intrare
Programul citește de la tastatură numere întregi. Citirea se încheie la introducerea valorii 0.

Date de ieşire
Programul afișează pe ecran numărul MAX, reprezentând cea mai mare valoare citită.

Restricţii şi precizări
numerele citite aparțin intervalului (-1.000.000;1.000.000)
valoarea zero, care încheie citirile, nu se ia în considerare la determinarea maximului
dacă prima valoare introdusă este zero, se va afișa mesajul NU EXISTA

Exemplu
Intrare

5 6 2 1 0
Ieșire

6

Răspunsuri la întrebare

Răspuns de Geout
15
#include
using namespace std;
int n, MAX;
int main ()
{
cin>>n; //citesti primul numar
MAX=n; /*initializezi valoarea lui MAX cu primul numar*/
while (n) /* citesti numere pana la valoarea 0 */
{
if (n>MAX) /* daca numarul citit este mai mare ca MAX, atunci MAX ia valoarea lui n */
MAX=n;
cin>>n;
}
cout<return 0;
}

MariaJD: si pentru n=0 trebuie aisat nu exista
MariaJD: afisat*
Geout: da, adevarat. mai trebuie adaugat dupa primul cin>>n; if (n==0) cout<<"NU EXISTA"; else {//instrictiunile urmatoare
MariaJD: tot 80 de puncte primesc
Geout: ai un raspuns gresit? sau care e eroarea?
MariaJD: #include <iostream>

using namespace std;
int n, MAX;
int main ()
{
cin>>n;
MAX=n;
if(n==0)
cout<"NU EXISTA";
else{
while(n)
{
if(n>MAX)
MAX=n;
cin>>n;
}}
cout<<MAX;
return 0;
}
MariaJD: asa am trimis, e o problema cu nu exista presupun
Geout: #include <iostream>

using namespace std;
int n, MAX;
int main ()
{
cin>>n;
MAX=n;
if(n==0)
cout<<"NU EXISTA";
else
{
while(n)
{
if(n>MAX)
MAX=n;
cin>>n;
}
cout<<MAX;}
return 0;
}
paranteza de la else trebuia inchis inainte de return 0;
MariaJD: tot 80 puncte
Alte întrebări interesante