Joo elikkä tää on koulutehtävä, mutta en saa maikkaa kiinni ja en oikeasti teoriaa lukemallakaan tiedä, mitä tähän pitää tehdä:)!
Tehtävänäsi on tehdä ohjelma, joka lukee kokonaislukuja (int) tiedostosta ja tulostaa niiden summan näytölle. Näytölle tulostuksen tulee olla esimerkkitulostuksen mukainen. Tiedostossa jokainen luku on omalla rivillään. Lukujen summa kirjoitetaan samaan tiedostoon viimeiseksi luvuksi. Tiedoston nimi on luvut.txt. Jos tiedoston luvut.txt avaaminen ei onnistu, tulee ohjelman tulostaa näytölle teksti "Tiedoston avaaminen ei onnistunut!". Heti tämän jälkeen ohjelman suorituksen on loputtava.
Jos esimerkiksi tiedoston (luvut.txt) sisältö on aluksi seuraava:
1
2
, on se ohjelman suorittamisen jälkeen seuraava:
1
2
3
Tiedostossa aikaisemmin olleiden lukujen summa kirjoitetaan siis saman tiedoston viimeiseksi luvuksi.
Esimerkkitulostus:
Lukujen summa on 3
Aikaansaamani koodi tulostaa vain 1, 2 , mutta kuitenkin tuon Lukujen summa on 3!
#include
#include
#include
using namespace std;
int main()
{
ifstream tiedosto("luvut.txt");
if (!tiedosto.is_open()) {
cout << "Tiedoston avaaminen ei onnistunut!" << endl;
exit(0);
}
int luku, summa=0;
while (tiedosto >> luku >> summa) {
summa =luku;
cout << " Lukujen summa on " << summa << endl;
}
}
Tehtävänäsi on tehdä ohjelma, joka lukee kokonaislukuja (int) tiedostosta ja tulostaa niiden summan näytölle. Näytölle tulostuksen tulee olla esimerkkitulostuksen mukainen. Tiedostossa jokainen luku on omalla rivillään. Lukujen summa kirjoitetaan samaan tiedostoon viimeiseksi luvuksi. Tiedoston nimi on luvut.txt. Jos tiedoston luvut.txt avaaminen ei onnistu, tulee ohjelman tulostaa näytölle teksti "Tiedoston avaaminen ei onnistunut!". Heti tämän jälkeen ohjelman suorituksen on loputtava.
Jos esimerkiksi tiedoston (luvut.txt) sisältö on aluksi seuraava:
1
2
, on se ohjelman suorittamisen jälkeen seuraava:
1
2
3
Tiedostossa aikaisemmin olleiden lukujen summa kirjoitetaan siis saman tiedoston viimeiseksi luvuksi.
Esimerkkitulostus:
Lukujen summa on 3
Aikaansaamani koodi tulostaa vain 1, 2 , mutta kuitenkin tuon Lukujen summa on 3!
#include
#include
#include
using namespace std;
int main()
{
ifstream tiedosto("luvut.txt");
if (!tiedosto.is_open()) {
cout << "Tiedoston avaaminen ei onnistunut!" << endl;
exit(0);
}
int luku, summa=0;
while (tiedosto >> luku >> summa) {
summa =luku;
cout << " Lukujen summa on " << summa << endl;
}
}
Vastaukset 4
Vanhimmat
Jahas, jahas... Yrität kalastella vastauksia kun olet tunnilla vain pelaillut pelejä.. Kyllä minä tiedän tämän homman, kun olen toiminut opettaja yli kymmenisen vuotta.
jahas vain:D tämä on itseopiskelu kurssi, joten ei ole ollut tunnin tuntia. itse omaksi iloksi näitä teen.
yli kymmenen vuotta, etkä osaa auttaa kun joku kysyy?
oletkohan ihan oikealla alalla..
ota tuo ">> summa" pois.