[C++] SPOJ - Szyfr Cezara
Ostatnio zmodyfikowano 2017-09-23 23:26
Khyho Temat założony przez niniejszego użytkownika |
[C++] SPOJ - Szyfr Cezara » 2017-09-23 00:17:21 Cześć, Próbuje rozwiązać zadanie ze SPOJa pt. Szyfr Cezara http://pl.spoj.com/problems/JSZYCER/ Poniżej podaje kod, który wydaje mi się, że działa (moje próby wskazują na to, ze tak) ale SPOJ nie chce go przyjąć. Może ktoś nakierować dlaczego? #include <iostream> using namespace std;
int main() { string text; getline( cin, text ); int x = text.length(); for( int i = 0; i <= x; i++ ) { if( text[ i ] == 32 ) continue; else if(( text[ i ] >= 65 ) &&( text[ i ] <= 87 ) ) { text[ i ] = text[ i ] + 3; } else if(( text[ i ] >= 88 ) &&( text[ i ] <= 90 ) ) { text[ i ] = text[ i ] - 23; } } cout << text << endl; return 0; }
|
|
pekfos |
» 2017-09-23 01:21:30 To słabo testujesz skoro przykład z zadania nie zadziała. |
|
maly7 |
» 2017-09-23 14:02:47 Jak wyżej, kod nawet nie działa poprawnie dla podanego przykładu. W przykładzie są dwie linie, jedna po drugiej. Twój kod po zaszyfrowaniu jednej linii się kończy, a powinien zaszyfrować wszystkie po kolei. To może okazać się pomocne: while( getline( cin, text ) ) |
|
Khyho Temat założony przez niniejszego użytkownika |
» 2017-09-23 23:26:58 Rzeczywiście, nie zwróciłem uwagi, że musimy mieć możliwość podania wielu linijek. Jak wstawiłem wszystko do pętli to jest ok :) |
|
« 1 » |