Program nauczania przedmiotu

INFORMATYKA

IV etap edukacyjny – zakres rozszerzony

Rok szkolny 2017/18

Autor:   mgr Jerzy Wałaszek
Stopień awansu:   nauczyciel dyplomowany
Przeznaczenie:   klasy II i III liceum ogólnokształcącego
Zakres przedmiotu:   rozszerzony
Liczba godzin:   180 (2 x 90)
Podstawa prawna:   Rozporządzenie Ministra Edukacji Narodowej z dnia 6 stycznia 2009 r. w sprawie dopuszczania do użytku szkolnego programów wychowania przedszkolnego, programów nauczania i podręczników oraz cofania dopuszczenia
Podstawa programowa:   Rozporządzenie Ministra Edukacji Narodowej z dnia 23 grudnia 2008 r. w sprawie podstawy programowej wychowania przedszkolnego oraz kształcenia ogólnego w poszczególnych typach szkół (Dziennik Ustaw 15 stycznia 2009 r. Nr 4, poz. 17).

Skrócone kryteria ocen:

ndst - za darmo, nic nie trzeba umieć ani tym bardziej robić
dop - uczeń musi znać materiał przerobiony na lekcjach
dst - uczeń zna i rozumie materiał przerobiony na lekcjach
db - uczeń dodatkowo potrafi wykorzystać swoją wiedzę w typowych sytuacjach
bdb - uczeń wykorzystuje swoją wiedzę i umiejętności do rozwiązywania nowych problemów
cel - uczeń posiada ocenę bdb oraz udokumentowane osiągnięcia w dziedzinie TI - olimpiada techniczna lub informatyczna, publikacje na temat TI w naszym Serwisie Informatycznym, własnoręcznie wykonane pomoce dydaktyczne bazujące na TI - np. zaawansowane prezentacje multimedialne, program komputerowy na wysokim poziomie, baza danych wraz z interfejsem użytkownika, uczestnictwo w kole informatycznym.

 

obrazekKażdy uczeń ma obowiązek założyć zeszyt przedmiotowy zawierający co najmniej 60 kartek kratkowanych. Zeszyt jest obowiązkowy, a jego brak należy zgłaszać nauczycielowi przed rozpoczęciem lekcji, gdyż w przeciwnym razie uczeń może otrzymać ocenę niedostateczną z przygotowania się do lekcji. Zeszyt przedmiotowy musi być podpisany na pierwszej stronie nazwą przedmiotu (informatyka), imieniem i nazwiskiem ucznia oraz klasą, do której uczeń uczęszcza. Brak podpisu jest traktowany na równi z brakiem zeszytu i skutkuje oceną niedostateczną. Zeszyt przedmiotowy stanowi dokumentację pracy ucznia w trakcie nauki przedmiotu i jest oceniany pod koniec obu semestrów.

obrazekOprócz zeszytu pożądane jest, aby każdy uczeń zaopatrzył się w pamięć pendrive, która posłuży mu do przechowywania materiałów. Komputery w pracowni są używane przez wiele różnych osób i trudno zapewnić bezpieczeństwo przechowywanych na nich danych – zdarzały się przypadki usuwania danych. Pamięć pendrive jest obecnie bardzo tania, a może być wykorzystywana również do gromadzenia danych na innych przedmiotach.


obrazekAlternatywą dla pamięci pendrive jest założenie konta pocztowego (np. w gmail.com) i przesyłanie w załącznikach listów utworzonych na lekcji danych.

 

 

W ciągu nauki uczeń otrzymuje oceny:

  • za pracę na lekcji
  • za wykonane projekty
  • za sprawdziany i testy
  • w szczególnych sytuacjach za odpowiedzi ustne
  • za zeszyt przedmiotowy

W ciągu semestru uczeń ma prawo być dwa razy nieprzygotowany do zajęć. Nieprzygotowanie nie zwalnia z obowiązku pracy na lekcji. Nie uwzględnia się nieprzygotowania na zapowiedzianych sprawdzianach i testach oraz na zaliczeniach ocen niedostatecznych. Także pod koniec semestru nieprzygotowania uczniów nie będą respektowane - szczególnie odnosi się to do osobników unikających oceniania w trakcie semestru.

 

Skrócony regulamin pracowni informatycznej

  1. Do pracowni uczniowie wchodzą pod kierunkiem nauczyciela.
  2. Sprzęt komputerowy w pracowni należy używać zgodnie z jego przeznaczeniem.
  3. W pracowni uczeń ma obowiązek wykonywać polecenia nauczyciela.
  4. Bez wiedzy i zgody nauczyciela uczeń nie może uruchamiać lub instalować obcych programów.
  5. W pracowni informatycznej nie wolno spożywać posiłków oraz pić płynów.
  6. W przypadku zauważenia usterki sprzętu należy natychmiast zgłosić to nauczycielowi.

Rozkład materiału dla klasy II i III  dla 3 godzin tygodniowo

Pierwsza kolumna zawiera informację o klasie i semestrze:

II/1 – klasa II, semestr 1

II/2 – klasa II, semestr 2, itd.

Lp. Temat i  treść lekcji L. godz.

Algorytmika i programowanie

1.

II/1

Lekcja 1: Organizacja zajęć w pracowni komputerowej

  • Przepisy BHP
  • Regulamin pracowni komputerowej
  • Rozkład materiału
  • Kryteria ocen
  • Przydział stanowisk

1

2.

II/1 

Lekcja 2,3: Wprowadzenie do informatyki

  • Czym zajmuje się informatyka jako dziedzina naukowa
  • Jak komputer przetwarza informację
  • Pojęcie bitu
  • Zastosowania bitów

2

3.

