Problem z wprowadzanym tekstem w konsoli, pytanie o miekkie znaki
Ostatnio zmodyfikowano 2020-06-14 23:10
skupi967 Temat założony przez niniejszego użytkownika |
» 2020-06-14 20:16:45 Nie wiem, siedze juz kilka godzin i nic nie zrobilem, mecze sie z wyodrebnieniem zawartosci pomiedzy przecinkami string naszTekst = "elvis presly, 1479, 972, 162 52";
int a1 = 0, a2, a3;
size_t znalezionaPozycja = naszTekst.find( ',' );
if( znalezionaPozycja != string::npos ) { do { cout << "Znak zostal odnaleziony na pozycji " << znalezionaPozycja << endl; a2 = znalezionaPozycja - a1; cout << "test" << a2 << endl; znalezionaPozycja = naszTekst.find( ',', znalezionaPozycja + 1 ); a3 = znalezionaPozycja - a2; cout << "Roznica: " << a3 << endl; } while( znalezionaPozycja != string::npos ); }
I na samym koncu Roznica wychodzi jakas ujemna. Nie umiem w ogole podzielic tego na te stringi tak jak Ty pisales... Chce obliczac roznice pomiedzy przecinkami zeby wiedziec ile znakow ma zapisywac do stringa przy uzyciu asd5 = naszTekst.substr( tutaj poczatek i to jest latwe, tutaj roznice pomiedzy przecinkami ); No ale roznica mi cos na koncu ujemna wychodzi |
|
pekfos |
» 2020-06-14 20:29:12 Ostatni wynik wyszukiwania nie jest poprawną liczbą do obliczeń. |
|
skupi967 Temat założony przez niniejszego użytkownika |
» 2020-06-14 21:31:05 Zrobilem to ze tak powiem na 'sztywno'... nie chcialem tak robic od poczatku i chcialem to jakos bardziej 'zautomatyzowac' no ale jak nie umialem to zrobilem po prostu zeby dzialalo #include <iostream> #include <string>
using namespace std;
int main() { string str1, str2; string naszTekst = "elvis presly, 1479, 972, 162, 52"; int tab[ 4 ], i = 0; size_t znalezionaPozycja = naszTekst.find( ',' ); if( znalezionaPozycja != string::npos ) { do { tab[ i ] = znalezionaPozycja; i++; znalezionaPozycja = naszTekst.find( ',', znalezionaPozycja + 1 ); } while( znalezionaPozycja != string::npos ); } str1 = naszTekst.substr( 0, tab[ 0 ] ); str2 = naszTekst.substr( tab[ 3 ] + 2 ); cout << endl << endl << str1 << endl << str2 << endl; return 0; }
O to Ci chodzilo? Mnie wlasciwie interesuje tekst do pierwszego przecinka i to co jest za ostatnim, reszta nie. Jesli tak to pytanie w jaki sposob mialbym to segregowac majac tak na prawde dwa osobne stringi?:P. Jeden z tekstem drugi z liczba |
|
pekfos |
» 2020-06-14 21:54:18 |
|
skupi967 Temat założony przez niniejszego użytkownika |
» 2020-06-14 23:10:23 Dobra to na nic. Najwyzej obejdzie sie bez sortowania.. |
|
1 2 « 3 » |