Informatică, întrebare adresată de Zer0nix, 8 ani în urmă

Subprogramul sfx primeşte prin singurul său parametru, x, un număr natural din intervalul

[100,2000000000] şi returnează valoarea 1 dacă ultimele trei cifre ale numărului sunt în ordine strict descrescătoare sau valoarea 0 în caz contrar.

Exemplu: dacă x=24973 se va returna valoarea 1.

edit: nu trebuie neeaparat sa fie subprogram.
Am reusit sa l fac daca tot numarul e in ordine descescatoare dar nu imi dau seama cum fac doar daca ultimele trei cifre sunt asa?


int main()

{

int n, ok = 1;

cin >> n;

while (n > 9) {

if (n / 10 % 10 <= n % 10)

ok = 0;

n = n / 10;

}

if ( ok == 1)

cout << "DA";

else

cout << "NU";

}

Răspunsuri la întrebare

Răspuns de robertanisoiu
1

Răspuns:

#include <iostream>

using namespace std;

int main()

{

   int x, rezultat, cifra1, cifra2, cifra3;

   cout<<"Dati numarul x: ";

   cin>>x;

   // Cifra unitatilor

   cifra1 = x%10;

   // Cifra zecilor

   cifra2 = (x/10)%10;

   // cifra sutelor

   cifra3 = (x/100)%10;

   if(cifra3 > cifra2)

       if (cifra2 > cifra1)

           rezultat = 1;

       else

           rezultat = 0;

   else

       rezultat = 0;

   cout<<rezultat;

   return 0;

}

Explicație:

Alte întrebări interesante