Se citește de la tastatură numărul natural n și apoi se citesc n numere naturale, reprezentand elementele unui vector unidimensional. Se cere sa se scrie cate un program care sa realizeze fiecare dintre urmatoarele sarcini:
1) să se afișeze numerele din vector
2) să se afișeze numerele pare din vector
3) să se afișeze numerele impare din vector
4) să se afișeze numerele divizibile cu 3 din vector
5) să se afișeze numerele aflate pe poziții pare în vector
6) să se afișeze numerele aflate pe impoziții pare în vector
7) să se calculeze suma numerelor impare din vector
8) să se calculeze suma numerelor pare din vector
9) să se calculeze suma numerelor aflate pe poziții pare din vector
10) să se calculeze produsul numerelor impare din vector
11) să se calculeze produsul numerelor aflate pe poziții impare din vector
12) să se afișeze ultima cifră a fiecărui număr din vector
13) să se afișeze cifra zecilor din fiecare număr din vector
14) să se afișeze cifra sutelor fiecărui număr din vector
15) să se calculeze suma valorilor de doua cifre din vector
Răspunsuri la întrebare
Răspuns:
#include <iostream>
using namespace std;
int main()
{
int n;
cin>>n;
int a[n],i;
for(i=1;i<=n;i++)
cin>>a[i];
//toate elementele
for(i=1;i<=n;i++)
cout<<a[i]<<" ";
cout<<endl;
//numerele pare
for(i=1;i<=n;i++)
if(a[i]%2==0)
cout<<a[i]<<" ";
cout<<endl;
//numerele impare
for(i=1;i<=n;i++)
if(a[i]%2==1)
cout<<a[i]<<" ";
cout<<endl;
//numerele divizibile cu 3
for(i=1;i<=n;i++)
if(a[i]%3==0)
cout<<a[i]<<" ";
cout<<endl;
//numere pe pozitii pare
//Aici depinde daca indexezi vectorul de la 0 sau de la 1
//daca il indexezi de la 0, incepi cu i=0
for(i=2;i<=n;i+=2)
cout<<a[i]<<" ";
cout<<endl;
//numere de pe pozitii impare
for(i=1;i<=n;i+=2)
cout<<a[i]<<" ";
cout<<endl;
int S=0; //suma
// suma elementelor impare
for(i=1;i<=n;i++)
if(a[i]%2==1)
S=S+a[i];
cout<<S<<endl;
//suma elementelor pare
S=0;
for(i=1;i<=n;i++)
if(a[i]%2==0)
S+=a[i];
cout<<S<<endl;
//suma nr de pe pozitii pare
S=0;
for(i=2;i<=n;i+=2)
S+=a[i];
cout<<S<<endl;
//produsul nr impare
int P=1;
for(i=1;i<=n;i++)
if(a[i]%2==1)
P*=a[i];
cout<<P<<endl;
//produsul nr de pe pozitii impare
P=1;
for(i=1;i<=n;i+=2)
P*=a[i];
cout<<P<<endl;
//ultima cifra a fiecarui numar
int u;
for(i=1;i<=n;i++)
{
u=a[i]%10;
cout<<u<<" ";
}
cout<<endl;
//cifra zecilor
for(i=1;i<=n;i++)
{
int x=a[i];
x/=10;
u=x%10;
cout<<u<<" ";
}
cout<<endl;
//cifra sutelor
for(i=1;i<=n;i++)
{
int x=a[i];
x/=100;
u=x%10;
cout<<u<<" ";
}
cout<<endl;
//suma valorilor de 2 cifre
int nr=0;
int nrc;
for(i=1;i<=n;i++)
{
nrc=0;
while(a[i]>0)
{
a[i]/=10;
nrc++;
}
if(nrc==2)
nr++;
}
cout<<nr;
return 0;
}