Witam,
jako zadanie domowe mam do wykonania program, który najpierw z pliku pobierze 10 liczb a następnie wypisze liczby ,
których suma cyfr jest liczbą pierwszą. Do tej pory napisałem coś takiego, ale nie działa i nie mam pomysłu co z tym dalej zrobić. Jestem w podstawie, nie chciałbym używać żadnych skompilowanych bibliotek itp.
fstream plik;
plik.open("liczby.txt", ios::in);
if (plik.good() == true) {
cout << "Otworzylem plik" << endl;
} else {
cout << "Blad. Problemy z plikiem" << endl;
}
string liczby[10];
for (int x = 0; x < 10; x++) {
plik >> liczby[x];
cout << liczby[x] << "\t";
}
cout << endl;
cout << "Lancuchy ktorych suma cyfr jest liczba pierwsza" << endl;
int suma = 0;
int sp = 0;
for (int x = 0; x < 10; x++) {
suma = 0;
sp = 0;
for (int i = 0; i < liczby[x].length(); i++) {
suma = suma + liczby[x][i] - '0';
}
for (int b = 1; b < suma; b++) {
if (suma % b == 0) {
sp = sp + 1;
}
}
if (sp == 2) {
cout << liczby[x] << "\t";
}
}
cout << endl;