Răspuns :
Răspuns:
Algoritmul tau este bun si foarte bine gandit pentru inceput. Singura lui problema este ca atunci cand nu gaseste un c egal cu max, se reinitializeaza mereu cu 0. Adica in secventa asta:
if(c==max)
app++;
else
app=0;
Recomandarea mea este sa scoti else-ul. Nu de fiecare data cand ai o structura de tip if este nevoie si de un else, decat daca ai mai multe cazuri date de problema. Iar aici calculatorul stie singur ca nu trebuie sa creasca app-ul in cazul in care nu gaseste un c egal cu max-ul.
Explicație:
Răspuns:
#include <iostream>
using namespace std;
int main()
{
int n ,x ,max=-1,c;
cin>>n;
int app=0;
for(int i=0;i<n;i++)
{
cin>>x;
c=x%10;
if(c>max)
max=c;
if(c==max)
app++;
}
cout<<"nr maxim este "<<max<<endl<<"si apare de "<<app<<" ori";
return 0;
}
si am mai facut ceva asemanator
#include <iostream>
using namespace std;
int main()
{int n,c,max=0,p=0,f;
cin>>n;
cout<<"cifra maxima a lui "<<n<<" este ";
c=n%10;
while(n!=0){
f=n%10;
if(c>f)
max=c;
else max=f;
if(f==max)
p=p+1;
n/=10;
}
cout<<max<<endl;
cout<<"cifra maxima a lui n apare de "<<p<<" ori";
return 0;
}


Vă mulțumim pentru vizita pe site-ul nostru dedicat Informatică. Sperăm că informațiile prezentate v-au fost utile. Dacă aveți întrebări suplimentare sau nevoie de ajutor, vă rugăm să ne contactați cu încredere. Așteptăm cu drag să reveniți și nu uitați să ne salvați în lista dumneavoastră de favorite!