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

VA ROG AJUTOR
Cerinţă
Să se scrie un program care să determine cea mai mare cifră a unui număr natural citit de la tastatură.

Date de intrare
Programul va citi de la tastatură un număr natural.

Date de ieşire
Programul va afişa pe ecran cea mai mare cifră a numărului citit.

Restricţii şi precizări
numărul citit va fi mai mic decât 2.000.000.000



Exemplu
Intrare

2705
Ieşire

7

Răspunsuri la întrebare

Răspuns de Elena1elle
1

#include<iostream>

using namespace std;

int i, n,c;

int main()

{cin>>n;

for(i=9;i>0;i--)

{c=n;

   while(c)

   {

       if(c%10==i) {cout<<i;return 0;}

       else c=c/10;

   }

}

   return 0;

}



Elena1elle: daca nu da 100 pe pbinfo, scrie long long n, in loc de int
boiustef: originala rezolvare dar chinui numarul initial n cu 9 repetari cautand intre cifre anume pe 9, apoi pe 8 samd... dar daca n=0 ce raspuns da codul ???
boiustef: cred nimic...
boiustef: numarul initial n are dreptul sa fie xero, ca numar natural
boiustef: din enunt nu e necesar long long ....
Răspuns de boiustef
1

#include <iostream>

using namespace std;

int main()

{

   int n, cif, cifmax=0;

   cout <<"n=";

   cin >> n;

   while (n!=0)

   {

       cif=n%10;

       if (cif>cifmax) cifmax=cif;

       n=n/10;

   }

   cout << "cifra maxima=" << cifmax;

   return 0;

}



ovdumi: eu am citit ca secvetele de true si else se pun in { }
boiustef: daca asi modifica if, va fi asa:
if (cif>cifmax) { cifmax=cif;} urmatoaea instructiune nu e in if ...
ovdumi: asa e mai didactic
boiustef: esti primul care insisti la asta ...
ovdumi: inamplator m-am uitat pe solutia ta
boiustef: oricum mersi pt observatie... dar te-am intrebat de punctaj...???
ovdumi: nu inteleg ce e cu punctajul asta
boiustef: ok, o seara buna, sanatate si succese
ovdumi: nu se acumuleaza nimic
ovdumi: see you
Alte întrebări interesante