II/1

Lekcja 4,5,6: Kodowanie liczb

  • Historia rozwoju systemów liczbowych: systemy rzymski, babiloński, Majów, arabski
  • Budowa liczby w systemie pozycyjnym
  • Obliczanie wartości liczby zapisanej w dowolnym systemie pozycyjnym
  • Przeliczanie liczb z systemu dziesiętnego na inny
  • Własności systemu dwójkowego
  • Konwersja na system szesnastkowy i ósemkowy

3

4.

II/1

 

Lekcja 7,8,9: Dwójkowe liczby całkowite bez znaku i ze znakiem w kodzie U2

  • Dodawanie liczb dwójkowych
  • System uzupełnień do podstawy – maszyna Pascala
  • System U2
  • Dodawanie liczb U2
  • Tworzenie liczby przeciwnej w systemie U2
  • Przeliczanie z systemu dziesiętnego na system U2

3

5.

II/1

 

Lekcja 10: Wprowadzenie do języka C++

  • Języki niskiego poziomu (np. asembler PMC)
  • Języki wysokiego poziomu
  • Języki kompilowane, interpretowane
  • Środowisko Code::Blocks (lub inne, np. Visual C++, Borland C++ Builder)
  • Budowa programu w języku C++: pliki nagłówkowe, przestrzeń nazw, funkcja main(), wyjście na konsolę cin
  • Kompilacja i uruchomienie prostego programu

1

6.

II/1

 

Lekcja 11,12: Zmienne całkowite w języku C++

  • Pojęcie typu danych: typy int oraz unsigned int
  • Deklaracja zmiennej: zasady tworzenia nazw zmiennych
  • Instrukcja przypisania
  • Odczyt zmiennej z obiektu cin
  • Działania arytmetyczne na zmiennych całkowitych – pojęcie wyrażenia
  • Instrukcja modyfikacji zmiennej
  • Proste programy obliczeniowe

2

7.

II/1

 

Lekcja 13,14,15: Instrukcja warunkowa if

  • Pojęcie warunku w języku C++
  • Wyrażenia warunkowe z operatorami porównań
  • Wartości logiczne: true i false
  • Funkcje logiczne negacji, alternatywy i koniunkcji
  • Składnia instrukcji if
  • Pojęcie instrukcji blokowej
  • Zastosowanie instrukcji if: większa z dwóch, trzech liczb, znak liczby, porządkowanie dwóch liczb.

3

8.

II/1

 

Lekcja 16: Liczby zmiennoprzecinkowe

  • Budowa liczby zmiennoprzecinkowej
  • Dwójkowe liczby zmiennoprzecinkowe
  • Precyzja liczby zmiennoprzecinkowej
  • Zmienne typów float, double i long double
  • Zasady porównywania liczb zmiennoprzecinkowych – plik nagłówkowy cmath, funkcja fabs()

1

9.

II/1

 

Lekcja 17,18: Pętla warunkowa

  • Składnia i sposób działania pętli while
  • Składnia i sposób działania pętli dowhile
  • Zastosowania pętli: generacja ciągów arytmetycznych i geometrycznych, suma ciągów

2

10.

II/1

 

Lekcja 19,20,21: Pętla iteracyjna for

  • Pojęcie iteracji – obieg zliczany
  • Zmienna zliczająca obiegi
  • Składnia i sposób działania pętli for
  • Ćwiczenia w tworzeniu różnych pętli iteracyjnych

3

11.

II/1

 

Lekcja 22: Algorytmy

  • Pojęcie algorytmu
  • Własności algorytmu: określoność, jednoznaczność, skończoność, ogólność
  • Sposoby zapisu algorytmu: opis słowny, lista kroków, schemat blokowy, pseudokod, program
  • Specyfikacja algorytmu
  • Zapis poznanych algorytmów: obliczanie wartości liczby dwójkowej, tworzenie liczby przeciwnej U2, generacja ciągu liczbowego, obliczanie pierwiastków równania kwadratowego.

1

12.

II/1

 

Lekcja 23,24: Algorytm Euklidesa obliczania największego wspólnego dzielnika

  • Wersja algorytmu Euklidesa z odejmowaniem – zapis algorytmu za pomocą listy kroków, schematu blokowego, programu
  • Wersja algorytmu Euklidesa z resztami z dzielenia – zapis algorytmu za pomocą listy kroków, schematu blokowego, programu
  • Zastosowania algorytmu Euklidesa: liczby względnie pierwsze, NWW, skracanie ułamków

2

13.

II/1

 

Lekcja 25,26,27,: Funkcje

  • Pojęcie funkcji w języku C++
  • Definicja funkcji
  • Przekazywanie parametrów do funkcji przez wartość i przez wskazanie
  • Zmienne lokalne i globalne, przykrywanie nazw zmiennych
  • Tworzenie przykładowych programów z funkcjami: NWD, NWW
  • Ćwiczenia w programowaniu z wykorzystaniem funkcji

3

14.

II/1

 

Lekcja 28: Rekurencja

  • Pojęcie rekurencji
  • Warunek zakończenia rekurencji
  • Rekurencyjne obliczanie silni
  • Rekurencyjne obliczanie NWD

1

15.

II/1

 

Lekcja 29,30: Tablice

  • Pojęcie danej złożonej
  • Budowa tablicy w języku C++ - pojęcie indeksu
  • Deklaracja tablicy
  • Dostęp do elementów tablicy
  • Podstawowe algorytmy tablicowe: odczyt tablicy, wyświetlanie zawartości tablicy, wypełnianie tablicy, sumowanie elementów tablicy, wstawianie nowego elementu do tablicy, usuwanie elementu z tablicy

2

16.

