Cerința
Se citesc de la tastatură n numere naturale. Să se determine numărul a cărui sumă a cifrelor este cea mai mare, respectiv cea mai mică.
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
Minimul va fi afișat pe primul rând și maximul pe al doilea rând.
Restricții și precizări
•1 ≤ n ≤ 1000
•cele n numere citite sun mai mici decât 2.000.000.000
•dacă exista mai multe numere cu aceeași suma minima/maxima se va afișa primul găsit
Exemplu
Intrare
5 145 225 198 326 874
Ieșire
225
874
Explicație
145 -> 1+4+5=10
225 -> 2+2+5=9 (minimul)
198 -> 1+9+8=18
326 -> 3+2+6=11
874 -> 8+7+4=19 (maximul)
EU AM FACUT ACEST PROGRAM INSA NU IMI MERGE, VA ROG, MA PUTETI AJUTA??
AICI ESTE PROGRAMUL ME:
#include
#include
using namespace std;
int main()
{
int n,x,i,maxim=INT_MIN,minim=INT_MAX,cif,s=0;
cin>>n;
for(i=1;i<=n;i++)
{
cin>>x;
while(x!=0)
{
cif=x%10;
s=s+cif;
x=x/10;
if(s>maxim)
maxim=s;
if(s
minim=s;
}
}
cout<
return 0;
}
Răspunsuri la întrebare
Răspuns de
4
#include <iostream>
using namespace std;
//ifstream cin("f.in");
//ofstream cout("f.out");
int n,a,mi=999999,ma=0,s;
int sumcif(int n)
{
int s=0;
while(n)
{
s+=n%10;
n/=10;
}
return s;
}
int main()
{
cin>>n;
for(int i=0;i<n;i++)
{
cin>>a;
s=sumcif(a);
if(s<sumcif(mi))
mi=a;
if(s>sumcif(ma))
ma=a;
}
cout<<mi<<'\n'<<ma;
return 0;
}
Alte întrebări interesante
Limba română,
8 ani în urmă
Limba română,
9 ani în urmă
Limba română,
9 ani în urmă
Limba română,
9 ani în urmă
Engleza,
9 ani în urmă
using namespace std;
//ifstream cin("f.in");
//ofstream cout("f.out");
int n,a,mi=999999,ma=0,s;
int sumcif(int n)
{
int s=0;
while(n)
{
s+=n%10;
n/=10;
}
return s;
}
int main()
{
cin>>n;
for(int i=0;i<n;i++)
{
cin>>a;
s=sumcif(a);
if(s<sumcif(mi))
mi=a;
if(s>sumcif(ma))
ma=a;
}
cout<<mi<<'\n'<<ma;
return 0;
}