54 / 68
Oct 2018

Witam serdecznie. Niestety mam swój kod który działa bez zarzutu a wyskakuje błąd od sędziego. Można mi jakoś pomóc czy jestem już beznadziejnym przypadkiem i nie warto :smiley: .

#include
using namespace std;

string zdanie;

int main()
{

while( getline(cin,zdanie))

{

for (int i=0;i<zdanie.length();i++)

if(zdanie[i]==' ')

 {
     zdanie.erase(i,1);

     zdanie[i]= toupper(zdanie[i]);
 }
    cout<<zdanie<<endl;

}
return 0;
}

Fakt, kod [chyba] działa bez zarzutu, ale nie daje prawidłowych odpowiedzi i od sędziego nie dostajesz błędu, tylko informacje, że odpowiedzi nie są zgodne z oczekiwanymi dla specyficznych testów. Np więcej niż jedna spacja itd. Mała litera na początku + spacje z przodu itd.

Nie marw się, nie jesteś najgorszy :wink: i to zależy tylko od Ciebie. Po prostu don’t give up .

PS
Też jestem beznadziejnym przypadkiem i przypadkiem pomagam zbierać kasę :wink: --> Jak zdobyć szacun na SPOJu

zalecaną metodą przekazywania kodu jest poprzez link do ideone.com9
przed napisanie pytania warto przeczytać wątek - może już jest rozwiązanie problemu

gdzieś powyżej znajdziesz test dla którego twój program źle działa

6 months later

Cześć, czy mógłby ktoś spojrzeć co jest nie tak z kodem:

1 month later

do swojego kodu dołączyłeś dane - a jedna z odpowiedzi jest błędna , która ? - odpowiedź znajdziesz w tym wątku

poprawilem duza litere na poczatku zdania i “kilka enterkow w in i out” i nadal cos jest zle

dziękuję bardzo. popracuję jeszcze nad kodem, aby go poprawić. Widzę już błąd

1 month later

Dzięki za tą podpowiedź bo myślałem, że sczeznę.
Jednak treść zadania wprowadza w błąd:
"…a każdy wyraz rozpoczyna się wielką literą."
Jak każdy to każdy więc wprowadziłem poprawkę aby na pewno pierwszy też.

2 years later

Zmienić treść polecenia zadania na bardziej zrozumiałą, bo ludzie tracą cały dzień, tylko dlatego że pierwsza literka w zdaniu jest duża, a powinna być mała nie wiedzieć czemu.

(…), a każdy wyraz rozpoczyna się wielką literą. Twoim zadaniem jest otrzymany tekst przerobić zgodnie z powyższym trendem.

więc wychodzi, że wyraz ‘’ a ‘’ na początku zdania musi być dużą literą.

‘‘Ponadto każdy wyraz poprzedzony na wejściu spacją zaczyna się wielką literą.’’

PONADTO nie kasuje pierwszego warunku tylko, jest dodatkowym warunkiem, a tak naprawdę tym samym co pierwszy warunek, więc jest niepotrzebny. Oczywistym przecież jest zakładając, że autor zadania umie pisać, iż wszystkie kolejne wyrazy są oddzielone spacją, żeby zdanie było czytelne. Skąd ma niby wynikać, że pierwsza litera w zdaniu, jeśli była mała ma być nadal mała?

usunąć drugi niepotrzebny warunek, dodać wzmiankę o pierwszej literce

Problem jest znany, ale wątpię, by komuś się go chciało naprawić. I może niech tak zostanie bo naprawienie banalnego błędu na minutę maks dwie po 14 latach byłoby hm… powiedzmy, że o czymś by świadczyło :wink:

W każdym razie owszem: ludzie na SPOJu działają za friko, a dorzuć do tego kwestie historyczne i bardzo małe zainteresowanie twórców SPOJa pl.spoj.com. Wiele zadań ma niejasną, a nawet konfundującą treść. Część jest nie do naprawienia, autorzy dawno znikli, brakuje obrazków z objaśnieniami, notatki z wykładów, na podstawie których należało coś rozwiązać znikły, … . Słowem: słabo.

Aby jakoś sobie poradzić z wadami SPOJa powstało m. in. forum. Kiedyś były jeszcze bezcenne komentarze pod zadaniami, ale z pewnych powodów zostały usunięte.

Przykładowe komentarze:

Tu uwaga, że pasuje to do: “Tekst wprowadzony z wejścia, ale bez spacji. Ponadto każdy wyraz poprzedzony na wejściu spacją zaczyna się wielką literą.”. W przypadku tego zadania opis Outputu jest jednak istotniejszy niż wstęp, który był chyba pisany mocno na siłę. Co jednak nie zmienia faktu, że jest on mylący.

Natomiast najważniejszy komentarz brzmi:

i nic na to nie poradzimy.

11 days later

Witam, zrobiłem research na temat tego programu, poprawiłem dużo błędów i mimo to nie działa. Czy ktoś jest w stanie pomóc? :confused:

Co za research? Przecież dwa a właściwe więcej postów wyżej masz całe rozprawy na temat tego zadania, które powinny rozwiać wszelkie wątpliwości.

Jeżeli nie, to … w tym zadaniu nie chodzi o spacje. Chodzi o specjalny sposób pisania sms’a. Dzisiaj to może jest abstrakcja. W takim razie, jak nazwiesz zmienną lub funkcje czy dowolny obiekt w swoim kodzie, gdy chcesz by nazwa składała się z więcej niż jednego wyrazu i była czytelna nie tylko dla kompilatora? Chodzi o ten specjalny sposób.

To nie do Ciebie, ale pisanie, że autor zadania nie umie pisać to gruby nietakt, że nie użyję bardziej dosadnego określenia. Dawniej doradzałem, aby delikwent sam został problemsetterem, ale dzisiaj nie wiem. To nie jest takie proste…

3 months later

Dla wielu danych wszystko pieknie dziala, nie wiem tylko dlaczego ostatnią linię inputa muszę zatwierdzać enterem. SPOJ odrzuca rozwiązanie.

a przeczytałeś treść zadania? Masz skrócić tekst, znak niedrukowalny nadal jest znakiem i zajmuje miejsce…