II/1

 

Lekcja 31,32,33: Znajdowanie największego i najmniejszego elementu tablicy

  • Algorytm znajdowania min i max, złożoność obliczeniowa, program w C++
  • Algorytm jednoczesnego znajdowania min i max, złożoność obliczeniowa, program w C++, metoda dziel i zwyciężaj

 

3

17.

II/1

 

Lekcja 34,35,36: Przeszukiwanie liniowe i liniowe z wartownikiem

  • Algorytm wyszukiwania liniowego, złożoność obliczeniowa, program w C++
  • Algorytm wyszukiwania z wartownikiem, złożoność obliczeniowa, program w C++
  • Wyszukiwanie różnych danych w zbiorach

3

18.

II/1

 

Lekcja 37,38: Wyszukiwanie binarne i interpolacyjne

  • Zbiory uporządkowane
  • Algorytm wyszukiwania binarnego, złożoność obliczeniowa, program w C++
  • Algorytm wyszukiwania interpolacyjnego, złożoność obliczeniowa, program w C++

2

19.

II/1

 

Lekcja 39,40: Wyszukiwanie k-tego największego elementu w zbiorze

  • Algorytm naiwny, program C++
  • Algorytm wyszukiwania szybkiego, program C++
  • Pojęcie mediany zbioru

2

20.

II/1

 

Lekcja 41,42: Wyszukiwanie najczęstszej wartości, wyszukiwanie lidera

  • Algorytm wyszukiwania wartości najczęstszej, program C++
  • Pojęcie lidera – dominanta zbioru
  • Algorytm wyszukiwania lidera, program C++

2

21.

II/1

 

Lekcja 43,44,45: Liczby pierwsze

  • Pojęcie liczby pierwszej
  • Dowód Euklidesa na nieskończoność zbioru liczb pierwszych
  • Generacja liczb pierwszych metodą próbnych dzieleń, program w C++
  • Ulepszenie metody generacji liczb pierwszych, program w C++
  • Algorytm sita Eratostenesa, program w C++
  • Porównanie obu metod generacji liczb pierwszych

3

22.

II/1

 

Lekcja 46,47,48: Rozkład liczby naturalnej na czynniki pierwsze

  • Algorytm rozkładu na czynniki pierwsze metodą próbnych dzieleń, program w C++
  • Algorytm Fermata rozkładu na czynniki pierwsze, wersja rekurencyjna, program w C++
  • Porównanie obu metod

3

23.

II/1

Lekcja 49,50,51: Znaki i łańcuchy znakowe

  • Typ char
  • Łańcuch znaków w C++, tablica znakowa
  • Zliczanie słów w tekście, program w C++
  • Wyszukiwanie wzorca w tekście, algorytm naiwny, program C++
  • Test na palindrom, program w C++
  • Sprawdzanie, czy dane słowa są anagramami, program C++

3

24.

II/2

Lekcja 52,53,54: Liczby pseudolosowe

  • Pojęcie liczby losowej i pseudolosowej
  • Zastosowania liczb losowych przy symulacjach procesów zachodzących w świecie rzeczywistym
  • Liniowe generatory liczb pseudolosowych, własności, definiowanie generatorów LCG, pojęcie ziarna pseudolosowego i jego wpływ na ciąg generowanych liczb, okres generatora.
  • Wewnętrzny generator pseudolosowy w języku C++, funkcje srand() i rand()
  • Generowanie liczb pseudolosowych w określonym zakresie – program rzutów kością
  • Generowanie liczb pseudolosowych bez powtórzeń, pseudolosowe mieszanie tablicy,  program totolotek, rozdawanie kart
  • Rzeczywiste liczby pseudolosowe

3

25.

II/2

Lekcja 55: Szyfr Cezara

  • Pojęcie szyfru i cel stosowania
  • Algorytm szyfrowania szyfrem Cezara, program C++

1

26.

II/2

Lekcja 56,57: Szyfr przestawieniowy i podstawieniowy

  • Zasada szyfru przestawieniowego
  • Algorytm szyfrowania szyfrem przestawieniowym, program C++
  • Niemiecka maszyna Enigma
  • Szyfry podstawieniowy o pseudolosowym alfabecie, pojęcie klucza
  • Dobór odpowiedniego generatora LCG
  • Algorytm szyfrowania szyfrem podstawieniowym, program C++

2

27.

II/2

Lekcja 58,59,60: Szyfrowanie niesymetryczne RSA

  • Wady szyfrów symetrycznych
  • Niesymetryczny system szyfrowania RSA
  • Tworzenie klucza prywatnego i publicznego
  • Zasada szyfrowania i rozszyfrowywania RSA
  • Ćwiczenia z prostą aplikacją RSA w języku C++
  • Zastosowania RSA: bezpieczne połączenie internetowe, podpis elektroniczny dokumentów

3

28.

II/2

Lekcja 61,62,63: Obliczanie pierwiastka, szybkie obliczanie potęg

  • Pierwiastek całkowity, algorytm, program C++
  • Pierwiastek rzeczywisty, wzór Newtona i jego zbieżność, algorytm, program C++
  • Obliczanie potęgi przez rozkład wykładnika na ciąg potęg liczby 2, algorytm, program C++

3

29.

II/2

Lekcja 64,65,66: Miejsca zerowe funkcji

  • Definicja miejsca zerowego
  • Warunki numerycznego obliczania miejsc zerowych funkcji
  • Metoda połowienia – bisekcji, algorytm, program C++
  • Metoda fałszywej prostej – regula falsi, algorytm, program C++

3

30.

II/2

Lekcja 67,68,69: Wzór Herona

  • Obliczanie pola trójkąta wzorem Herona
  • Obliczanie pola trójkąta zadanego współrzędnymi wierzchołków

