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

Cerinţa Se dau n numere naturale şi un număr natural k. Afişaţi acele numere date care au cel puţin k divizori. Date de intrare Fişierul de intrare divk.in conţine pe prima linie numerele n şi k, iar pe a doua linie n numere naturale separate prin spaţii. Date de ieşire Fişierul de ieşire divk.out va conţine pe prima linie numerele care au cel puţin k divizori, separate printr-un spaţiu, în ordinea în care au fost citite. Restricţii şi precizări 1 ≤ n ≤ 100 numerele de pe a doua linie a fişierului de intrare, precum şi k vor avea cel mult 9 cifre Cum se revolva?? Nu stiu cum dar imi da mereu 0.. 

Răspunsuri la întrebare

Răspuns de DavidSima
1
#include <iostream>
#include <fstream>
using namespace std;
unsigned int n, k, i, j, d, nr;
int main()
{
    ifstream f("divk.in");
    ofstream g("divk.out");
    f>>n>>k;
    for(i=1;i<=n;i++)
    {
        d=0;
        f>>nr;
        for(j=1;j<=nr;j++)
            if(nr%j==0)
                d++;
        if(d>=k)
            g<<nr<<' ';
    }
}
Anexe:

mariaclau9: Multumeesc muult!! 
DavidSima: nu uita coroana :D
mariaclau9: Daca imi si spui cum iti dau :)) ^^ 
Alte întrebări interesante