2013-08-09 16 views
6

Niedługo poprowadzę Pythona dla 9 i 10 studentów i pomyślę, że byłoby fajnie robić z nimi wyzwania związane z projektem Eulera. Pierwszy problem wydaje się być wykonalny, ale myślę, że niektórzy z pozostałych mogą być nieco nad głową, lub nie wymagają wystarczającego programowania.Łatwe rozwiązywanie problemów dla dzieci w języku Python

Jeśli ktoś ma miejsce, aby znaleźć jakieś łatwe problemy z programowaniem lub może o czymś pomyśleć, proszę, daj mi znać.

edytuj: Przez lata 9 i 10 mam na myśli, że byli w szkole przez 9 lub 10 lat. A więc około 13, 14 i 15 wieku. Przepraszam za zamieszanie!

+1

Niektóre z nich są zabawne http://inventwithpython.com/hacking/chapters/ –

+1

Nienawidzę tego mówić, ale myślę, że prawie wszystkie problemy z programowaniem są nad głowami 9-10 latków. – orlp

+3

@ noccracker: To brzmi jak opinia 50 lat temu, że języki obce powinny być nauczane dorosłych, jak to ma miejsce ponad głowami 9-10 lat. Teraz zaczynasz uczyć języków w szkole przedszkolnej, ponieważ jest to ponad kogos starszego niż 10 lat ... – Hyperboreus

Odpowiedz

2

Och, pamiętam coś, czego uczono mnie w szkole! Mój nauczyciel IT stworzył klasę w pythonie, której atrybuty stworzyły sekwencję matematyczną. Celem było odgadnięcie wzoru za tą sekwencją za pomocą tylko python. Oczywiście nie można było spojrzeć na plik z klasą, a jedynie zaimportować go w pythonie. Może jest tu więcej matematyki niż programowania, ale aby to rozwiązać, uczniowie będą musieli nauczyć się, jak zmienne, przestrzenie nazw (aby znaleźć zmienne), pętle (do drukowania tych zmiennych) i klasy (przechowujące te zmienne) działają w pythonie, a to jest mniej więcej wszystko, co musisz wiedzieć na początku, moim zdaniem.

Ah, dobre czasy. Graliśmy również w "chowanego" na lekcjach informatyki: nauczyciel ukrył gdzieś plik i zostawił rozrzucone wskazówki, a my musieliśmy znaleźć ten plik używając środowiska tekstowego na Linuksie :)

1

Zdobądź prawy numer:

Program wybiera losową wartość między 1 a 100, a następnie musisz zgadywać. Mówi ci, czy jesteś powyżej, czy poniżej.

+0

Świetny pomysł! Będzie wyzywająco mieć to w lekcji gdzieś. Jest wspaniale, ponieważ prawdopodobnie mogą to sami wypracować, biorąc pod uwagę właściwy punkt wyjścia! – ahansen

1

Mój pierwszy kontakt naukowy z programowaniem naprawdę zostawił na mnie ślad;) Nauczyciel dostarczył nam gui zawierające rodzaj szachownicowych 2-d szachowych (powiedzmy, że było to 20x20 komórek). Jedna z komórek zawierała "robota", a interfejs programowania w zasadzie wyeksponował 3 metody: przesuń się do przodu, skręć w lewo i sprawdź, czy komórka znajdująca się bezpośrednio przed robotem jest ścianą lub otwartą przestrzenią. Następnie gra miała na celu "zaprogramowanie robota" (nauczanie podstawowej logiki i konstrukcji pętli) w celu wykonywania różnych zadań, takich jak przechodzenie przez każdą komórkę na planszy. Później do interfejsu dodano metody (do oryginalnych 3 metod) i "obiekty" (nie OOP, ale .. inne stany, które komórki mogły zajmować niż tylko ściany lub puste) zostały dodane do gry. Ostatecznie celem było na przykład, aby robot "podniósł" części samochodowe i doprowadził je do "fabryki samochodów". To było bardzo miłe IMHO, aby postrzegać programowanie jako grę z "wynikami" (najmniejsza ilość komórek potrzebnych do osiągnięcia celu w tym przypadku) i naprawdę promuję gamifikację http://en.wikipedia.org/wiki/Gamification w każdym środowisku szkolnym.

Cheers

+0

Wow, świetny pomysł! Zrobię dla nich coś takiego, jeśli będę miał czas. – ahansen

1

Nie wiem, jak długo trzeba uczyć, ale Udacity's cs101 class ma kilka bardzo ciekawych problemów i zaczyna się od dość prostym poziomie. Kurs jest bezpłatny i niektóre z problemów mogą okazać się przydatne, jeśli nie masz czasu na wszystko.

Wreszcie, jeśli zabraknie Ci pomysłów na znaczące projekty, które są wystarczająco łatwe/wystarczająco szybkie w Pythonie lub zdecydujesz się znaleźć coś łatwiejszego dla części klasy, następnie rozważ użycie Scratch, jest to fajny wizualny język programowania od MIT, który pozwala możesz użyć konstruktów takich jak zmienne, pętle, warunki itd. bez obawy o składnię. To sprawia, że ​​tworzenie prostych gier/animacji jest łatwe i przyjemne.

+0

Dziękuję bardzo, zajrzę do tych kursów. Scratch jest świetną opcją, ale niestety nasze lekcje muszą być w Pythonie. Może zobaczymy, czy możemy go użyć w przyszłych latach! – ahansen

Powiązane problemy