3

31.

II/2

Lekcja 70,71,72: Schemat Hornera

  • Obliczanie wartości wielomianu – analiza złożoności obliczeniowej
  • Wprowadzenie wzoru Hornera – analiza złożoności obliczeniowej
  • Algorytm i program C++
  • Zastosowanie wzoru Hornera – obliczanie wartości liczb pozycyjnych przy różnych podstawach, algorytm, program C++

3

32.

II/2

Lekcja 73,74,75: Sortowanie

  • Definicja problemu sortowania
  • Rodzaje uporządkowań zbiorów
  • Sortowanie bąbelkowe, algorytm, program C++
  • Sortowanie przez wybór, algorytm, program C++
  • Sortowanie przez wstawianie, algorytm, program C++
  • Analiza złożoności algorytmów sortujących

3

33.

II/2

Lekcja 76,77,78: Sortowanie przez scalanie i sortowanie szybkie

  • Algorytm sortowania przez scalanie, program C++, analiza złożoności
  • Algorytm sortowania szybkiego, program C++, analiza złożoności – degradacja złożoności algorytmu do O(n2)

3

34.

II/2

Lekcja 79,80,81: Sortowanie stogowe

  • Pojęcie stogu
  • Budowa stogu, algorytm, program C++
  • Rozbiór stogu, algorytm, program C++
  • Sortowanie stogowe, algorytm, program C++

3

35.

II/2

Lekcja 82,83,84: Sortowanie kubełkowe i przez zliczanie

  • Ograniczenia algorytmów sortujących
  • Sortowanie w czasie O(n)
  • Sortowanie kubełkowe, algorytm, program C++
  • Sortowanie przez zliczanie, algorytm, program C++

3

36.

II/2

Lekcja 85,86,87: Algorytmy geometryczne

  • Położenie punktów względem prostej
  • Przynależność punktu do odcinka
  • Znajdowanie punktu przecięcia się dwóch odcinków

3

37.

II/2

Lekcje 88,89,90: Stos i ONP

  • Pojęcie stosu
  • Tworzenie stosu w tablicy, operacje pop i push
  • Algorytm zamiany wyrażenia arytmetycznego na ONP
  • Algorytm obliczania wartości wyrażenia ONP

3

38.

II/2

Lekcje 91: Kompresja danych

  • Pojęcie kompresji stratnej i bezstratnej – pliki JPG, GIF
  • Algorytm RLE, program C++
  • Kody bezprzystankowe – kod Huffmana

1

39.

II/2

Lekcja 92,93: Struktury dynamiczne

  • Pojęcie wskaźnika
  • Przydział pamięci operatorem new i zwalnianie poleceniem delete
  • Tablica jako wskaźnik i wskaźnik jako tablica

2

40.

II/2

Lekcja 94,95,96: Lista jednokierunkowa

  • Rodzaje list
  • Budowa elementu listy
  • Klasa list
  • Dodawanie elementu do listy
  • Usuwanie elementu z listy
  • Przechodzenie listy
  • Wyszukiwanie danych na liście

3

41.

II/2

Lekcja 97,98,99: Zastosowania list

  • Stos
  • Kolejka

3

42.

II/2

Lekcja 100,101,102: Proste algorytmy na listach

  • Odwracanie listy
  • Usuwanie duplikatów
  • Sortowanie list

3

43.

III/1

Lekcja 103,104,105: Drzewa

  • Rodzaje drzew
  • Drzewo binarne zrównoważone – reprezentacja w tablicy
  • Drzewo binarne – reprezentacja dynamiczna
  • Przechodzenie drzewa, metody DFS i BFS

3

44.

III/1

Lekcja 106,107,108: Grafy

  • Rodzaje grafów: skierowane, nieskierowane, ważone
  • Sposoby reprezentacji grafów: macierz sąsiedztwa, macierz incydencji, listy sąsiedztwa
  • Przechodzenie grafu: metody DFS i BFS
  • Zastosowania metod DFS i BFS (sprawdzanie spójności grafu, wyszukiwanie najkrótszej ścieżki)

3

45.

III/1

Lekcja 109,110,111: Metody zachłanne

  • Definicja metody zachłannej
  • Wydawanie reszty
  • Problem plecakowy

3

46.

III/1

Lekcja 112,113,114: Algorytmy rekurencyjne

  • Rekurencja a iteracja
  • Rekurencyjne rozwiązywanie problemu wież Hanoi
  • Algorytm rekurencyjny z wycofywaniem się
  • Rekurencyjne rozwiązywanie problemu n hetmanów

3

47.

III/1

Lekcja 115,116,117,118,119,120: Projekt wybranej aplikacji

Uczniowie realizują w grupach projekt aplikacji rozwiązującej określony problem. Projekt jest na koniec prezentowany i oceniany.

6

Internet i bazy danych

49.

III/1

Lekcja 121,122,123: Sieci komputerowe

  • Terminologia sieciowa
  • Pojęcie sieci komputerowej
  • Budowa sieci komputerowych LAN, MAN i WAN
  • Własności sieci typu gwiazda, pierścień i magistrala
  • Protokół sieciowy – model warstwowy OSI
  • Identyfikacja komputera w sieci lokalnej – numer MAC
  • Urządzenia sieciowe i ich funkcje: repeater, koncentrator, mostek, switch, router

3

50.

III/1

Lekcja 124,125,126: Konfiguracja połączenia internetowego

  • Rodzaje połączeń z Internetem
  • Protokół internetowy
  • Odczyt i interpretacja ustawień internetowych
  • Co to jest DHCP i jak działa
  • Testowanie połączenia internetowego
  • Diagnozowanie błędów
  • Instalacja komputera w Internecie

