Zastanawiam się, czy na prawdę musimy omawiać dfs i bfs, podczas gdy znajomość tych algorytmów była niezbędna do zrobienia pracowni (która była przed wykładem).
Nie mówię że wykład ma być na poziomie trudności JFiZO, ale rozbieżność w zaawansowaniu pracowni i wykładu jest dramatyczna.
Przynajmniej aktualnie.
Trochę prawda… Będąc np. po AISD to chodzenie na wykłady to strata czasu…
(Nie jestem zapisana na przedmiot, nie robiłam pracowni i nie byłam na wykładzie)
Przypuszczenie: skoro uczelnia zaprosiła na wykład uczniów szkół średnich, może prowadzący chciał zrobić wykład bardziej dla nich-friendly?
Podobno to nie miało zmieniać trudności wykładu.
Domyślam się, że skoro w wymaganiach tego przedmiotu nie było dyskretnej ani aisd, to prowadzący nie mógł założyć, że wszyscy wiedzą co to bfs i dfs. Poza tym pierwszą listę można oddawać za dwa tygodnie więc z wykładu można jeszcze skorzystać.
Ale BFS i DFS były na WDI.
W sumie racja
Jeszcze tydzień temu mogłem przepuścić ten wykład, bo pierwszy i wprowadzający itp, ale dziś to już trochę przegiął - ledwo wytrzymałem do końca
Chciałbym dodać, że większość licealistów na wykładzie to uczniowie XIV LO, dla których ta tematyka również jest już znana.
Dziękuję za zwrócenie uwagi. Cóż, postaram się jakoś bardziej zagęścić kolejne wykłady (a w kolejnej edycji zmieścić materiał z czterech pierwszych godzin w istotnie krótszym czasie).
BFS i DFS są częścią sztucznej inteligencji i jako takie moim zdaniem na wykładzie przywołane być powinny (i generalnie w różnych wariantach wykładów o AI na różnych uczelniach są), ale rzeczywiście, przypomnienie to mogłoby zakładać większą wiedzę słuchaczy.
Założenia odnośnie pierwszej listy były takie, że dla większości uczestników powinna być ona rozwiązywalna bez żadnej wiedzy z wykładu.
pozdrawiam
PR
A ja wrażę swoją opinię na temat sprawdzaczki.
- Jest ona nieudokumentowana. To, że dla zadania n należy czytać z pliku “zadn_input.txt” i pisać do “zadn_output.txt” nie było nigdzie napisane. A moim zdaniem być powinno. Mam wrażenie, że na zajęciach ludzie zamiast faktycznie pisać/poprawiać kod, analizowali kod sprawdzaczki
- Zadanie 2 wymaga pliku “words_for_ai1.txt.gz”, który na sprawdzaczce nazwany jest “zad2_words.txt.gz”
- Argumentem za sprawdzaczką było: “można pisać w dowolnym języku”. A ile ludzi faktycznie katuje się w c++?
Ktoś wykonał pracę, aby napisać tę sprawadzaczkę, a my dodatkowo się napracować, aby przystosować programy tak, aby pod sprawdzaczką działały. A dlaczego nie korzystamy z gotowych narzędzi: gtest, python doctest, …?
Uważam, że wszystko szło by sprawnie, gdybyśmy otrzymywali testy w “pseudokodzie” i implementowali je samodzielnie w ulubionym języku. Albo: otrzymywali gotowe unit testy dla pythona (myślę, że 3/4 ludzi w klepie w pythonie. Jeżeli ktoś ma czas klepać w c++, to będzie też miał czas przeklepać testy na gtest)
IMO sprawdzaczka powinna używać standardowego wejścia/wyjścia, a nie plików. A argument za aktualnym rozwiązaniem jest taki, że Windows nie radzi sobie z UTF-8, co powodowało, że sprawdzaczka, operująca na STDIO, w zadaniu 2 nie działała na Windowsie. Wybór języka nie ma znaczenia w żadnym przypadku.
Zatem przy podpunkcie 3 powinieneś napisać:
Ile ludzi faktycznie katuje się z Windowsem ?
Ja na przykład “katuję się Windowsem” (póki mogę). Jeśli rzeczywiście sprawdzaczka działałby tylko na Linuxie, to trudno, przełączałbym się na jakieś Ubuntu, czy też odpalał testy na pracownianych komputerach.
Z tego co testowałem, to Windows rzeczywiście nie radzi sobie z UTF-8, ale Linuxowy Bash na Windowsie 10 już wie co to UTF-8 i zadanie 2. działa dobrze
Ja też robię pod Windowsem, ale się “nie katuję”. Mi wszystko działa dobrze, wczytuję Pana Tadeusza w taki sposób:
open(‘pan_tadeusz_bez_spacji.txt’, encoding = ‘utf8’)
Jak dla mnie sprawdzaczka jest ok, wystarczy napisać jakich plików należy używać. To że nie narzuca języka programowania jest miłym gestem w stronę studentów (BTW istnieją jeszcze inne języki niż python i C++).
No, sprawdzaczka jest spoko. Jedyną jej wadą było wrzucenie jej godzinę przed zajęciami i sprzeczność ze specyfikacją zadania.
Właśnie dlatego działa. Gdybyś spróbował używać STDIO to by nie działało na Windowsie.
Jest nowa lista na pracownie i nowa “stara” sprawdzaczka.
UWAGA: Tym razem we wszystkich testach mamy pliki o nazwie zad_{input,output}.txt - czyli podobnie ale bez konkretnych numerów.
Dla osób które nie korzystały ze sprawdzaczki:
Wasz program powinien wczytywać dane z pliku zad_input.txt
i zapisywać rozwiązanie do zad_output.txt
Uruchomienie sprawdzaczki:
python validator.py [zad1] [rozwiazanie]
Np.:
python validator.py zad2 python zad2.py
python validator.py zad4 foo
Sprawdzaczka trafiła na github, więc mogą Państwo tam dodawać funkcjonalności i poprawiać (albo choć zgłaszać błędy). Na razie dodałem opcję wymuszania STDIO, domyślnie do końca semestru będziemy korzystać z plików.