Pentru n (n<=100) numere întregi x cu cel mult 4 cifre fiecare citite de la la tastatură sã se determine:
a. valoarea minimă citită.
b. valoarea maximă citită şi de câte ori apare această valoare în şirul valorilor citite
c. cel mai mare număr par
d. valoarea x cu cea mai mare sumă a cifrelor.
Dacă sunt mai multe astfel de numere (cu aceeaşi sumă a cifrelor) se va afişa cel cu valoarea cea mai mică.
Răspunsuri la întrebare
Răspuns de
1
#include <iostream>
using namespace std;
int sum_cif(int x)
{
int s = 0;
while(x)
{
s += x % 10;
x /= 10;
}
return s;
}
int main()
{
int n, x, mx = -1, cnt = 0, mx_par = -1, mx_cif = -1, y;
cin>>n;
while(n)
{
cin>>x;
if(x > mx_par && x % 2 == 0)
mx_par = x;
if(x > mx)
{
mx = x;
cnt = 1;
}
else if(x == mx)
cnt++;
int s = sum_cif(x);
if(s > mx_cif)
{
y = x;
mx_cif = s;
}
n--;
}
cout<<mx<<' '<<cnt<<'\n'; //punctul b
cout<<mx_par<<'\n'; //Punctul c
cout<<y; //Punctul d
}
using namespace std;
int sum_cif(int x)
{
int s = 0;
while(x)
{
s += x % 10;
x /= 10;
}
return s;
}
int main()
{
int n, x, mx = -1, cnt = 0, mx_par = -1, mx_cif = -1, y;
cin>>n;
while(n)
{
cin>>x;
if(x > mx_par && x % 2 == 0)
mx_par = x;
if(x > mx)
{
mx = x;
cnt = 1;
}
else if(x == mx)
cnt++;
int s = sum_cif(x);
if(s > mx_cif)
{
y = x;
mx_cif = s;
}
n--;
}
cout<<mx<<' '<<cnt<<'\n'; //punctul b
cout<<mx_par<<'\n'; //Punctul c
cout<<y; //Punctul d
}
Anexe:
MadalinaMadutaa:
voiam separat si fara functie
Alte întrebări interesante
Biologie,
8 ani în urmă
Limba română,
8 ani în urmă
Matematică,
9 ani în urmă
Matematică,
9 ani în urmă
Fizică,
9 ani în urmă