3

51.

III/1

Lekcja 127,128,129: Tworzenie interaktywnych stron WWW

  • Pojęcie skryptu i języka interpretowanego
  • Co to jest JavaScript
  • Związek JavaScript z językiem C++
  • Sposoby osadzania kodu JavaScript w dokumencie HTML
  • Obsługa zdarzeń
  • Dostęp do znaczników HTML z poziomu JavaScript

3

52.

III/1

Lekcja 130,131,132: Tworzenie przykładowych stron ze skryptami JavaScript

  • Strona obliczeniowa
  • Zegar i datownik
  • Galeria zdjęć

3

53.

III/1

Lekcja 133,134,135: Baza danych MSAccess

  • Tworzenie tabel
  • Określanie relacji
  • Kwerendy
  • Raporty
  • Interfejs WWW

3

54.

III/1

Lekcja 136,137,138: System phpMyAdmin

  • Co to jest phpMyAdmin
  • Interfejs WWW w phpMyAdmin
  • Tworzenie tablic
  • Wykonywanie poleceń SQL

3

55.

III/2

Lekcja 139,140,141,142,143,144: Wprowadzenie do języka PHP

  • Co to jest PHP
  • Związek PHP z językiem C++
  • Zasady osadzania kodu na stronie WWW
  • Praca w środowisku serwera Apache z rozszerzeniem PHP
  • Komunikacja strony WWW z serwerem poprzez formularze

6

56.

III/2

Lekcja 145,146,147: Baza danych w PHP

  • Logowanie do bazy w PHP
  • Dostęp do tabel
  • Wysyłanie zapytań SQL z poziomu PHP oraz interpretacja odpowiedzi
  • Współpraca strony WWW z bazą danych poprzez formularze oraz skrypty PHP

3

57.

III/2

Lekcja: 148,149,150,151,152,153: Projekt PHP

Uczniowie w grupach realizują wybrany projekt PHP na ocenę.

6

Multimedia

58.

III/2

Lekcja 154,155,156: Tworzenie animacji FLASH

  • Obsługa środowiska Macromedia Flash
  • Animacje poklatkowe
  • Animacje automatyczne
  • Animacje reklamowe

3

59.

III/2

Lekcja 157,158,159: ActionScript

  • Co to jest ActionScript
  • Związek ActionScript z językiem C++
  • Tworzenie prostych programów w ActionScript

3

60.

III/2

Lekcja 160,161,162: Animacje na stronach WWW

  • Projekt animacji FLASH
  • Eksport na stronę WWW
  • Obróbka strony WWW

3

61.

III/2

Lekcja: 163,164,165: Edytor grafiki Inkscape

  • Obrazy rastrowe i wektorowe
  • Edytor Inkscape
  • Rysowanie odcinków i krzywych
  • Zmiana parametrów linii: grubość, kolor, styl
  • Rysowanie prostokątów i elips
  • Przekształcenia: przesunięcie, skalowanie, odbijanie lustrzane, obroty

3

62.

III/2

Lekcja 166: Grafika wektorowa

  • Wypełnianie figur kolorem, wzorem, teksturą – modele barw
  • Zastosowanie przezroczystości
  • Zmiana kształtu figury: edycja węzłów krzywej

1

63.

III/2

Lekcja 167,168: Grafika na stronie WWW

  • Tworzenie w CorelDraw/Inkscape grafiki dla strony tytułowej
  • Eksport grafiki do formatu JPG lub GIF
  • Umieszczanie grafiki na stronie WWW
  • Tworzenie przycisków współpracujących z JavaScript

2

64.

III/2

Lekcja 169,170,171: Edycja filmów

  • Edytor MovieMaker (lub inny)
  • Dodawanie filmów
  • Określanie przejść pomiędzy filmami
  • Dodawanie napisów

3

Arkusz kalkulacyjny Excel

65.

III/2

Lekcja 172,173,174: Programowanie arkusza

  • Co to jest Visual Basic for Applications
  • Edytor VBA
  • Tworzenie funkcji w VBA
  • Współpraca funkcji w VBA z arkuszem
  • Tworzenie zmiennych w VBA: instrukcja Dim
  • Instrukcje VBA: if, while, do, for

3

66.

III/2

Lekcja 175,176,177: Makra w Excelu

  • Tworzenie procedur w VBA
  • Wywoływanie procedur z poziomu Excela
  • Dostęp w procedurach do arkusza: obiekty Cells i Range
  • Zapis prostych algorytmów w Excelu z wykorzystaniem VBA

3

67.

III/2

Lekcja 178,179,180: Rozwiązywanie testów maturalnych

  • Rozwiązywanie typowych zadań maturalnych w środowisku C++, Excel, Access

3

Wymagania dydaktyczne

Zasady działania komputera

dopuszczający

dostateczny

dobry

bardzo dobry

celujący

Określa następujące pojęcia: bit, bajt. Zna pojęcie systemu pozycyjnego. Wymienia części składowe zestawu komputerowego, podaje ich parametry i przeznaczenie. Rozróżnia ro­dzaje pamięci komputera, określa ich własności i przeznaczenie. Wie, co to jest system opera­cyjny, i korzysta z jego podstawowych funkcji. Wykonuje podstawowe operacje na plikach i folderach.

Wie, co to jest system binarny, i potrafi dokonać zamiany liczby z systemu dziesiętnego na binarny i odwrotnie. Potrafi sklasyfikować środki (urządzenia) i narzędzia (oprogramowanie) technologii informacyjnej. Wie, jak działa komputer. Wyjaśnia rolę procesora. Rozumie organizację pamięci komputerowych. Potrafi omówić funkcje systemu operacyjnego. Zna zasady ochrony plików. Potrafi nadać podstawowe atrybuty plikom, jak też wyszukać poszczególne pliki.

