DLACZEGO NIE POWINNIŚMY KSZTAŁCIĆ KOLEJNYCH SEKRETAREK ?

44
DLACZEGO NIE POWINNIŚMY KSZTAŁCIĆ KOLEJNYCH SEKRETAREK? Algorytmika jest dla każdego! Przemysław Szydzik Redaktor publikacji informatycznych Wydawnictwo Szkolne PWN [email protected]

description

DLACZEGO NIE POWINNIŚMY KSZTAŁCIĆ KOLEJNYCH SEKRETAREK ?. Algorytmika jest dla każdego!. Przemysław Szydzik Redaktor publikacji informatycznych Wydawnictwo Szkolne PWN [email protected]. Co mówi Google?. http://europa.eu/rapid/press-release_STAT-12-47_en.htm. Wieże Hanoi. - PowerPoint PPT Presentation

Transcript of DLACZEGO NIE POWINNIŚMY KSZTAŁCIĆ KOLEJNYCH SEKRETAREK ?

Page 1: DLACZEGO NIE POWINNIŚMY KSZTAŁCIĆ KOLEJNYCH SEKRETAREK ?

DLACZEGO NIE POWINNIŚMY KSZTAŁCIĆ KOLEJNYCH SEKRETAREK?Algorytmika jest dla każdego!

Przemysław SzydzikRedaktor publikacji informatycznychWydawnictwo Szkolne [email protected]

Page 2: DLACZEGO NIE POWINNIŚMY KSZTAŁCIĆ KOLEJNYCH SEKRETAREK ?

Co mówi Google?

Page 3: DLACZEGO NIE POWINNIŚMY KSZTAŁCIĆ KOLEJNYCH SEKRETAREK ?

http://europa.eu/rapid/press-release_STAT-12-47_en.htm

Page 4: DLACZEGO NIE POWINNIŚMY KSZTAŁCIĆ KOLEJNYCH SEKRETAREK ?

Wieże Hanoi

// problemPrzenieś 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

Page 5: DLACZEGO NIE POWINNIŚMY KSZTAŁCIĆ KOLEJNYCH SEKRETAREK ?

Wieże Hanoi - 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.

Page 6: DLACZEGO NIE POWINNIŚMY KSZTAŁCIĆ KOLEJNYCH SEKRETAREK ?

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ąć.

Page 7: DLACZEGO NIE POWINNIŚMY KSZTAŁCIĆ KOLEJNYCH SEKRETAREK ?

Zamiana wartości zmiennych

Jak wyjaśnić uczniowi, że takie działania nie dadzą poprawnego efektu?

Poprosić, aby myślał jak komputer!

Page 8: DLACZEGO NIE POWINNIŚMY KSZTAŁCIĆ KOLEJNYCH SEKRETAREK ?

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!

Kod Efekt

x=5; y=7; Przypisanie zmiennej x wartości 5,a zmiennej y wartości 7.

x=y; Zmienna x przechowuje wartość 7.

y=x; Zmienna y przechowuje wartość zmiennej x, czyli 7.

Page 9: DLACZEGO NIE POWINNIŚMY KSZTAŁCIĆ KOLEJNYCH SEKRETAREK ?

Zamiana wartości zmiennych –rozwiązania

Wprowadzenie pomocniczej zmiennej:

bufor=x;

x=y;

y=bufor;

Manewrowanie dodawaniem:

x=x+y;

y=x-y;

x=x-y;

Page 10: DLACZEGO NIE POWINNIŚMY KSZTAŁCIĆ KOLEJNYCH SEKRETAREK ?

Programowanie od małego w CoderDojo

Misja: Świat potrzebuje hakerów!

http://coderdojo.org.pl/

Page 11: DLACZEGO NIE POWINNIŚMY KSZTAŁCIĆ KOLEJNYCH SEKRETAREK ?

Gra w Nimn

// problemZe 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ń.

Page 12: DLACZEGO NIE POWINNIŚMY KSZTAŁCIĆ KOLEJNYCH SEKRETAREK ?

Gra w Nim5

wygrał g2

wygrał g1

wygrał g1

wygrał g2

wygrał g2

wygrał g2

5g1

2

g1

2

g1

1

g1

4g2

3

g2

1g2

1

g2

1

g1

wygrał g1

3

g12

g2

Page 13: DLACZEGO NIE POWINNIŚMY KSZTAŁCIĆ KOLEJNYCH SEKRETAREK ?

Gra w Nim5

W grze z pięcioma kamieniami zawsze może wygrać gracz, który rozpoczyna – musi jednak

rozpocząć od jednego kamienia.

Page 14: DLACZEGO NIE POWINNIŚMY KSZTAŁCIĆ KOLEJNYCH SEKRETAREK ?

Gra w Nim5

