Witajcie. Właśnie próbuję robić zadania do matury z informatyki. Moje zadanie brzmi tak : "Wśród liczb występujących w pliku wejściowym znajdź te, które mają dokładnie 18 dzielników naturalnych (wliczając w nie 1 i samą liczbę)."
Wykombinowałem coś takiego :
#include <iostream>
#include <fstream>
using namespace std;
int main()
{
ifstream plik;
plik.open("liczby.txt");
long liczba,ilosc=0,dzielnik;
while (!plik.eof())
{
plik>>liczba;
dzielnik=0;
ilosc=0;
do
{
dzielnik++;
if(liczba%dzielnik==0) ilosc++;
} while (dzielnik==liczba);
if(ilosc==18) cout<<liczba<<endl;
}
}
Szkoda tylko, że nie działa :P. Byłbym wdzięczny o wskazówkę :).