[C++] Znalezienie pozycji ostatniego niezerowego znaku
Ostatnio zmodyfikowano 2012-11-07 19:23
amu Temat założony przez niniejszego użytkownika |
[C++] Znalezienie pozycji ostatniego niezerowego znaku » 2012-11-07 18:54:56 Potrzebuję napisać program, który sam znajdzie pozycję ostatniej litery zdania, które wczytane od użytkownika zostało zapisane w tablicy char. Do tej pory napisałem to: for( i = 0; i < 100; i++ ) { anagram[ i ] = NULL; originalna[ i ] = NULL; }
cin.ignore(); printf( "Podaj dowolne zdanie: " ); cin.getline( anagram, 100 );
int m; for( i = 100; i >= 0; i-- ) { if( anagram[ i ] != NULL ) { cout << i << " "; m = i; break; } } w tej sytuacji program wyświetla jedynie liczbę '100'. Natomiast przez przypadek zamiast polecenia break umieściłem tam continue i zwrócił znów 100, po czym kolejno 11, 10, 9, ..., 0. Gdzie liczba 11 jest indeksem ostatniej litery w tablicy. Proszę o pomoc. Wiem, jak to prosto zrobić w stringach, ale tyle czasu poświęciłem już przy tej wersji, że chciałbym przynajmniej usłyszeć, że "sory, ale to nie możliwe." |
|
Savail |
» 2012-11-07 19:13:03 Jeśli utworzyłeś tablicę typu char 100-elementową to powinieneś zaczynać tą drugą pętlę od i = 99 |
|
amu Temat założony przez niniejszego użytkownika |
» 2012-11-07 19:23:43 to było zbyt proste, a jednak. Dziękuję za pomoc. |
|
« 1 » |