mam pytanie, czy gdzieś w poprzednich lekcjach wprowadzano już if? Nie widziałem i albo błąd codegym dając zadanie które da się rozwiązać z wiedzą poza lekcyjną albo ja nie mogłem znaleść
Czemu w zadaniu z tabliczką mnożenia w tekście opisowym zadania piszecie "Twoja tajna broń: pętla while." a sami w rozwiązaniu korzystacie z pętli "if"?
W zadaniu "Eskejpowanie znaków" podałam idealnie taki sam kod, jak w rozwiązaniu, które można pobrać.
Niestety program cały zwraca mi błąd, proszę do diabła naprawić te programy, ponieważ to już któryś raz jak poprawne rozwiązanie nie przechodzi! To irytujące!
Tutaj mój kod, żeby nie było żadnych wątpliwości:
System.out.println("To jest ścieżka Windows:\"C:\\Program Files\\Java\\jdk1.8.0_172\\bin\"");
System.out.println("To jest string Java:\\\"C:\\\\Program Files\\\\Java\\\\jdk1.8.0_172\\\\bin\\\"");
Dopatrzyłam się, że w obu moich zapisach nie dałam spacji po dwukropku (po słowach "Windows" i "Java").
No sorry...ale biorąc pod uwagę, że spacja nie została zdefiniowana jako jeden z koniecznych warunków, a w różnych zadaniach czasem tekst pisany jest sklejony (ja wtedy napisałam z spacją i miałam błąd), czasem z spacją, to teraz uczestnik ma się domyślać czy to przypadek, czy ta spacja ma znaczenie?
Innym razem zadanie mi nie przeszło bo ciąg String miał u mnie polskie znaki, a w innym zadaniu już trzeba było użyć polskich znaków. Raz jest tak, a raz tak i to bez żadnego wytłumaczenia czy uzasadnienia. Taki brak konsekwencji jest bardzo mylący i wiele komplikuje.
Jeśli coś ma znaczenie, jak spacja lub jej brak, to taka informacja powinna zostać wyszczególniona.
Zadania sprawdza też program napisany przez twórców, więc skoro Twój tekst ma być taki sam (identyczny) jak w treści zadania to nie dziw się, że jak nie masz spacji to wywala Ci błąd. Spacja to też znak. Polecam dziesięć razy sprawdzić.
PS: Nie mówię, że twórcy kursu wszystko zrobili idealnie i nie mają błędów w swoim kursie, ale tutaj akurat wszystko jest ok.
Mam nadzieję, że nie odbierzesz mojej odpowiedzi jako ataku na Ciebie. Wszystkiego dobrego! :)
Naszym zadaniem także jest wyłapywanie takich drobnych szczegółów w trakcie pisania zadań wlaśnie. Spacja nie jest byle spacją xd. Ma swoje miejsce w zdaniu jak każdy inny znak. Im szybciej wejdzie nam w nawyk dbanie o każdy element, tym lepiej dla nas. Dobrze wg mnie, że nie mamy podanej całości na talerzu.
Skąd nagle pętla for o której nie było ani słowa? Mam się domyślać?
Zrobiłem tabliczkę, ale swoją pokrętną metodą. Dopiero gdy zobaczyłem proponowane rozwiązanie zacząłem szukać w internetach na czym polega pętla for.
Mnie też to zastanawia. W prawdzie używałem już ich wcześniej tutaj, w innych zadaniach pojawiających się do tej pory, ale nie zauważyłem nigdzie wprowadzenia do tego.
Zadanie z kolorami tęczy wykonałem ale metodą prób i błędów plus szukanie podpowiedzi. Nie rozumiem dlaczego to zadziałało. Do tej pory myślałem, że aby metoda zadziałała to trzeba ją wywołać? A tutaj zadziałało to bez wywołania? Bo jak dobrze rozumiem mamy tu klasę Czerwony, w której to klasie znajduje się metoda Czerwony, która drukuje "Czerwony". (Uff - czy tylko ja mam skojarzenia z "Majorem Majorem Majorem" z paragrafu 22?). To jakby mieć materiał wybuchowy, mieć podłączone przewody i NIE mieć detonatora. Zadaniem było podpiąć(napisać) detonator. Po jego podpięciu (czyli napisaniu obiektu) samo wybuchło - BEZ PODANIA ISKRY. Pirotechnicy mówią że to niemożliwe a programiści że to normalne.
Póki co nie rozumiem mechanizmu tego zadziałania ale może zrozumienie przyjdzie później.
Zwróć uwagę że w tym daniu wywołujesz klasę nie metodę. Czerwony czerwony = new Czerwony(); tak wywołujesz KLASE nie METODE. Metodę wywołujesz Czerwony();
Trochę zawile to tłumaczysz, Mateusz. Nie wiem, czy w pełni zgodnie z nazewnictwem w Javie (mam wcześniejsze doświadczenia z Pythonem, C++, obecnie pracuję jako frontend dev) to opisuję, ale tak: instancjonowanie obiektu [z klasy] zachodzi przez odwołanie się do konstruktora tej klasy, a więc jej metody. Pierwsza podstawowa metoda klasy to właśnie konstruktor.
W tym przypadku (tego zadania) do konstruktora tych klas kolorów została dodana instrukcja wyświetlenia napisu. Na tym właśnie polegało to zadanie. Żeby to zobaczyć. Że konstruktor to metoda specjalna, ale wciąż metoda klasy.
GO TO FULL VERSION