Większość studentów informatyki, które znam, uważa naukę programowania za najbardziej bolesną i demoralizującą część ich edukacji. Dlatego trzymałbym się z dala od wszystkiego , co ma związek z samym programowaniem. Jak już zauważył Scphantm , prawdopodobnie nie będziesz miał na to czasu.
To, czego szukasz, to dwugodzinne ćwiczenie, które spełnia dwa cele:
- To wystarczająco ekscytujące, aby zainteresować absolwentów szkół średnich przez dwie godziny,
- To pozwoli im rzucić okiem na to, czym jest informatyka i mam nadzieję, że zainteresuje ich to.
Pierwszy cel jest dość niezależny od tego, co faktycznie pokażesz, i ma o wiele więcej wspólnego z byciem dobrym nauczycielem / prezenterem. Dobra praktyka dydaktyczna, tj. Utrzymywanie odbiorców na palcach, pozwalanie im na próbowanie małych rzeczy w grupach, zapewnianie im oddechu co 15 minut i tak dalej.
Drugi cel jest nieco trudny, a moim zdaniem najlepiej tutaj jest rozwiązać problem, który można wyjaśnić na podstawie ich obecnej wiedzy, pokazać, jak można opisać rozwiązanie algorytmicznie, a następnie pokazać, w jaki sposób można je przeanalizować i ulepszone.
Dobrym przykładem jest problem najkrótszej ścieżki na wykresach, zwany także systemem nawigacji GPS. Nie wymaga wyjaśnienia. Możesz dać im małą mapę z narysowanymi wagami / długością krawędzi i wiązką kredek, aby faktycznie wykonać algorytm podczas jego opisywania.
Następnie możesz rozpocząć dyskusję na temat znalezienia najkrótszej ścieżki itd. Pozwól im spróbować sformułować ją jako algorytm itp. Następnie opisz algorytm Dijkstry , pozwalając im pokolorować węzły jako odwiedzone , wstępne i nie odwiedzone zestawy. Bam Masz algorytm!
Jeśli nadal masz czas, możesz wyjaśnić niektóre szczegóły, tj. Rzeczy, które bierzemy za pewnik, takie jak znalezienie minimum w zbiorze niepewnych węzłów. Jeśli dojdziesz tak daleko, możesz pokazać różnicę między wyszukiwaniem liniowym a stertą, a jako bonus możesz wprowadzić matematyczną adnotację.O
Powiedziawszy to wszystko, to jest tak daleko, jak bym poszedł. Trzymaj się z dala od całej dyskusji vs. z dziesięciostopowym kijem. Chociaż większość informatyków uważa to za fascynujące, większość licealistów nie. Znam to z doświadczenia. Moim zdaniem kluczem jest zacząć od problemu, który mogą zrozumieć lub odnieść się do niego, i zabrać go stamtąd bez potrzeby częstego przedstawiania.P.N.P.