Na tai patikrink, ar tavo funkcija duoda teisingus atsakymus. Paprašyk išvesti skaičiaus 68 daliklių skaičių. Pagrindinėje funkcijoje rašome: cout << dalikliai(68);
Karolis921 +68
Gaunu 6.
Tomas PRO +4543
Vadinasi viskas gerai, nes skaičiaus 68 dalikliai: 1, 2, 4, 17, 34, 68. Ar turi jau nusiskaitęs duomenis iš failo?
Karolis921 +68
Taip
Tomas PRO +4543
Gerai. O duomenis išsisaugojai vienmačiame masyve?
Karolis921 +68
Taip
Tomas PRO +4543
Tai va, mano idėja yra tokia: Susikuriame dar vieną masyvą, kuriame saugosime tų skaičių daliklių kiekį. Tuomet ciklu pereiname visas pirmajame masyve esančias reikšmes ir su kiekviena reikšme randame jos daliklių skaičių pasinaudodami susikurta funkcija dalikliai() ir tą skaičių saugome antrajame masyve.
Karolis921 +68
int a[50], dalkiek[50], n; ifstream in ("duom.txt"); in >> n; for (int i=0; i<n; i++) { in >> a[i]; } for (int i=0; i<n; i++) { dalikliai(a[i]); }
Nelabai suprantu kaip išsaugoti man šiuos daliklių skaičius antrame masyve.
Tomas PRO +4543
for (i=0; i<n;i++) dalkiek[i]= dalikliai(a[i]) Turi suprasti, jog funkcija Dalikliai(a[i]) grąžina tik skaičių, kurį dar reikia kažkam priskirti.