wygrał g2

wygrał g1

wygrał g1

wygrał g2

wygrał g2

wygrał g2

5g1

2

g1

2

g1

1

g1

4g2

3

g2

1g2

1

g2

1

g1

wygrał g1

3

g12

g2

Page 15: DLACZEGO NIE POWINNIŚMY KSZTAŁCIĆ KOLEJNYCH SEKRETAREK ?

Gra w Nim5

A jeśli gracz 1 się pomyli i w pierwszym ruchu weźmie

2 kamienie?

Page 16: DLACZEGO NIE POWINNIŚMY KSZTAŁCIĆ KOLEJNYCH SEKRETAREK ?

Gra w Nim5

wygrał g1

wygrał g2

wygrał g2

5g1

2

g1

3

g2

1

g2

1

g1

Gracz 1 przegra, jeśli gracz drugi weźmie 2 kamienie.

Page 17: DLACZEGO NIE POWINNIŚMY KSZTAŁCIĆ KOLEJNYCH SEKRETAREK ?

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

Page 18: DLACZEGO NIE POWINNIŚMY KSZTAŁCIĆ KOLEJNYCH SEKRETAREK ?

Godzina Programowania (9-15.12.2013)

Page 19: DLACZEGO NIE POWINNIŚMY KSZTAŁCIĆ KOLEJNYCH SEKRETAREK ?

Pierwsze kroki z programowaniuKodowanie z Angry Bird: http://learn.code.org/hoc/1

Goole Blockly: http://skroc.pl/360e2

Page 20: DLACZEGO NIE POWINNIŚMY KSZTAŁCIĆ KOLEJNYCH SEKRETAREK ?

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/

Page 21: DLACZEGO NIE POWINNIŚMY KSZTAŁCIĆ KOLEJNYCH SEKRETAREK ?

Patriota w dobie iPadów

ADOPT-A-HYDRANTAplikacja, w oparciu o mapę miasta, umożliwia obywatelom Bostonu zgłoszenie lokalnym władzom zasypanych śniegiem hydrantów przeciwpożarowych.

CIVIC INSIGHTSAplikacja oferuje mieszkańcom najświeższe informacje o statusie zniszczonej nieruchomości w danym mieście.

http://epf.org.pl/kodujdlapolski/

DiscoverBPSAplikacja łączy opinie, kryteria, dane szkoły oraz zaawansowane narzędzia by pomóc rodzicom wybrać szkołę dla swojego dziecka.

Page 22: DLACZEGO NIE POWINNIŚMY KSZTAŁCIĆ KOLEJNYCH SEKRETAREK ?

Sortowanie zbiorów liczbowych

//problem

Dany jest zbiór liczb naturalnych. Ustaw elementy tego zbioru w porządku niemalejącym.

Page 23: DLACZEGO NIE POWINNIŚMY KSZTAŁCIĆ KOLEJNYCH SEKRETAREK ?

Sortowanie bąbelkowe – rozwiązanie

www.youtube.com/watch?v=lyZQPjUT5B4

Page 24: DLACZEGO NIE POWINNIŚMY KSZTAŁCIĆ KOLEJNYCH SEKRETAREK ?

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

Page 25: DLACZEGO NIE POWINNIŚMY KSZTAŁCIĆ KOLEJNYCH SEKRETAREK ?

Sortowanie przez kopcowanie – schemat postępowania

Źródło: Informatyka nie tylko dla uczniów. Zakres rozszerzony, Wydawnictwo Szkolne PWN

Page 26: DLACZEGO NIE POWINNIŚMY KSZTAŁCIĆ KOLEJNYCH SEKRETAREK ?

Sortowanie przez kopcowanie – schemat postępowania

Źródło: Informatyka nie tylko dla uczniów. Zakres rozszerzony, Wydawnictwo Szkolne PWN

Page 27: DLACZEGO NIE POWINNIŚMY KSZTAŁCIĆ KOLEJNYCH SEKRETAREK ?

Sortowanie przez kopcowanie – schemat postępowania

Źródło: Informatyka nie tylko dla uczniów. Zakres rozszerzony, Wydawnictwo Szkolne PWN

Page 28: DLACZEGO NIE POWINNIŚMY KSZTAŁCIĆ KOLEJNYCH SEKRETAREK ?

Sortowanie przez kopcowanie – schemat postępowania

Źródło: Informatyka nie tylko dla uczniów. Zakres rozszerzony, Wydawnictwo Szkolne PWN

Page 29: DLACZEGO NIE POWINNIŚMY KSZTAŁCIĆ KOLEJNYCH SEKRETAREK ?

Sortowanie przez kopcowanie – schemat postępowania

Źródło: Informatyka nie tylko dla uczniów. Zakres rozszerzony, Wydawnictwo Szkolne PWN

