Algoritm pentru determinarea cifrei maxime a unui număr


  1. Se citește de la tastatură un număr natural n. Să se determine care este cea mai mare cifră care apare în scrierea acestuia.

O astfel de problemă se poate rezolva cu ajutorul Metodei Greedy. Se declară o altă variabilă, cifmax care se inițializează cu valoarea celei mai mici cifre, deci 0. Cât timp n mai are cifre, se verifică dacă ultima cifră a variabilei introduse este mai mare decât cifmax, iar în caz afirmativ, cifmax ia valoarea ultimei cifre, după care se elimină ultima cifră a lui n.

#include <iostream>
using namespace std;
int main()
{
    int n, cifmax=0;
    cout<<"n?"; cin>>n;
    while(n)
    {
        if(n%10>cifmax)
        cifmax=n%10;
        n=n/10;
    }
    cout<<cifmax;
    return 0;
}

De asemenea, ai putea dori...

Lasă un răspuns

Acest sit folosește Akismet pentru a reduce spamul. Află cum sunt procesate datele comentariilor tale.