witam chce napisać program który bedzie wczytywał jakis tekst z .txt a nastepnie wyswietli ile jest w nim liczb. Do szukania cyfr jest funkcja isdigit wiec nie ma problemu, a szukanie liczb nie mam pojecia. Ma ktoś jakiś pomysł jak to zrobić (np. zeby były dwie cyfry pod rząd) ....?
0
1
Wyrażenia regularne.
Ewentualnie, jeśli nie masz ochoty spędzać czasu, żeby ogarnąć jak ich używać to po prostu dwie pętle: for po wszystkich znakach i jeśli isDigit zwraca true to w drugiej pętli iterujesz dopóki nie zwraca false.
1
http://www.cplusplus.com/reference/string/stod/
while (plik >> slowo)
{
try
{
double liczba = stod(slowo);
}
catch(invalid_argument ia)
{
// tu sobie pisze co chcesz zrobic jezeli to nei byla liczba, zapewne nic wiec moze byc puste
}
}
powyzej napisalem Ci maly pseudokod jak konwertowac do liczby
0
mam jeszcze pytanie czy komuś c++ na 64 bitowej wersji też tak zle chodzi ... z 32 nie było problemu a teraz mam prsty program: i nawet w tablice nie chce wczytać ...
#include <cstdlib>
#include <iostream>
#include <fstream>
using namespace std;
int main()
{
ifstream wejscie("txt.txt");
char c;
int i=0;
int tab[100];
while (!wejscie.eof())
{
wejscie.get(c);
tab[i]=c;
cout<<tab[i];
i++;
}
wejscie.close();
getchar();
return 0;
}