Potrafi wykonać działania arytmetyczne na liczbach binarnych (dodawanie i odejmowanie). Zna system szesnastkowy i potrafi wykonać konwersję liczb binarnych na liczby w systemie szesnastkowym i odwrotnie. Analizuje model logiczny komputera. Wie, co to jest kod ASCII. Potrafi wymienić rodzaje aktualnie używanych komputerów. Zna metody wyszukiwa­nia plików.

Potrafi omówić dokładnie działanie procesora. Potrafi wykonać dowolną konwersję pomiędzy systemem dziesiętnym, dwójkowym i szesnastkowym. Zna sposób zapisu liczby całkowitej i rzeczywistej (zmiennoprzecinkowej). Umie wymienić przynajmniej dwa systemy operacyjne i podać ich najważniejsze funkcje. Zna zaawansowane metody wyszukiwania i odzyskiwania plików. Zna przynajmniej jeden algorytm szyfrowania danych. Potrafi zaszyfrować i odszyfrować prosty tekst.

Zna operacje logiczne na liczbach binarnych i przesunięcia bitowe. Potrafi zapisać w języku programowania wyso­kiego poziomu algorytm konwersji liczb z dowolnego systemu pozycyjnego na inny. Wykonuje sprawnie operacje na liczbach zapisanych w różnych systemach pozycyjnych. Potrafi odzyskać utracony plik, stosując zaawansowane metody. Potrafi omówić różne systemy operacyjne, wskazać ich najważniejsze funkcje. Samodzielnie wyszukuje informacje na temat kompresji i szyfrowania danych. Zna kilka sposobów szyfrowania informacji. Potrafi zapisać algorytm szy­frowania w postaci programu. Zna działanie algorytmu kompresji.

Rozwiązywanie problemów algorytmicznych

dopuszczający

dostateczny

dobry

bardzo dobry

celujący

Wie, co to jest algorytm. Określa dane do zadania oraz wyniki. Zna podstawowe zasady graficznego prezentowania algorytmów: podstawowe rodzaje bloków, ich przeznaczenie i sposoby umieszczania w schemacie blokowym. Potrafi narysować (odręcznie) schemat blokowy algorytmu liniowego.

Wymienia przykłady czynności i działań w życiu codziennym oraz zadań szkolnych, które uważa się za algorytmy. Zna pojęcie specyfikacji zadania. Zna wybrane sposoby prezentacji algorytmów. Przedstawia algorytm w postaci listy kroków. Tworzy schemat blokowy algorytmu z warunkiem prostym i pętlą. Podczas rysowania schematów blokowych potrafi wykorzystać Autokształty z edytora tekstu. Korzysta z programu edukacyjnego do symulacji działania algorytmu skonstruowanego w postaci schematu blokowego.

Określa zależności między problemem, algorytmem a programem komputerowym. Potrafi odpowiedzieć na pytanie, czy istnieją działania, które nie mają cech algorytmów. Przedstawia dokładną specyfikację dowolnego zadania. Zna znaczenie i działanie instrukcji symbolicznego języka programowania (pseudojęzyka). Potrafi zapisać algorytm z warunkami zagnieżdżonymi i pętlą w wybranej postaci. Potrafi skonstruować algorytm z warunkami zagnieżdżonymi i pętlą za pomocą programu edukacyjnego.

Zapisuje dowolny algorytm w wybranej przez siebie postaci (notacji), m.in. w pseudojęzyku. Zapisuje algorytmy z pętlą zagnieżdżoną. Potrafi przeprowadzić szczegółową analizę poprawności konstrukcji schematu blokowego. Analizuje działanie algorytmu dla przykładowych danych. Stosuje swobodnie oprogramowanie edukacyjne do graficznej prezentacji i analizy algorytmów.

Przestrzega zasad zapisu algorytmów w zadanej postaci (notacji). Potrafi trafnie dobrać do algorytmu sposób prezentacji. Stosuje poznane metody prezentacji algorytmów w opisie zadań (problemów) z innych przedmiotów szkolnych oraz różnych dziedzin życia. Potrafi samodzielnie zapoznać się z nowym programem edukacyjnym przeznaczonym do konstrukcji schematów blokowych. Potrafi zaproponować własny pseudojęzyk.

Techniki algorytmiczne i algorytmy klasyczne

dopuszczający

dostateczny

dobry

bardzo dobry

celujący

Określa sytuacje warunkowe. Podaje przykłady zadań, w których występują sytuacje warunkowe. Wie, na czym polega powtarzanie tych samych operacji. Potrafi omówić, na przykładzie, algorytm znajdowania najmniejszego z trzech elementów.

Potrafi odróżnić algorytm liniowy od algorytmu z warunkami (z rozgałęzieniami). Zna pojęcie iteracji i rozumie pojęcie algorytmu iteracyjnego. Podaje ich przykłady. Wie, od czego zależy liczba powtórzeń.

Potrafi omówić algorytm porządkowania elementów (metodą przez wybór) na praktycznym przykładzie, np. wybierając najwyższego ucznia z grupy. Omawia i analizuje wybrane techniki sortowania w postaci gotowych schematów blokowych, skonstruowanych w programie edukacyjnym.

Analizuje algorytmy, w których występują iteracje. Zna sposoby zakończenia iteracji. Określa kroki iteracji. Potrafi zapisać w wybranej notacji np. algorytm sumowania n liczb, algorytm obliczania silni, znajdowania minimum w ciągu n liczb, algorytm rozwiązywania równania liniowego.

