470 likes | 642 Views
Dlaczego nie powinniśmy kształcić kolejnych sekretarek ? Algorytmika jest dla każdego. Przemysław Szydzik { Wydawnictwo Szkolne PWN }. Co na temat programowania myślą uczniowie?. Co mówi Google?. http ://europa.eu/rapid/press-release_STAT-12-47_en.htm. Wieże Hanoi. Wieże Hanoi.
E N D
Dlaczego nie powinniśmy kształcić kolejnych sekretarek?Algorytmika jest dla każdego. Przemysław Szydzik { Wydawnictwo Szkolne PWN }
Wieże Hanoi /problem/ Przenieś wszystkie krążki (z zachowaniem ich układu) ze słupka A na słupek C, wykorzystując słupek pomocniczy B. Zasady: za jednym razem możesz przenieść tylko jeden krążek na dowolny krążek możesz położyć tylko krążek od niego mniejszy
WieżeHanoi - rozwiązanie POWTARZAJ: • przenieś najmniejszy z możliwych do przeniesienia krążków na kolejny słupek, zgodnie z ruchem wskazówek zegara • jeśli jest taka możliwość, wykonaj możliwe przeniesienie krążkiem, który nie jest najmniejszy DO MOMENTU, GDY: wszystkie krążki znajdą się na jednym słupku.
Zamiana wartości zmiennych Jaki jest pierwszy pomysł ucznia na zamianę wartości zmiennych x i y? • x=y; • y=x; Taka odpowiedź wydaje się naturalna, bo przecież właśnie taki (w dużym skrócie) cel chcemy osiągnąć.
Zamiana wartości zmiennych Jak wyjaśnić uczniowi, że takie działania nie dadzą poprawnego efektu?
Zamiana wartości zmiennych Poprosić, aby myślał jak komputer!
Zamiana wartości zmiennych Sprawdzenie dla dowolnych liczb, na przykład: x=5 i y=7. W ten sposób obie zmienne przechowują tę samą wartość. Nie o to nam jednak chodziło!
Zamiana wartości zmiennych – przykładowe rozwiązania • Wprowadzenie pomocniczej zmiennej: • bufor=x; • x=y; • y=bufor; • Manewrowanie dodawaniem: • x=x+y; • y=x-y; • x=x-y;
Programowanie od małego w CoderDojo Misja: Świat potrzebuje hakerów! http://coderdojo.org.pl/
Gra w Nimn /opis/ Ze zbioru n-kamieni gracze 1 i 2, począwszy od gracza 1, zabierają na przemian jeden lub dwa kamienie. Przegrywa ten, który zabiera ostatni kamień.
Gra w Nim5 g2 wygrał g1 1 g1 2 wygrał g2 g2 3 g1 wygrał g2 1 g1 g1 wygrał g2 1 5 g2 wygrał g1 2 g1 3 g2 g2 4 wygrał g1 1 g1 wygrał g2 2
Gra w Nim5 W grze z pięcioma kamieniami zawsze może wygrać gracz, który rozpoczyna – musi jednak rozpocząć od jednego kamienia.
Gra w Nim5 g2 wygrał g1 1 g1 2 wygrał g2 g2 3 g1 wygrał g2 1 g1 g1 wygrał g2 1 5 g2 wygrał g1 2 g1 3 g2 g2 4 wygrał g1 1 g1 wygrał g2 2
Gra w Nim5 A jeśli gracz 1 się pomyli i w pierwszym ruchu weźmie 2 kamienie?
Gra w Nim5 g2 1 g1 wygrał g1 2 g2 wygrał g2 3 g1 1 wygrał g2 g1 5 Gracz 1 przegra, jeśli gracz drugi weźmie 2 kamienie.
Ratowanie życia – algorytm resuscytacji Kluczowe pytanie: Jaki jest warunek zakończenia algorytmu? źródło: Podstawowe zabiegi resuscytacyjne u osób dorosłych oraz zastosowanie automatycznych defibrylatorów zewnętrznych (AED) Rudolph W. Koster, Michael A. Baubin, Leo L. Bossaert, Antonio Caballero, Pascal Cassan, Maaret Castrén, Cristina Granja, Anthony J. Handley, Koenraad G. Monsieurs, Gavin D. Perkins, Violetta Raffay, Claudio Sandron
Patriota w dobie iPadów Koduj dla Polski to inicjatywa Fundacji ePaństwo, której celem jest promocja "kodowania", "programowania" i "bycia developerem" jako nowoczesnych form patriotyzmu. http://epf.org.pl/kodujdlapolski/
Patriota w dobie iPadów DiscoverBPS Aplikacja łączy opinie, kryteria, dane szkoły oraz zaawansowane narzędzia by pomóc rodzicom wybrać szkołę dla swojego dziecka. • ADOPT-A-HYDRANT • Aplikacja, w oparciu o mapę miasta, umożliwia obywatelom Bostonu zgłoszenie lokalnym władzom zasypanych śniegiem hydrantów przeciwpożarowych. • CIVIC INSIGHTS • Aplikacja oferuje mieszkańcom najświeższe informacje o statusie zniszczonej nieruchomości w danym mieście. http://epf.org.pl/kodujdlapolski/
Sortowanie zbiorów liczbowych /problem/ Dany jest zbiór liczb naturalnych. Ustaw elementy tego zbioru w porządku niemalejącym.
Sortowanie bąbelkowe – rozwiązanie www.youtube.com/watch?v=lyZQPjUT5B4
Sortowanie przez kopcowanie – alternatywne rozwiązanie Kopiec – drzewo binarne, w którym wartość przechowywana w dowolnym węźle jest nie mniejsza niż wartość w węzłach potomków. Źródło: Informatyka nie tylko dla uczniów. Zakres rozszerzony, Wydawnictwo Szkolne PWN
Sortowanie przez kopcowanie – schemat postępowania Źródło: Informatyka nie tylko dla uczniów. Zakres rozszerzony, Wydawnictwo Szkolne PWN
Sortowanie przez kopcowanie – schemat postępowania Źródło: Informatyka nie tylko dla uczniów. Zakres rozszerzony, Wydawnictwo Szkolne PWN
Sortowanie przez kopcowanie – schemat postępowania Źródło: Informatyka nie tylko dla uczniów. Zakres rozszerzony, Wydawnictwo Szkolne PWN
Sortowanie przez kopcowanie – schemat postępowania Źródło: Informatyka nie tylko dla uczniów. Zakres rozszerzony, Wydawnictwo Szkolne PWN
Sortowanie przez kopcowanie – schemat postępowania Źródło: Informatyka nie tylko dla uczniów. Zakres rozszerzony, Wydawnictwo Szkolne PWN
Sortowanie przez kopcowanie – schemat postępowania Źródło: Informatyka nie tylko dla uczniów. Zakres rozszerzony, Wydawnictwo Szkolne PWN
Sortowanie przez kopcowanie – schemat postępowania Źródło: Informatyka nie tylko dla uczniów. Zakres rozszerzony, Wydawnictwo Szkolne PWN
Sortowanie przez kopcowanie – schemat postępowania Źródło: Informatyka nie tylko dla uczniów. Zakres rozszerzony, Wydawnictwo Szkolne PWN
Sortowanie przez kopcowanie – schemat postępowania Źródło: Informatyka nie tylko dla uczniów. Zakres rozszerzony, Wydawnictwo Szkolne PWN
Sortowanie przez kopcowanie – schemat postępowania Źródło: Informatyka nie tylko dla uczniów. Zakres rozszerzony, Wydawnictwo Szkolne PWN
Sortowanie przez kopcowanie – implementacja • intPrawy(int rodzic) { • return (2*rodzic + 1); • } • intLewy(int rodzic) { • return (2*rodzic); • } Źródło: Informatyka nie tylko dla uczniów. Zakres rozszerzony, Wydawnictwo Szkolne PWN
Sortowanie przez kopcowanie – implementacja • voidWykonajKopiec(int x) { • int pmax, l, r; • l= Lewy(x); • r= Prawy(x); • if(l <= rozmiar && t[l] > t[x]) • pmax= l; • else • pmax= x; • if(r <= rozmiar && t[r] > t[pmax]) • pmax= r; • if(pmax!= x) { • Zamien(x, pmax); • WykonajKopiec(pmax); • } • } Źródło: Informatyka nie tylko dla uczniów. Zakres rozszerzony, Wydawnictwo Szkolne PWN
Sortowanie przez kopcowanie – praca z uczniem Co zrobić z uczniami, którym trudno będzie napisać program?
Sortowanie przez kopcowanie – praca z uczniem Model pracy: pokaz z wykorzystaniem modelu samodzielna, wielokrotna analiza algorytmu samodzielne zastosowanie kolejnych kroków algorytmu sprawdzenie rozwiązania
Sortowanie przez kopcowanie – praca z uczniem Sprawdzenie Zastosowanie Pokaz i analiza Źródło: Informatyka nie tylko dla uczniów. Zakres rozszerzony, Wydawnictwo Szkolne PWN
Algorytmika z uczniem słabszym Wieże Hanoi Fraktale Źródło: Informatyka nie tylko dla uczniów. Zakres rozszerzony, Wydawnictwo Szkolne PWN
Algorytmika z uczniem słabszym Przynależność punktu do obszaru Źródło: Informatyka nie tylko dla uczniów. Zakres rozszerzony, Wydawnictwo Szkolne PWN
Kursy programowania online • http://www.codecademy.com/ • http://www.learnstreet.com • http://tryruby.org/ • https://www.codeschool.com/ • https://dash.generalassemb.ly/
To jest ostatni slajd if(nr_slajdu = ostatni) print ”Dziękuję za uwagę!”; <a href="mailto:przemyslaw.szydzik@wszpwn.com.pl">Mail</a>