Kažko panašaus ir tikėjausi :D . Taigi, turi kintamąjį Pinigai. Koks yra jo tipas? Reikia pasižiūrėti ten kur yra jo deklaracija. O ji yra čia: int Pinigai, n, a, b; Kaip matai, kintamasis Pinigai yra int tipo. Tai, kad tu prie kintamojo parašei [], jo tipo iš int į int[] tikrai nepakeičia :D . Ir be to, funkcija reikalauja double[], o ne int[]. Taigi, deklaruok kintamąjį Pinigai kaip double masyvą (double Pinigai[100]) ir veiks. Na ir geriausia pasiskaityk apie masyvus prieš juos naudodamas, nes matosi, kad tau tai nauja :). Beje, kitą kartą kodą įterpk tarp code tag.
andriusvv8 (+36)
Dėkui, viskas pavyko :). Šiandien paieškosiu internete knygų lt/en, nes šiaip trūksta labai medžiagos, iš ko dabar mokausi, tai pagrinde uždaviniai ir labai labai mažai teorijos :).
andriusvv8 (+36)
Vienas smulkus klausimas, jei dar nespėjau užknist :D Parašius kodą, gaunu atsakymą 1 2 3 4 5 0 0. Būtent šitų nulių neturi būti, taigi kodėl programa kažką dar papildomai "skaičiuoja" ? Panaši situacija būdavo spausdinant atsakymą į atskirą lapą - gauta reikšmė pasirašo dukart. #include <iostream> #include <fstream> #include <iomanip>
using namespace std;
const char FN[] = "duom.txt"; const int Cilgis = 10; int M[Cilgis];
void Pildyti(const char FN[], int&n, int M[]);
int main() { int n; Pildyti(FN,n,M); for(int i = 0; i <= n; i++) { cout << M[i] <<" "; } return 0; } void Pildyti(const char FN[], int&n, int M[]) { n = 0; ifstream fd(FN); while(!fd.eof()) { fd >> M[n]; n++; } fd.close(); }
"duom.txt" duomenys: 1 2 3 4 5
pakeista prieš 11 m
almostlow (+3116)
Nu man tavo programa dameta viena nulį, o tai yra dėl to kad nuskaitai viena reikšmę per daug. for turi eiti iki n neitraukiant n į įteraciją. ty. for(int i=0;i<n;i++).