Zna iteracyjną postać algorytmu Euklidesa. Zna przynajmniej dwie techniki sortowania, np. bąbelkowe i przez wybór. Określa problemy, w których występuje rekurencja i podaje przykłady „zjawisk rekurencyjnych” – wziętych z życia i zadań szkolnych. Zna rekurencyjną realizację wybranego algorytmu, np. silni, liczb Fibonacciego, NWD.

Zna metodę „dziel i zwyciężaj”, algorytm generowania liczb Fibonacciego, schemat Hornera. Omawia ich iteracyjną realizację i potrafi przedstawić jeden z nich w wybranej notacji. Zna inne algorytmy sortowania, np. kubełkowe, przez wstawianie. Zna przynajmniej jeden algorytm numeryczny, np. obliczanie wartości pierwiastka kwadratowego.

Wskazuje różnicę między rekurencją a iteracją. Zna rekurencyjną realizację wybranych algorytmów, np. silnię i algorytm Euklidesa. Potrafi zamienić algorytm zapisany iteracyjnie na postać rekurencyjną.

 

Rozumie dokładnie technikę rekurencji (znaczenie stosu). Potrafi ocenić, kiedy warto stosować iterację, a kiedy rekurencję. Zna trudniejsze algorytmy, np. wieże Hanoi, problem ośmiu hetmanów.

Zna inne techniki sortowania, np. sortowanie przez scalanie ciągów i metodę szybką. Potrafi zapisać je w różnych notacjach (również w języku programowania wysokiego poziomu). Zna inne algorytmy numeryczne, np. wyznaczanie miejsca zerowego funkcji. Korzysta samodzielnie z dodatkowej literatury.

Analiza algorytmów

dopuszczający

dostateczny

dobry

bardzo dobry

celujący

Potrafi zanalizować przebieg algorytmu dla przykładowych danych i ocenić w ten sposób jego poprawność.

Potrafi ocenić poprawność działania algorytmu i jego zgodność ze specyfikacją. Określa liczbę prostych działań zawartych w algorytmie.

Rozumie, co to jest złożoność algorytmu i potrafi określić liczbę operacji wykonywanych na elementach zbioru w wybranym algorytmie sortowania.

Potrafi porównać złożoność różnych algorytmów tego samego zadania dla tych samych danych. Wie, kiedy algorytm jest uniwersalny.

Ocenia złożoność czasową i pamięciową algorytmu. Zna odpowiednie wzory.

Zasady programowania w języku C++

dopuszczający

dostateczny

dobry

bardzo dobry

celujący

Zna klasyfikację języków programowania. Zna ogólną budowę programu w języku C++ i najważniejsze elementy języka – słowa kluczowe, instrukcje, wyrażenia, zasady składni. Potrafi zrealizować prosty algorytm liniowy w języku C++; potrafi skompilować i uruchomić gotowy program.

Zapisuje program w czytelnej postaci – stosuje wcięcia, komentarze. Rozumie pojęcia: implementacja, kompilacja, uruchomienie, testowanie. Rozumie znaczenie i działanie podstawowych instrukcji wybranego języka C++. Rozróżnia i poprawia błędy kompilacji i błędy wykonania. Potrafi zrealizować algorytmy iteracyjne w języku C++.

Zna podstawowe zasady poprawnego programowania; testuje tworzone programy; wie, jak uniknąć problemów, takich jak np. zapętlenie się programu.

Potrafi prezentować złożone algorytmy (z podprogramami) w C++. Zna rekurencyjne realizacje prostych algorytmów. Rozumie i stosuje zasady programowania strukturalnego. Wie, na czym polega różnica pomiędzy przekazywaniem parametrów przez referencję i przez wartość w funkcjach C++. Wie, jakie znaczenie ma zasięg działania zmiennej. Rozumie zasady postępowania przy rozwiązywaniu problemu metodą zstępującą.

Zna zasady działania wybranych algorytmów sortowania.

Wie, jaka jest różnica między językiem wysokiego poziomu a językiem maszynowym; potrafi określić rolę procesora i pamięci operacyjnej w działaniu programów. Potrafi realizować nawet bardzo złożone algorytmy. Potrafi prezentować algorytmy rekurencyjne w postaci programu; potrafi zamienić rozwiązanie iteracyjne algorytmu na rekurencyjne. Zapisuje w postaci programu wybrane algorytmy sortowania.

Opracowuje złożony program w kilkuosobowej grupie – umie podzielić zadania, ustalić sposoby przekazywania danych pomiędzy procedurami.

Ocenia efektywność działania programu. Wie, na czym polega programowanie obiektowe i zdarzeniowe. Potrafi stosować techniki programowania dynamicznego lub programowania obiektowego. Zna i rozumie podobieństwa i różnice w strukturze programu zapisanego w różnych językach programowania – w deklaracji zmiennych i procedur, w składni i zasadach działania poszczególnych procedur. Sprawnie korzysta z dodatkowej, fachowej literatury.

Dobór struktur danych do rozwiązywanego problemu

dopuszczający

dostateczny

dobry

bardzo dobry

celujący

Wymienia przykłady prostych struktur danych. Potrafi zadeklarować zmienne typu liczbowego (całkowite, zmiennoprzecinkowe) i stosować je w zadaniach.

Wie, czym jest zmienna w programie i co oznacza przypisanie jej konkretnej wartości. Rozróżnia struktury danych: proste i złożone. Podaje przykłady. Deklaruje typy złożone.

Potrafi zastosować łańcuchowy i tablicowy typ danych w zadaniach.

Rozumie, na czym polega dobór struktur danych do algorytmu. Potrafi zastosować strukturalny typ danych.

