Cerinţa
Se dau n numere naturale. Determinați numărul pentru care prima cifră este maximă.
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ă pe ecran numărul cerut M.
Restricţii şi precizări
1 ≤ n ≤ 1000
cele n numere citite vor avea cel mult 9 cifre
dacă există mai multe numere pentru care prima cifră este maximă, se va determina cel mai mare dintre acestea
Exemplu
Date de intrare
5
2467 645 687 59878 125
Date de ieșire
687
Explicație
Există două numere pentru care prima cifră este maximă. Dintre acestea, cel mai mare este 687.
C++ va rog ...prb 364 pbinfo
Răspunsuri la întrebare
Răspuns de
2
#include <iostream>
using namespace std;
int main()
{
int n, x, y, max = -1, m;
cin>>n;
while(n)
{
cin>>x;
y = x;
while(y > 9)
y /= 10;
if(y > max)
{
max = y;
m = x;
}
else if(y == max && x > m)
m = x;
n--;
}
cout<<m;
}
using namespace std;
int main()
{
int n, x, y, max = -1, m;
cin>>n;
while(n)
{
cin>>x;
y = x;
while(y > 9)
y /= 10;
if(y > max)
{
max = y;
m = x;
}
else if(y == max && x > m)
m = x;
n--;
}
cout<<m;
}
andreearamonaiovu:
mss 100p
Răspuns de
1
#include <iostream>
#define INF 2147000000
using namespace std;
int n,k,x,i,maxx=-INF,mc=0;
int main()
{
cin>>n;
for(i=1;i<=n;i++)
{
cin>>x;
k=x;
while(x/10)
x=x/10;
if(x>mc) {mc=x; if(maxx>k) maxx=k;}
else if(x==mc)
if(k>maxx) maxx=k;
}
cout<<maxx;
return 0;
}
#define INF 2147000000
using namespace std;
int n,k,x,i,maxx=-INF,mc=0;
int main()
{
cin>>n;
for(i=1;i<=n;i++)
{
cin>>x;
k=x;
while(x/10)
x=x/10;
if(x>mc) {mc=x; if(maxx>k) maxx=k;}
else if(x==mc)
if(k>maxx) maxx=k;
}
cout<<maxx;
return 0;
}
Alte întrebări interesante
Germana,
8 ani în urmă
Matematică,
8 ani în urmă
Matematică,
8 ani în urmă
Matematică,
9 ani în urmă
Matematică,
9 ani în urmă
Matematică,
9 ani în urmă
Matematică,
9 ani în urmă
Limba română,
9 ani în urmă