Zapisywanie algorytmów w języku programowania

Podobne dokumenty
Programowanie i techniki algorytmiczne

Temat 20. Techniki algorytmiczne

Zapisywanie w wybranej notacji algorytmów z warunkami i iteracyjnych

Algorytmika i programowanie usystematyzowanie wiadomości

Temat 5. Programowanie w języku Logo

Programowanie w środowisku Baltie

Temat: Programujemy historyjki w języku Scratch tworzymy program i powtarzamy polecenia.

Sposoby przedstawiania algorytmów

SCENARIUSZ LEKCJI. Streszczenie. Czas realizacji. Podstawa programowa

Temat 21. Programowanie w języku Scratch

Dokument komputerowy w edytorze grafiki

Temat 4. Programowanie w języku Scratch

Klasa 2 INFORMATYKA. dla szkół ponadgimnazjalnych zakres rozszerzony. Założone osiągnięcia ucznia wymagania edukacyjne na. poszczególne oceny

Temat 2. Program komputerowy

Temat 19. Poznajemy program Baltie

Temat 1. Więcej o opracowywaniu tekstu

Wykonujemy obliczenia w arkuszu kalkulacyjnym

Temat 2. Uruchamiamy programy

KARTA KURSU. Wstęp do programowania

Programowanie od pierwszoklasisty do maturzysty. Grażyna Koba

Wykonujemy obliczenia w arkuszu kalkulacyjnym

Temat 1. Uruchamiamy programy

SCENARIUSZ LEKCJI. TEMAT LEKCJI: Projektowanie rozwiązania prostych problemów w języku C++ obliczanie pola trójkąta

INFORMATYKA

Temat 20. Animacje w programie Baltie

Baltie. 1. Proponowany czas realizacji 5 godz. 2. Cele kształcenia. 3. Wskazówki metodyczne

Komputer i urządzenia cyfrowe

Plan wynikowy do realizacji informatyki w gimnazjum (cykl dwuletni, II rok nauczania) opracowany na podstawie podręcznika

WYMAGANIA EDUKACYJNE Z INFORMATYKI dla klasy III gimnazjalnej, Szkoły Podstawowej w Rychtalu

Program komputerowy i przepisy prawa

WYMAGANIA EDUKACYJNE

Przedmiotowe Zasady Oceniania III LO w Łomży. Algorytmika. Klasy II-III

Temat 1. Praca z programem komputerowym

SCENARIUSZ LEKCJI. Dzielenie wielomianów z wykorzystaniem schematu Hornera

Innowacja pedagogiczna dla uczniów pierwszej klasy gimnazjum Programowanie

Funkcje i instrukcje języka JavaScript

Algorytmika i pseudoprogramowanie

w edytorze tekstu 1. Proponowany czas realizacji 4 godz. 2. Cele kształcenia 3. Wskazówki metodyczne

Programowanie w języku C++ Grażyna Koba

Teraz bajty. Informatyka dla szkoły podstawowej. Klasa VI

Temat 2. Korzystamy z programu WordPad