Zna dynamiczne struktury danych. Potrafi zastosować zmienne typu wskaźnikowego w zadaniach. Zna struktury listowe, np. stos, kolejkę, listę, drzewo, graf. Potrafi je wykorzystać przy rozwiązywaniu określonych problemów, Rozumie i potrafi zastosować klasy obiektowe języka C++

Sieci komputerowe i bazy danych

dopuszczający

dostateczny

dobry

bardzo dobry

celujący

Zna pojęcie sieci komputerowej, potrafi wymienić jej rodzaje. Zna pojęcie logowania. Potrafi wymienić kilka cech pracy w sieci, odróżniających ją od pracy na autonomicznym komputerze. Zna kilka sposobów połączenia z Internetem.

Wymienia korzyści płynące z korzystania z sieci. Zna podstawowe klasy i topologie sieciowe. Potrafi wymienić urządzenia i elementy sieciowe oraz omówić ich ogólne przeznaczenie. Zna cechy systemu działającego w szkolnej pracowni. Orientuje się – w zakresie podstawowym – w działaniu Internetu.

Zna znaczenie protokołu w sieciach lokalnych oraz TCP/IP. Wie, na czym polega wymiana informacji w sieci. Zna zasady pracy w sieci. Potrafi omówić zagrożenia płynące z sieci. Charakteryzuje różne połączenia z Internetem; potrafi omówić przesyłanie pakietów danych w Internecie.

Zna schemat działania sieci komputerowych. Potrafi wymienić zalety i wady różnych topologii sieci. Charakteryzuje topologie gwiazdy, magistrali i pierścienia. Umie z pomocą nauczyciela zrealizować małą sieć komputerową – skonfigurować jej składniki, udostępnić pliki, dyski, drukarki, dodać użytkowników.

Omawia szczegółowo model warstwowy sieci. Omawia różne systemy sieciowe. Dokonuje ich analizy porównawczej. Potrafi samodzielnie zbudować małą sieć domową.

Tendencje w rozwoju informatyki i jej zastosowań

dopuszczający

dostateczny

dobry

bardzo dobry

celujący

Potrafi omówić historię komputerów. Umie wskazać ogólny kierunek zmian w technologiach komputerowych. Zna podstawowe zasady netykiety.

Potrafi określić nowoczesne trendy w zastosowaniu urządzeń komputerowych. Jest w stanie omówić prawne i społeczne aspekty zastosowania informatyki.

Potrafi wskazać nowości w zakresie usług internetowych oraz odszukać informacje na temat najnowszych pomysłów na komputery.

Przygotowuje analizę porównawczą, pokazującą na przestrzeni wielu lat rozwój informatyki, w tym sieci komputerowych, oraz multimediów.

Wskazuje tendencje w rozwoju informatyki i jej zastosowania, dostrzegając przeobrażenia w tej dziedzinie w kraju i na świecie.

Relacyjne bazy danych

dopuszczający

dostateczny

dobry

bardzo dobry

celujący

Podaje obszary zastosowań baz danych – na przykładach z najbliższego otoczenia – szkoły, instytucji naukowych, społecznych i gospodarczych. Podaje przykłady programów do tworzenia baz danych. Potrafi wykonać podstawowe operacje na bazie danych przygotowanej w jednej tabeli (wprowadzanie, redagowanie, sortowanie, wyszukiwanie, prezentacja). Potrafi uporządkować bazę rosnąco lub malejąco według jednego lub kilku pól.

Rozumie metody przetwarzania danych na przykładzie gotowej bazy danych. Określa podstawowe pojęcia (rekord, pole, typ pola). Samodzielnie tworzy w jednej tabeli bazę danych, składającą się z kilku pól różnych typów. Projektuje przykładowy formularz i raport. Potrafi wykonywać operacje przetwarzania danych w bazie składającej się z kilku rekordów. Zna zasady przygotowania korespondencji seryjnej.

Projektuje relacyjną bazę danych składającą się z dwóch tabel połączonych relacją (na zadany temat). Projektuje formularz i raport według wskazówek nauczyciela. Zna zasady definiowania kluczy podstawowych. Drukuje wybrane rekordy, formularze i raporty. Łączy informacje z bazy danych z dokumentami innych programów, np. edytora tekstu czy arkusza kalkulacyjnego.

Potrafi wytłumaczyć pojęcie relacji. Projektuje relacyjną bazę danych składającą się z trzech lub większej liczby tabel. Samodzielnie ustala zawartość bazy (rodzaj informacji). Zna kilka rodzajów formularzy i raportów, w tym raporty w postaci wykresów. Umie zaprojektować samodzielnie wygląd formularza i raportu. Zna pojęcie indeksu. Odróżnia sortowanie od indeksowania. Potrafi w tworzonej bazie ustalić klucze indeksu.

Zna dokładnie wybrany program do projektowania baz danych. Potrafi samodzielnie zaprojektować bazę danych, korzystając z wybranego narzędzia (programu). Projekt bazy opiera na rzeczywistych informacjach, aby można było wykorzystać ją w praktyce, np. w szkole czy w domu. Sprawnie korzysta z dodatkowej, fachowej literatury.

 


   I Liceum Ogólnokształcące   
im. Kazimierza Brodzińskiego
w Tarnowie

©2024 mgr Jerzy Wałaszek

Dokument ten rozpowszechniany jest zgodnie z zasadami licencji
GNU Free Documentation License.

Pytania proszę przesyłać na adres email: i-lo@eduinf.waw.pl

W artykułach serwisu są używane cookies. Jeśli nie chcesz ich otrzymywać,
zablokuj je w swojej przeglądarce.
Informacje dodatkowe