Un număr este de tip “munte” dacă cifrele sale formează inițial un șir strict crescător, apoi un șir strict descrescător.
Cerinţa
Se dau n numere naturale. Determinați, pentru fiecare dintre ele, dacă este de tip “munte”.
Date de intrare
Programul citește de la tastatură numărul n, iar apoi n numere naturale, separate prin spaţii.
Date de ieşire
Programul afișează pentru fiecare dintre cele n numere citite, pe câte o linie a ecranului valoarea 1, dacă numărul corespunzător este de tip “munte”, respectiv valoarea 0 în caz contrar.
Restricţii şi precizări
1 ≤ n ≤ 10
cele n numere citite vor fi mai mici decât 2.000.000.000
cele n numere citite vor fi mai mari decât 100
JolieJulie:
Ok...numere de genul 12344321 sau 1234? Cum formeaza șir crescători si descrescător?imi dai ex de un nr?....
Răspunsuri la întrebare
Răspuns de
11
#include <iostream>
using namespace std;
int n,x;
int main ()
{
cin >> n;
for(;n;n--)
{
cin >> x;
int y=x%10,i=0,j=0,ok1=1,ok2=1;
x/=10;
if(x%10<y) ok1=0;
else
while(x!=0)
{
if(!ok2) j++;
if(x%10>y and ok2) i++;
else if(x%10<y)
{
if(j==0) j++;
ok2=0;
}
else ok1=0;
y=x%10;
x/=10;
}
if(ok1 and i!=0 and j!=0) cout << 1 << endl;
else cout << 0 << endl;
}
return 0;
}
using namespace std;
int n,x;
int main ()
{
cin >> n;
for(;n;n--)
{
cin >> x;
int y=x%10,i=0,j=0,ok1=1,ok2=1;
x/=10;
if(x%10<y) ok1=0;
else
while(x!=0)
{
if(!ok2) j++;
if(x%10>y and ok2) i++;
else if(x%10<y)
{
if(j==0) j++;
ok2=0;
}
else ok1=0;
y=x%10;
x/=10;
}
if(ok1 and i!=0 and j!=0) cout << 1 << endl;
else cout << 0 << endl;
}
return 0;
}
Alte întrebări interesante
Studii sociale,
8 ani în urmă
Matematică,
8 ani în urmă
Limba rusă,
9 ani în urmă
Limba română,
9 ani în urmă
Fizică,
9 ani în urmă