Problema calcParImpar #3284 de pe pbinfo va rog:
Cerința
Se dau n numere naturale. Considerăm poziţiile lor numerotate de la 1 la n.
Să se determine cea mai mare valoare memorată pe o poziţie pară şi cea mai mică valoare de două cifre aflată pe o poziţie impară.
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 va afișa pe ecran numerele x şi y, pe același rând și separate prin spațiu, reprezentând, în ordine, cele două valori calculate.
În cazul în care nu sunt valori de două cifre pe poziții impare se va afișa -1 în contul valorii y.
Restricții și precizări
2 ≤ n ≤ 20
cele n numere citite vor fi mai mici decât 1.000.000.000
Exemplu
Intrare
5
1 3 3 4 8
Ieșire
4 -1
Explicație
Cea mai mare valoare de pe o poziție pară este 4 și nu avem numere de două cifre pe poziții impare.
Răspunsuri la întrebare
Răspuns de
1
Răspuns:
#include <iostream>
using namespace std;
int main()
{
int n,x[20],k=0,maxim=0,minim=99;
cin>>n;
for(int i=1;i<=n;i++)
cin>>x[i];
for(int i=1;i<=n;i++)
{
k++;
if(k%2==0){
if(x[k]>maxim)
maxim=x[k];}
else
{if(x[k]>=10 and x[k]<=99)
if(minim>x[k])
minim=x[k];}
}
if(maxim==0 && minim!=99)
cout<<-1<<" "<<minim;;
if(minim==99 && maxim!=0)
cout<<maxim<<" "<<-1;
if(minim!=99 && maxim!=0)
cout<<maxim<<" "<<minim;
return 0;
}
Explicație:
Alte întrebări interesante
Biologie,
8 ani în urmă
Limba română,
8 ani în urmă
Informatică,
8 ani în urmă
Limba română,
9 ani în urmă
Franceza,
9 ani în urmă