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

Cerinţă
Se citeşte de la tastatură un număr natural. Să se determine cea mai mare cifră care apare în scrierea acestuia şi numărul de apariţii ale ei.

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 şi numărul de apariţii ale ei, separate printr-un spaţiu.

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

Răspunsuri la întrebare

Răspuns de Andrei1702
1
Pui cifrele numarului intr-un vector, apoi determini componenta maxima a vectorului cu un for si apoi mai faci inca un for in care gasesti numarul de aparitii

chiseugen: am mai raspuns la asa intrebare astazi, cauta prin intrebari si gasesti conditia ta
benny2002: #include <iostream>
using namespace std;

void cifmaxnr(long n, short int& max, short int& count) {
    if(n / 10 == 0) {
       max = n;
       count = 1;
    } else {
        cifmaxnr(n/10, max, count);
        if (max < n % 10) {
            max = n % 10;
            count = 0;
        }
        if (max == n % 10) count++;
    }
}
int main() {
    int a;
    short int maxim, cont;
    cin >> a;
    cifmaxnr(a, maxim, cont);
    cout << maxim << endl << cont << endl;
    return 0;
}
Alte întrebări interesante