Fie un sir de numere naturale. Sa se afiseze suma divizorilor fiecarui numar. Datele de intrare se citesc din fisierul "date.in" astfel: de pe prima linie se citeste numarul p, iar de pe urmatoarea linie se citesc p numere separate prin cate un spatiu. Datele de iesire se vor afisa, pe linii distincte, in fisierul "date.out".
Răspunsuri la întrebare
Răspuns de
2
Răspuns:
#include <iostream>
#include <fstream>
using namespace std;
int main ()
{
ifstream f ("date.in");
ofstream g ("date.out");
int p;
f>>p;
int rd;
for(int i = 0;i<p;i++){
f>>rd;
int sum = rd;
for(int i = 2; i<=rd/2;i++){
if(rd % i == 0){
sum+=i;
}
}
g<<sum<<endl;
}
f.close();
g.close();
return 0;
}
Explicație:
Doar trebuie sa iti creezi un fisier pe nume date.in, in care pe primul rand iti vei pune numarul de cifre pe care le vei scrie pe al doilea rand separate printr-un spatiu.
Dupa ce vei rula, se va creea fisierul date.out si vor aparea divizorii fiecarui numar pe cate o linie.
Alte întrebări interesante
Limba română,
8 ani în urmă
Matematică,
8 ani în urmă
Engleza,
8 ani în urmă
Chimie,
8 ani în urmă
Limba română,
8 ani în urmă
Engleza,
9 ani în urmă
Limba română,
9 ani în urmă