Pereiti prie turinio

Rekomenduojami pranešimai

Kaip ant C++ skaitant iš failo, man skaičiuotu eilutė ir po to peršoktų į kitą eilutę? (google bandžiau, bet ten visokie sudėtingi būdai, tikiuosi yra daug paprastesnis)

Eilutes nori suskaičiuoti?

 

Pseudocode:

int main(void){
   unsigned int lines;
   char* file;
   file = &readfile(); //Skaitom failą.
   while(*file != '\0'){
       if(*file == '\n'){
           lines++;
       }
       file++;
   }
return 0;
}

Redagavo nagisa
Nuoroda į pranešimą
Dalintis kituose puslapiuose

realiai jei skaitai is .txt failo naudojant iostream tai kiekviena karta issaukus skaitymo funkcija ji automatiskai persoka per viena eilute i prieki, o del eiluciu skaiciaus tai isivedus bet koki kintamaji ir pridedant prie jo +1 po kiekvieno ivykdyto ciklo turesi eiluciu skaiciu

Nuoroda į pranešimą
Dalintis kituose puslapiuose

realiai jei skaitai is .txt failo naudojant iostream tai kiekviena karta issaukus skaitymo funkcija ji automatiskai persoka per viena eilute i prieki, o del eiluciu skaiciaus tai isivedus bet koki kintamaji ir pridedant prie jo +1 po kiekvieno ivykdyto ciklo turesi eiluciu skaiciu

 

Man reikia, kad

 

1 2 3

3 3 3

 

išvestu tų skaičių sumą

6

9

Nuoroda į pranešimą
Dalintis kituose puslapiuose
  • po 3 savaičių...

Gal galima plačiau kaip? (eilutė žinau kaip nuskaityti, bet kaip atskirti ten pnš. ir t.t.)

#include <sstream>
#include <iostream>
int main()
{
string eilute="1 2 3"; // pvz. eilute nuskaityta is failo

stringstream ss(eilute);

int suma=0;
int skc;

while(ss.good())
 {
     ss >>skc;  // nuskaityti viena skaiciu is eilutes
     suma+=skc;
 }
cout <<suma; // 6
}

Nuoroda į pranešimą
Dalintis kituose puslapiuose

#include <sstream>
#include <iostream>
int main()
{
string eilute="1 2 3"; // pvz. eilute nuskaityta is failo

stringstream ss(eilute);

int suma=0;
int skc;

while(ss.good())
 {
     ss >>skc;  // nuskaityti viena skaiciu is eilutes
     suma+=skc;
 }
cout <<suma; // 6
}

 

biški šito nesupratau:

string eilute="1 2 3"; // pvz. eilute nuskaityta is failo

 

O taip kaip padaryti, kad skaitau iš failo (ten su ifstream ar pnš.) :huh:

Nuoroda į pranešimą
Dalintis kituose puslapiuose

biški šito nesupratau:

string eilute="1 2 3"; // pvz. eilute nuskaityta is failo

 

O taip kaip padaryti, kad skaitau iš failo (ten su ifstream ar pnš.) :huh:

fstream file("asdf.ghj");

string eilute;
while(file.good())
 {
    getline(file,eilute); // nuskaityti 1 eilute is failo

    // cia darai ka tau reikia su teksto eilute

 }

Nuoroda į pranešimą
Dalintis kituose puslapiuose

O tai jei turiu tokius skaičius

1 2 3

5 4 5

 

Skaičiuoja kažkaip ne taip

string eilute;
while(file.good())
 {
   getline(file,eilute); // nuskaityti 1 eilute is failo

   stringstream ss(eilute);

   int suma=0;
   int skc=0;

   while(ss.good())
     {
         ss >>skc;  // nuskaityti viena skaiciu is eilutes
         suma+=skc;
     }
   cout <<suma<<endl;

 }

Nuoroda į pranešimą
Dalintis kituose puslapiuose

Prisijunkite prie diskusijos

Jūs galite rašyti dabar, o registruotis vėliau. Jeigu turite paskyrą, prisijunkite dabar, kad rašytumėte iš savo paskyros.

Svečias
Parašykite atsakymą...

×   Įdėta kaip raiškusis tekstas.   Atkurti formatavimą

  Only 75 emoji are allowed.

×   Nuorodos turinys įdėtas automatiškai.   Rodyti kaip įprastą nuorodą

×   Jūsų anksčiau įrašytas turinys buvo atkurtas.   Išvalyti redaktorių

×   You cannot paste images directly. Upload or insert images from URL.

Įkraunama...
  • Dabar naršo   0 narių

    Nei vienas registruotas narys šiuo metu nežiūri šio puslapio.

×
×
  • Pasirinkite naujai kuriamo turinio tipą...