Wymagania na poszczególne oceny szkolne dla klasy VI. (na podstawie Grażyny Koba, Teraz bajty. Informatyka dla szkoły podstawowej.

Wymagania edukacyjne z informatyki dla uczniów klas VI SP nr 53 w Krakowie w roku szkolnym 2019/2020

Scenariusz lekcji. podać przykłady zalet użycia takiej instrukcji; opisać algorytm obliczania średniej n liczb;

WYMAGANIA EDUKACYJNE. Informatyka Szkoła Podstawowa Klasa 4 NA ŚRÓDROCZNĄ I ROCZNĄ OCENĘ KLASYFIKACYJNĄ

w programie Baltie 1. Proponowany czas realizacji 4 godz. 2. Cele kształcenia 3. Wskazówki metodyczne

WYMAGANIA EDUKACYJNE Z ZAJĘĆ KOMPUTEROWYCH / EDUKACJI INFORMATYCZNEJ KLAS I III

Teraz bajty. Informatyka dla szkoły podstawowej. Klasa VI

multimedialne 1. Proponowany czas realizacji 4 godz. 2. Cele kształcenia 3. Wskazówki metodyczne

Z nowym bitem. Informatyka dla gimnazjum. Część II

Informatyka klasa III Gimnazjum wymagania na poszczególne oceny

Grażyna Koba, Poradnik metodyczny. Informatyka dla gimnazjum Program nauczania wymagania na oceny PRZEDMIOTOWY SYSTEM OCENIANIA KLASA II

Prezentujemy dane na wykresie w arkuszu kalkulacyjnym

LEKCJA 2 Program do zdalnego sterowania robotem

Temat 2. Korzystamy z edytora tekstu

KONSPEKT ZAJĘĆ KOŁA INFORMATYCZNEGO LUB MATEMATYCZNEGO W KLASIE III GIMNAZJUM LUB I LICEUM ( 2 GODZ.)

Teraz bajty. Informatyka dla szkół ponadpodstawowych. Zakres rozszerzony. Część 1.

Sposoby sprawdzania osiągnięć edukacyjnych uczniów

Tematyka i rozwiązania metodyczne kolejnych zajęć lekcyjnych wraz z ćwiczeniami.

sceny w programie Baltie

Temat 1. Budujemy sceny w programie Baltie

w programie Baltie 1. Proponowany czas realizacji 3 godz. 2. Cele kształcenia 3. Wskazówki metodyczne

Nazwa wariantu modułu (opcjonalnie): Laboratorium programowania w języku C++

SCENARIUSZ LEKCJI. Miejsca zerowe funkcji kwadratowej i ich graficzna prezentacja

Scenariusz lekcji. Scenariusz lekcji 1 TEMAT LEKCJI: 2 CELE: 2.1 Wiadomości: 2.2 Umiejętności: 3 METODY NAUCZANIA 4 ŚRODKI DYDAKTYCZNE

Zmieniamy i uzupełniamy sceny w programie Baltie

Temat A1. Komputer i urządzenia peryferyjne

PRZEDMIOTOWY SYSTEM OCENIANIA Z ZAJĘĆ KOMPUTEROWYCH KLASY I III

okręgi i koła w programie Paint

WYMAGANIA EDUKACYJNE Z ZAJĘĆ KOMPUTEROWYCH DLA KLASY SZÓSTEJ W ZAKRESIE WIADOMOŚCI I UMIEJĘTNOŚCI UCZNIÓW

Wymagania Uczestnik szkolenia musi mieć możliwość korzystania z Internetu. Kurs nie zakłada znajomości podstaw programowania.

Scenariusz lekcji opartej na programie Program nauczania informatyki w gimnazjum DKW /99

Scenariusz zajęć. Moduł VI. Projekt Gra logiczna zgadywanie liczby

prostokąty i kwadraty w programie Paint

Algorytm poprawny jednoznaczny szczegółowy uniwersalny skończoność efektywność (sprawność) zmiennych liniowy warunkowy iteracyjny

Temat: Podsumowanie wiadomości z działu: Nie tylko kalkulator ćwiczenia z wykorzystaniem monitora interaktywnego. Zajęcia komputerowe klasa VI a

PRZEWODNIK PO PRZEDMIOCIE

Wymagania edukacyjne z informatyki w klasie VIII

Języki programowania zasady ich tworzenia

Rysujemy elipsy, okręgi i koła w programie Paint

Scenariusz zajęć z matematyki dla klasy I gimnazjum z wykorzystaniem programu edurom Matematyka G1

Programowanie w języku Python. Grażyna Koba

Lubię to! Przedmiotowy system oceniania z informatyki Klasa 8 Aneta Czajkowska

1. Informatyka - dyscyplina naukowa i techniczna zajmująca się przetwarzaniem informacji.

SCENARIUSZ ZAJĘĆ Z INFORMATYKI

Tematy lekcji informatyki klasa 4a wrzesień 2012

biegle i poprawnie posługuje się terminologią informatyczną,

Plan pracy do realizacji zajęć komputerowych w szkole podstawowej

Przedmiotowy system oceniania z informatyki klasa 7 1. Ogólne zasady oceniania uczniów

Wymagania edukacyjne z informatyki w klasie 8 szkoły podstawowej

KOŁO MATEMATYCZNE LUB INFORMATYCZNE - klasa III gimnazjum, I LO

Plan wynikowy do realizacji informatyki w szkole podstawowej na poziomie klasy VIII

Wymagania edukacyjne z zajęć komputerowych w klasie 6

PRZEDMIOTOWY SYSTEM OCENIANIA Z ZAJĘĆ KOMPUTEROWYCH dla uczniów klas IV Szkoły Podstawowej nr 47 im. Jana Klemensa Branickiego w Białymstoku

Przedmiotowy system oceniania klasa 7

Tematy lekcji informatyki klasa 4a luty/marzec 2013

Plan wynikowy do realizacji informatyki w szkole podstawowej na poziomie klasy VIII

ALGORYTMY. 1. Podstawowe definicje Schemat blokowy

ALGORYTMY. 1. Podstawowe definicje Schemat blokowy

Transkrypt:

Temat C5 Zapisywanie algorytmów w języku programowania Cele edukacyjne Zrozumienie, na czym polega programowanie. Poznanie sposobu zapisu algorytmu w postaci programu komputerowego. Zrozumienie, na czym polega iteracja. Zrozumienie różnic między algorytmem liniowym a algorytmem z warunkami oraz algorytmem iteracyjnym. Proponowany czas realizacji 2 godz. Po gimnazjum Uczeń: tworzy proste programy, korzystając z oprogramowania edukacyjnego, np. programu Logomocja lub Baltie, definiuje procedury w języku Logo z parametrami i bez parametrów oraz wywołuje je, realizuje prostą sytuację warunkową i iterację, korzystając z wybranego programu edukacyjnego. Wskazówki metodyczne Zgodnie z podstawą programową, uczeń powinien umieć zrealizować rozwiązanie problemu na komputerze za pomocą oprogramowania aplikacyjnego lub języka programowania. Celem tematu C5 jest pokazanie, na czym polega programowanie. Uczniowie będą zapisywali poznane w temacie C4 algorytmy w postaci programu w wybranym języku programowania. Nie należy zakładać, że na dwóch lekcjach, które proponuję przeznaczyć na realizację tego tematu, uczniowie nauczą się programować. Należy to uczniom wyraźnie powiedzieć. Aby zdobyli wiedzę i umiejętności dotyczące programowania, powinni realizować informatykę w zakresie rozszerzonym, a w przyszłości wybrać się na studia informatyczne. W tym temacie wyjaśniamy podstawowe pojęcia związane z programowaniem oraz podajemy klasyfikację oprogramowania za względu na poziom wykonywania programu. Należy na początku wyjaśnić uczniom, czym są języki programowania. Język programowania porównujemy do języka naturalnego, wskazując podobieństwa i różnice. Zwracamy uwagę, że w językach programowania obowiązują określone zasady składni, jednak dużo bardziej ścisłe, niż w językach naturalnych. Pisanie programów pokazujemy na przykładach dwóch wybranych języków programowania: Pascal i C++. Każdy z algorytmów jest zapisany w obydwu tych językach. W ten sposób możemy pokazać uczniom podobieństwa w budowie prostego programu czy w składni instrukcji danego Scenariusze lekcji 131

języka programowania. Konkretne ćwiczenia uczniowie powinni wykonać tylko w jednym z języków. W tym temacie te same algorytmy (liniowe i zawierające sytuacje warunkowe), które wcześniej były prezentowane w postaci listy kroków i schematów blokowych, zapisywane są w postaci programu komputerowego. W ostatnim punkcie tematu omawiamy algorytmy iteracyjne. Technikę iteracji przedstawiamy jako wielokrotne powtarzanie tych samych operacji (str. 267) na przykładzie sumowania n liczb. Pokazujemy realizację tego algorytmu w postaci listy kroków, schematu blokowego i programu komputerowego. Uczniowie, analizując te przykłady, mają możliwość zrozumienia, na czym polega iteracja. Nauczyciel powinien dokładnie wyjaśnić operację: Suma := Suma + a. Trzeba powiedzieć, że nie jest to równość w rozumieniu matematyki. Jest to operacja przypisania wartości zmiennej Suma poprzedniej wartości zmiennej Suma, zwiększonej o kolejną liczbę. Poprzednia wartość zmiennej Suma zostanie zastąpiona nową. Można odwołać się do przykładu dodawania liczb w pamięci lub za pomocą kalkulatora: dodajemy dwie liczby do siebie, zapamiętujemy wynik, następnie do zapamiętanej wartości dodajemy kolejną liczbę, zapamiętujemy wynik (poprzedni kasując) itd. Powtarzamy te same operacje, czyli postępujemy iteracyjnie. Warto jeszcze zwrócić uwagę na przypisanie: i := i + 1. Jest to tzw. licznik, który zwiększa się o 1 przy każdym przejściu pętli. Błędy i problemy uczniów Większość uczniów ma problemy z poprawnym zapisaniem nawet prostego programu. Mają problemy z zapisem instrukcji programu w odpowiedniej kolejności. Zapominają o odpowiednim umieszczaniu znaków interpunkcyjnych. Nie przywiązują wagi do precyzyjnego zapisu tekstu programu. W językach C i C++ małe i wielkie litery mają różne znaczenie, o czym uczniowie zapominają. Uczniowie nie rozumieją, że po każdej zmianie program należy na nowo skompilować. Mogą mieć trudności ze zrozumieniem zapisu algorytmu zawierającego pętle, w tym pętle zagnieżdżone zarówno w przypadku schematu blokowego, jak i programu w języku Pascal lub C++. Wskazówki do niektórych ćwiczeń, pytań i zadań Ćwiczenie 9. (str. 269) w języku Pascal: plik Ćwiczenie9_R.pas; w języku C++: plik Ćwiczenie9_R.cpp. Zadanie 1. (str. 271) w języku Pascal: plik Zadanie1_R.pas; w języku C++: plik Zadanie1_R.cpp. Zadanie 2. (str. 271) w języku Pascal: plik Zadanie2_R.pas; w języku C++: plik Zadanie2_R.cpp. Zadanie 4. (str. 271) w języku Pascal: plik Zadanie4_R.pas; w języku C++: plik Zadanie4_R.cpp. Zadanie 5. (str. 271) w języku Pascal: plik Zadanie5_R.pas; w języku C++: plik Zadanie5_R.cpp. Zadanie 6. (str. 271) w języku Pascal: plik Zadanie6_R.pas; w języku C++: plik Zadanie6_R.cpp. Zadanie 7. (str. 271) w języku Pascal: plik Zadanie7_ R.pas; w języku C++: plik Zadanie7_R.cpp. Zadanie 9. (str. 272) w języku Pascal: plik Zadanie9_R.pas; w języku C++: plik Zadanie9_R.cpp. Zadanie 10. (str. 272) w języku Pascal: plik Zadanie10_R.pas; w języku C++: plik Zadanie10_R.cpp. Zadanie 11. (str. 272) w języku Pascal: plik Zadanie11_ R.pas; w języku C++: plik Zadanie11_R.cpp. Zadanie 13. (str. 272) w języku Pascal: plik Zadanie13_R.pas; w języku C++: plik Zadanie13_R.cpp. Scenariusze lekcji 132

Przykładowe scenariusze Lekcja 29. (temat C5) Zapisywanie algorytmów liniowych i z warunkami w języku programowania Wiedza i umiejętności Treści, pytania, ćwiczenia i zadania Podstawa programowa podstawowe rozszerzające z podręcznika, materiały Uczeń: Uczeń: z CD Uczeń: wie, na czym polega programowanie; analizuje gotowe, proste programy, zapisane w wybranym języku klasyfikuje języki pisze proste programy w wybranym języku programowania, używając podstawowych poleceń zapisuje złożony algorytm liniowy i z warunkami w wybranym języku programowania temat C5 z podręcznika (str. 260-266); ćwiczenia 1, 3. (punkt 1), 4. i 5. (str. 263-266) zadanie domowe ćwiczenia 2, 3. (punkt 2) i 6. (str. 263-266); pytania 1-5 (str. 271) dla zainteresowanych zadania 8-9 (str. 272) 5.3. projektuje rozwiązanie: wybiera metodę rozwiązania, odpowiednio dobiera narzędzia komputerowe, tworzy projekt rozwiązania; 5.4. realizuje rozwiązanie na komputerze za pomocą oprogramowania aplikacyjnego lub języka 5.5. testuje otrzymane rozwiązanie, ocenia jego własności, w tym efektywność działania oraz zgodność ze specyfikacją; 5.6. przeprowadza prezentację i omawia zastosowania rozwiązania; Forma zajęć: wprowadzenie, pokaz z wykorzystaniem projektora; praca z podręcznikiem i CD; ćwiczenia Przebieg lekcji: 1. Nauczyciel podaje temat i cel lekcji oraz sprawdza zadanie domowe. Wybrani uczniowie odpowiadają na zadane pytania i przedstawiają rozwiązania zadań domowych, korzystając z projektora. 2. Nauczyciel omawia podstawowe pojęcia związane z językami programowania i wyjaśnia, na czym polega programowanie (str. 260-262). Następnie omawia, w jaki sposób tworzy się prosty program na przykładzie wybranego języka programowania. Analizuje przykład 1. (str. 262) lub 2. (str. 263), korzystając z projektora. Kompiluje i uruchamia jeden z programów, przy okazji omawiając sposób posługiwania się danym kompilatorem. 3. Jeśli wybranym dla uczniów językiem jest C++, nauczyciel dodatkowo wskazuje podobne części programu na przykładzie programu zapisanego w języku Pascal i na odwrót. 4. Uczniowie śledzą przykłady w podręczniku i wykonują ćwiczenie 1. (str. 263). Kompilują i uruchamiają program. Nauczyciel sprawdza wykonanie ćwiczenia i pomaga nieradzącym sobie uczniom. 5. Nauczyciel wyjaśnia sposób zapisu algorytmu z warunkami w językach programowania. Omawia instrukcję iteracyjną w wybranym języku. Pokazuje postać instrukcji w drugim języku programowania. Uczniowie porównują algorytmy z warunkami zapisane w obydwu językach, zwracając uwagę na podobieństwa i różnice wykonują punkt 1. ćwiczenia 3. (str. 265). Lekcja 29. Zapisywanie algorytmów liniowych i z warunkami w języku programowania 133

6. Uczniowie, korzystając z przykładów 3. i 4. (str. 264-265), próbują samodzielnie wykonać ćwiczenie 4. (str. 265). Nauczyciel sprawdza wykonywanie ćwiczenia i pomaga nieradzącym sobie uczniom. 7. Korzystając z projektora, nauczyciel analizuje przykład 5. (str. 265) lub 6. (str. 266). Uczniowie, którzy wcześniej wykonali poprzednie ćwiczenia, lub uczniowie zainteresowani wykonują ćwiczenie 5. (str. 266). Ocena Należy ocenić uczniów za odpowiedzi ustne, bieżącą pracę na lekcji oraz rzetelne wykonanie ćwiczeń. Zadanie domowe Przeczytanie treści tematu C5 (str. str. 260-266), przygotowanie ustnej odpowiedzi na pytania 1-5 (str. 271) oraz rozwiązanie ćwiczeń 2-3 (punkt 2.) i 6. (str. 263-266). Uczniom zainteresowanym można polecić dodatkowo zadania 8-9 (str. 272) i zapoznanie się z dalszą częścią tematu. Lekcja 29. Zapisywanie algorytmów liniowych i z warunkami w języku programowania 134

Lekcja 30. (temat C5) Zapisywanie algorytmów iteracyjnych w języku programowania Wiedza i umiejętności Treści, pytania, ćwiczenia i zadania Podstawa programowa podstawowe rozszerzające z podręcznika, materiały Uczeń: Uczeń: z CD Uczeń: analizuje gotowe, proste programy, zapisane w wybranym języku realizuje prostą sytuację warunkową w wybranym języku definiuje pojęcie iteracji; analizuje gotowy schemat blokowy i program realizujący algorytm iteracyjny zapisuje złożony algorytm iteracyjny w wybranym języku projektuje rozwiązanie dowolnego zadania i zapisuje je w wybranym języku programowania temat C5 z podręcznika (str. 267-272); ćwiczenia 7-10 (str. 267-270) zadanie domowe pytanie 6. (str. 271); zadania 1-7 (str. 271) trzy do wyboru dla zainteresowanych zadania 10-13 (str. 272) 5.3. projektuje rozwiązanie: wybiera metodę rozwiązania, odpowiednio dobiera narzędzia komputerowe, tworzy projekt rozwiązania; 5.4. realizuje rozwiązanie na komputerze za pomocą oprogramowania aplikacyjnego lub języka 5.5. testuje otrzymane rozwiązanie, ocenia jego własności, w tym efektywność działania oraz zgodność ze specyfikacją; 5.6. przeprowadza prezentację i omawia zastosowania rozwiązania; Forma zajęć: wprowadzenie, pokaz z wykorzystaniem projektora; praca z podręcznikiem i CD; ćwiczenia Przebieg lekcji: 1. Nauczyciel podaje temat i cel lekcji oraz sprawdza zadanie domowe. Wybrani uczniowie odpowiadają na zadane pytania i przedstawiają rozwiązania zadań domowych, korzystając z projektora. 2. Nauczyciel omawia technikę iteracji i sposób zapisu algorytmu iteracyjnego w postaci listy kroków na przykładzie algorytmu obliczania sumy n liczb. Uczniowie śledzą przykład w podręczniku i wykonują ćwiczenie 7. (str. 267). Wyniki obliczeń wybrany uczeń zapisuje na tablicy. 3. Nauczyciel analizuje, wspólnie z uczniami, schemat blokowy pokazujący realizację algorytmu iteracyjnego (rys. 1, str. 268). Zwraca uwagę na miejsce w algorytmie, gdzie następuje powrót do wcześniejszego kroku, czyli pętla. Następnie omawia sposób zapisu algorytmu iteracyjnego w języku programowania. 4. Uczniowie, korzystając z przykładu 8. lub 9. (str. 268-269), wykonują ćwiczenie 8. (str. 269). Nauczyciel sprawdza wykonywanie ćwiczenia. 5. Korzystając z kodu programu zapisanego w ćwiczeniu 8. (str. 269), uczniowie wykonują ćwiczenie 9. (str. 269). 6. Nauczyciel omawia pętle zagnieżdżone, a uczniowie wykonują ćwiczenie 10. (str. 270). 7. Nauczyciel wspólnie z uczniami podsumowuje zajęcia, zadając pytania o poznane metody. Ocena Należy ocenić uczniów za odpowiedzi ustne, bieżącą pracę na lekcji oraz rzetelne wykonanie ćwiczeń. Lekcja 30. Zapisywanie algorytmów iteracyjnych w języku programowania 135

Zadanie domowe Przeczytanie treści tematu C5 (str. str. 267-271), przygotowanie ustnej odpowiedzi na pytanie 6. (str. 271) oraz rozwiązanie trzech zadań wybranych spośród 1-7 (str. 271). Uczniom zainteresowanym można polecić dodatkowo zadania 10-13 (str. 272). Lekcja 30. Zapisywanie algorytmów iteracyjnych w języku programowania 136