Puteti rezolva in c++,mai simplu,la nivel incepator a-9-a.
Se dau n numere naturale. Să se determine ultimele două numere impare, nu neapărat distincte, dintre cele date.
Date de intrare
Programul citeşte de la tastatură numărul n, apoi n numere naturale, dispuse pe mai multe linii.
Date de ieşire
Programul afişează pe ecran ultimele două numere impare dintre cele date, în ordinea în care au fost citite. Dacă nu au fost citite suficiente numere impare, se va afişa doar mesajul Numere insuficiente.
Restricţii şi precizări
0 < n <= 10.000
cele n numere citite vor avea cel mult 9 cifre
Exemplu
Date de intrare
8
12 15 68 13 17
90 31 42
Date de ieşire
17 31
Categorii
Utilizator anonim:
#include <iostream>
{
int n,a,imp1=,imp2=0;
cin>>n;
cin>>a;
for(i=1;i<=n;i++)
{
cin>>a;
if(a%2!=0)
{
imp1=imp2;
imp2=a;
}
}
if(imp1==0|| imp2==0)
cout<<"Numere insuficiente";
else
cout<<imp1<<imp2;
}
Răspunsuri la întrebare
Răspuns de
4
#include <iostream>
using namespace std;
int n, i, v[10005], p, q, nr;
int main()
{
cin >> n;
while(i < n)
{
i ++;
cin >> v[i];
}
i = n;
while(i >= 1 && nr <= 2)
{
if(v[i] % 2 == 1)
{
nr++;
if (nr == 1) p = v[i];
if (nr == 2) q = v[i];
}
i --;
}
if (nr < 2) cout << "Numere insuficiente";
else cout << q << " " << p;
return 0;
}
using namespace std;
int n, i, v[10005], p, q, nr;
int main()
{
cin >> n;
while(i < n)
{
i ++;
cin >> v[i];
}
i = n;
while(i >= 1 && nr <= 2)
{
if(v[i] % 2 == 1)
{
nr++;
if (nr == 1) p = v[i];
if (nr == 2) q = v[i];
}
i --;
}
if (nr < 2) cout << "Numere insuficiente";
else cout << q << " " << p;
return 0;
}
Alte întrebări interesante
Geografie,
9 ani în urmă
Limba română,
9 ani în urmă
Matematică,
9 ani în urmă
Limba română,
9 ani în urmă