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
Răspunsuri la întrebare
Răspuns de
4
#include <iostream>
using namespace std;
int prima_cifra(int n)
{ while(n>9)
n=n/10;
return n;
}
int main()
{ int n,x[1000];
cin>>n;
for(int i=1;i<=n;i++)
cin>>x[i];
int max=0,M=0;
for(int i=1;i<=n;i++)
if(prima_cifra(x[i])>max) max=prima_cifra(x[i]);
int ok=0;
for(int i=1;i<=n;i++)
{
if(prima_cifra(x[i])==max)
{
if(ok==0) {M=x[i]; ok=1;}
if(ok==1)
if(x[i]>M) M=x[i];
}
}
cout<<M;
return 0;
}
using namespace std;
int prima_cifra(int n)
{ while(n>9)
n=n/10;
return n;
}
int main()
{ int n,x[1000];
cin>>n;
for(int i=1;i<=n;i++)
cin>>x[i];
int max=0,M=0;
for(int i=1;i<=n;i++)
if(prima_cifra(x[i])>max) max=prima_cifra(x[i]);
int ok=0;
for(int i=1;i<=n;i++)
{
if(prima_cifra(x[i])==max)
{
if(ok==0) {M=x[i]; ok=1;}
if(ok==1)
if(x[i]>M) M=x[i];
}
}
cout<<M;
return 0;
}
Răspuns de
3
include <iostream>
using namespace std;
int main ()
{
int n,i,a,cifra,max=0,a2,x;
cin>>n;
for (i=1;i<=n;i++)
{
cin>>a;
a2=a;
while (a)
{
cifra=a%10;
a=a/10;
}
if(cifra>max || cifra==max && a2>x)
{
max=cifra;x=a2;
}
}
cout<<x;
}
using namespace std;
int main ()
{
int n,i,a,cifra,max=0,a2,x;
cin>>n;
for (i=1;i<=n;i++)
{
cin>>a;
a2=a;
while (a)
{
cifra=a%10;
a=a/10;
}
if(cifra>max || cifra==max && a2>x)
{
max=cifra;x=a2;
}
}
cout<<x;
}
Alte întrebări interesante
Limba română,
8 ani în urmă
Germana,
8 ani în urmă
Fizică,
8 ani în urmă
Matematică,
9 ani în urmă
Limba română,
9 ani în urmă
Limba română,
9 ani în urmă
Limba română,
9 ani în urmă