Informatică, întrebare adresată de ionutcristian6, 9 ani în urmă

Se citesc n numere naturale diferite de 0. Pentru fiecare numar citit sa se afiseze divizorii pari. Daca nu are divizori pari, sa se afiseze un mesaj de informare.

Răspunsuri la întrebare

Răspuns de gabi54t
2
#include <iostream>
using namespace std;
int main()
{
int n,i,d,v[30];
cin>>n;
for(i=1; i <=n; i ++)
cin>>v[i];
for(i=1; i <=n; i ++)
for(d=2; d<=v[i]; d++)
if(v[i]%d==0)
cout<<d<<" ";

}

ionutcristian6: Imi si explici ce ai facut acolo?
gabi54t: la inceput am declarat ce am eu nevoie pentru program: n fiind cate numere ai in acel vector, d reprezinta divizorii acelui numar, i este pozitia unui element din sirul de numere si v[30] este un vector in care am alocat memorie pentru 30 de numere.
gabi54t: Dupa asta am citit n ca sa stie programul cate elemente vreau eu sa am in acel sir iar apoi am parcurs acele elemente urmand sa le citesc. Le-am parcurs iar dupa care am parcurs divizorii si am verificat daca d-ul este un divizor al lui v[i]. Ce am uitat eu sa pun este o presupunere pentru ca sa afiseze mesajul de informare si la parcurgerea divizorilor sa-l pun din 2 in 2 iti rescriu codul acum ca sa fie corect
gabi54t: #include <iostream>
using namespace std;
int main()
{
int n,i,d,v[30],pp=0;
cin>>n;
for(i=1; i <=n; i ++)
cin>>v[i];
for(i=1; i <=n; i ++)
for(d=2; d<=v[i]; d+=2)
if(v[i]%d==0)
cout<<d<<" ";

}
gabi54t: stai ca nu e corect nici asa am bulit eu ceva :))
ionutcristian6: Faza e ca sunt a IX-a si nu prea inteleg ca nu am facut :))
gabi54t: ah n-ati facut vectori?
ionutcristian6: Merge facuta si fara vectori?
Alte întrebări interesante