Page 30: DLACZEGO NIE POWINNIŚMY KSZTAŁCIĆ KOLEJNYCH SEKRETAREK ?

Sortowanie przez kopcowanie – schemat postępowania

Źródło: Informatyka nie tylko dla uczniów. Zakres rozszerzony, Wydawnictwo Szkolne PWN

Page 31: DLACZEGO NIE POWINNIŚMY KSZTAŁCIĆ KOLEJNYCH SEKRETAREK ?

Sortowanie przez kopcowanie – schemat postępowania

Źródło: Informatyka nie tylko dla uczniów. Zakres rozszerzony, Wydawnictwo Szkolne PWN

Page 32: DLACZEGO NIE POWINNIŚMY KSZTAŁCIĆ KOLEJNYCH SEKRETAREK ?

Sortowanie przez kopcowanie – schemat postępowania

Źródło: Informatyka nie tylko dla uczniów. Zakres rozszerzony, Wydawnictwo Szkolne PWN

Page 33: DLACZEGO NIE POWINNIŚMY KSZTAŁCIĆ KOLEJNYCH SEKRETAREK ?

Sortowanie przez kopcowanie – schemat postępowania

Źródło: Informatyka nie tylko dla uczniów. Zakres rozszerzony, Wydawnictwo Szkolne PWN

Page 34: DLACZEGO NIE POWINNIŚMY KSZTAŁCIĆ KOLEJNYCH SEKRETAREK ?

Sortowanie przez kopcowanie – schemat postępowania

Źródło: Informatyka nie tylko dla uczniów. Zakres rozszerzony, Wydawnictwo Szkolne PWN

Page 35: DLACZEGO NIE POWINNIŚMY KSZTAŁCIĆ KOLEJNYCH SEKRETAREK ?

Sortowanie przez kopcowanie – schemat postępowania

Źródło: Informatyka nie tylko dla uczniów. Zakres rozszerzony, Wydawnictwo Szkolne PWN

Page 36: DLACZEGO NIE POWINNIŚMY KSZTAŁCIĆ KOLEJNYCH SEKRETAREK ?

Sortowanie przez kopcowanie – implementacjaint Lewy(int rodzic) {

return (2*rodzic);

}

int Prawy(int rodzic) { return (2*rodzic + 1); }

Źródło: Informatyka nie tylko dla uczniów. Zakres rozszerzony, Wydawnictwo Szkolne PWN

Page 37: DLACZEGO NIE POWINNIŚMY KSZTAŁCIĆ KOLEJNYCH SEKRETAREK ?

Sortowanie przez kopcowanie – implementacjavoid WykonajKopiec(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); }}

Page 38: DLACZEGO NIE POWINNIŚMY KSZTAŁCIĆ KOLEJNYCH SEKRETAREK ?

Sortowanie przez kopcowanie – praca z uczniem

Co zrobić z uczniami, którym trudno będzie napisać program?

Page 39: DLACZEGO NIE POWINNIŚMY KSZTAŁCIĆ KOLEJNYCH SEKRETAREK ?

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

Page 40: DLACZEGO NIE POWINNIŚMY KSZTAŁCIĆ KOLEJNYCH SEKRETAREK ?

Sortowanie przez kopcowanie – praca z uczniem

Pokaz i analiza

Zastosowanie

Sprawdzenie

Źródło: Informatyka nie tylko dla uczniów. Zakres rozszerzony, Wydawnictwo Szkolne PWN

Page 41: DLACZEGO NIE POWINNIŚMY KSZTAŁCIĆ KOLEJNYCH SEKRETAREK ?

Algorytmika z uczniem słabszym

Źródło: Informatyka nie tylko dla uczniów. Zakres rozszerzony, Wydawnictwo Szkolne PWN

Wieże Hanoi Fraktale

Page 42: DLACZEGO NIE POWINNIŚMY KSZTAŁCIĆ KOLEJNYCH SEKRETAREK ?

Algorytmika z uczniem słabszym

Źródło: Informatyka nie tylko dla uczniów. Zakres rozszerzony, Wydawnictwo Szkolne PWN

Przynależność punktu do obszaru

Page 43: DLACZEGO NIE POWINNIŚMY KSZTAŁCIĆ KOLEJNYCH SEKRETAREK ?

Kursy programowania online

› http://www.codecademy.com/

› http://www.learnstreet.com

› http://tryruby.org/

› https://www.codeschool.com/

› https://dash.generalassemb.ly/

Page 44: DLACZEGO NIE POWINNIŚMY KSZTAŁCIĆ KOLEJNYCH SEKRETAREK ?

Ostatni slajd

› if(nr_slajdu == ostatni)

› print ”Dziękuję za uwagę!”;