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

Scrieţi un program C/C++ care citeşte de la tastatură un număr natural, n (2≤n≤50), și
construiește în memorie un tablou unidimensional cu n elemente, astfel încât,
parcurgându-l de la stânga la dreapta, se obține șirul primelor n numere naturale, pare,
care NU sunt divizibile cu 5, ordonat strict crescător, ca în exemplu. Programul afișează
pe ecran elementele tabloului obținut, separate prin câte un spațiu.
Exemplu: dacă n=7, se obține tabloul (2,4,6,8,12,14,16).

Răspunsuri la întrebare

Răspuns de cppguy
1
#include <iostream>using namespace std;int n,i,v[51],k;int main(){    cin>>n;    k=0;    for(i=1;i<=n;i++){        if(k%10==8){           k=k+4;        }        else k=k+2;        v[i]=k;    }    for(i=1;i<=n;i++)        cout<<v[i]<<" ";
    return 0;}
Anexe:

MavisVermilion: Multumesc enorm :D
MavisVermilion: Poti te rog sa adaugi cateva explicatii daca nu te deranjeaza.Am cateva semne de intrebare...
MavisVermilion: de exeplu linia k%10==8
cppguy: numerele trebuie sa fie pare, divizibilie cu 2 si sa nu fie divizibile cu 5. deci sa nu fie divizibile cu 5 si cu 2 in acelasi timp, adica sa nu fie divizibile cu 2*5. daca numarul are ultima cifra = 8 atunci trebuie sa evitam 10, asa ca k=k+4; in rest k=k+2;
Alte întrebări interesante