Zachodniopomorski Uniwersytet Technologiczny w Szczecinie

Wydział Informatyki - Programowanie komputerów

Sylabus przedmiotu Wprowadzenie do algorytmiki:

Informacje podstawowe

Kierunek studiów Programowanie komputerów
Forma studiów studia niestacjonarne Poziom podyplomowe
Tytuł zawodowy absolwenta
Obszary studiów charakterystyki PRK
Profil
Moduł
Przedmiot Wprowadzenie do algorytmiki
Specjalność przedmiot wspólny
Jednostka prowadząca Katedra Systemów Multimedialnych
Nauczyciel odpowiedzialny Dariusz Frejlichowski <dfrejlichowski@wi.zut.edu.pl>
Inni nauczyciele
ECTS (planowane) 7,0 ECTS (formy) 7,0
Forma zaliczenia zaliczenie Język polski
Blok obieralny Grupa obieralna

Formy dydaktyczne

Forma dydaktycznaKODSemestrGodzinyECTSWagaZaliczenie
ćwiczenia audytoryjneA1 15 3,00,30zaliczenie
laboratoriaL1 14 2,00,30zaliczenie
wykładyW1 12 2,00,40zaliczenie

Wymagania wstępne

KODWymaganie wstępne
W-1Podstawowa obsługa komputera i przeglądarki internetowej.

Cele przedmiotu

KODCel modułu/przedmiotu
C-1Słuchacz zna i rozumie zasady myślenia algorytmicznego, metody reprezentowania algorytmów, potrafi dobrać metody reprezentacji algorytmów do określonego problemu, a także przedstawić wybrane problemy algorytmiczne z użyciem adekwatnych metod.

Treści programowe z podziałem na formy zajęć

KODTreść programowaGodziny
ćwiczenia audytoryjne
T-A-1Zapis liczb naturalnych w systemach pozycyjnych: dwójkowym, ósemkowym i szesnastkowym. Podstawy arytmetyki w systemie dwójkowym. Wybrane formaty kodowania liczb całkowitych.3
T-A-2Specyfikacja problemu. Przygotowanie specyfikacji dla wybranych problemów algorytmicznych. Praktyczny dobór metody reprezentowania algorytmów do określonego zadania.2
T-A-3Lista kroków jako najpopularniejsza tekstowa metoda reprezentowania algorytmów. Wykorzystanie w praktyce.2
T-A-4Schemat blokowy jako sposób reprezentacji algorytmów. Tworzenie schematów blokowych dla wybranych problemów algorytmicznych.3
T-A-5Diagram N-S jako alternatywna względem schematu blokowego graficzna metoda reprezentowania algorytmów. Wykorzystanie w wybranych zadaniach algorytmicznych.2
T-A-6Wykorzystanie w praktyce pozostałych metod reprezentacji algorytmów – opis słowny, prezentacja, pseudokod itd.2
T-A-7Kolokwium zaliczające formę zajęć1
15
laboratoria
T-L-1Wprowadzenie do zastosowania Blockly w praktycznej nauce myślenia algorytmicznego.2
T-L-2Reprezentacja i analiza algorytmów na bazie wybranych problemów. Analiza wybranych problemów z użyciem języka edukacyjnego Blockly.12
14
wykłady
T-W-1Zajścia organizacyjne: omówienie zasad uczestnictwa, celowości przedmiotu, zakresu tematycznego, ustalenie zasad i terminów zaliczenia przedmiotu na poszczególnych formach zajęć.1
T-W-2Podstawowe zagadnienia informatyczne związane z algorytmiką - reprezentacja danych w komputerze, systemy liczbowe, operacje logiczne.2
T-W-3Algorytmika - pojęcia podstawowe. Algorytmy - metody reprezentowania, analiza i projektowanie, standardowe notacje, własności.4
T-W-4Podstawowe problemy algorytmiczne - sortowanie, rekurencja, iteracja, metoda "dziel i zwyciężaj", programowanie dynamiczne, algorytmy zachłanne, algorytmy heurystyczne, algorytmy aproksymacyjne.4
T-W-5Pisemne zaliczenie wykładu.1
12

Obciążenie pracą studenta - formy aktywności

KODForma aktywnościGodziny
ćwiczenia audytoryjne
A-A-1Uczestnictwo w zajeciach ćwiczeniowych15
A-A-2Przygotowanie do zajęć na podstawie wiedzy nabytej na wykładzie i pracy samodzielnej24
A-A-3Samodzielna analiza zaleconej na wykładzie literatury oraz materiału przedstawionego na wykładzie. Powtarzanie i przyswajanie nabywanej wiedzy.16
A-A-4Przygotowanie do kolokwium19
74
laboratoria
A-L-1Uczestnictwo w zajęciach12
A-L-2Samodzielna instalacja oprogramowania wymaganego do uzupełniania wiedzy nabytej na zajęciach10
A-L-3Samodzielne poszukiwanie źródeł dodatkowej wiedzy, związanej z materiałem przedstawianym na zajęciach.14
A-L-4Powtarzanie materiału realizowanego na zajęciach laboratoryjnych15
51
wykłady
A-W-1Uczestniczenie w wykładach.12
A-W-2Samodzielna analiza zaleconej na wykładzie literatury oraz materiału przedstawionego na wykładzie. Powtarzanie i przyswajanie nabywanej wiedzy.14
A-W-3Przygotowanie do pisemnej formy końcowego zaliczenia wykładu.23
49

Metody nauczania / narzędzia dydaktyczne

KODMetoda nauczania / narzędzie dydaktyczne
M-1Wykład informacyjny.
M-2Metoda przypadków.
M-3Dyskusja dydaktyczna.
M-4Ćwiczenia przedmiotowe.
M-5Ćwiczenia laboratoryjne.
M-6Gry dydaktyczne.

Sposoby oceny

KODSposób oceny
S-1Ocena formująca: Ocena formująca - na zajęciach laboratoryjnych, polagająca na podstawie systematycznej oceny rozwiązań postawionych przez wykładowcę problemów.
S-2Ocena podsumowująca: Ocena podsumowująca - na wykładach (test zaliczeniowy) i zajęciach ćwiczeniowych (kolokwium końcowe).

Zamierzone efekty uczenia się - wiedza

Zamierzone efekty uczenia sięOdniesienie do efektów kształcenia dla kierunku studiówOdniesienie do efektów zdefiniowanych dla obszaru kształceniaCel przedmiotuTreści programoweMetody nauczaniaSposób oceny
PK_10-_01_W01
Ma podstawową wiedzę dotyczącą systemów liczbowych, oprogramowania
PK_10-_W01C-1T-L-1, T-L-2, T-A-1, T-W-2M-1, M-4, M-5S-2, S-1
PK_10-_01_W02
Ma podstawową wiedzę w zakresie algorytmizacji i struktur danych
PK_10-_W02C-1T-A-2, T-A-3, T-A-4, T-A-5, T-A-6, T-W-4, T-W-3M-1, M-4S-2

Zamierzone efekty uczenia się - umiejętności

Zamierzone efekty uczenia sięOdniesienie do efektów kształcenia dla kierunku studiówOdniesienie do efektów zdefiniowanych dla obszaru kształceniaCel przedmiotuTreści programoweMetody nauczaniaSposób oceny
PK_10-_01_U01
Potrafi sformułować problem algorytmiczny, zaproponować odpowiednią technikę algorytmiczną do jego rozwiązania oraz metodę reprezentacji do jego przedstawienia
PK_10-_U01C-1T-A-2, T-A-3, T-A-4, T-A-5, T-A-6M-1, M-2, M-4S-2
PK_10-_01_U02
Potrafi przeanalizować i przedstawić w języku edukacyjnym Blockly wybrane problemy algorytmiczne.
PK_10-_U02, PK_10-_U03C-1T-L-1, T-L-2M-5, M-6S-1

Zamierzone efekty uczenia się - inne kompetencje społeczne i personalne

Zamierzone efekty uczenia sięOdniesienie do efektów kształcenia dla kierunku studiówOdniesienie do efektów zdefiniowanych dla obszaru kształceniaCel przedmiotuTreści programoweMetody nauczaniaSposób oceny
PK_10-_01_K01
Rozumie rolę programisty w procesie wytwarzania oprogramowania
PK_10-_K02C-1T-L-1, T-L-2, T-W-1M-3S-1

Kryterium oceny - wiedza

Efekt uczenia sięOcenaKryterium oceny
PK_10-_01_W01
Ma podstawową wiedzę dotyczącą systemów liczbowych, oprogramowania
2,0
3,0Słuchacz rozumie ideę zapisu binarnego, heksadecymalnego i oktalnego w reprezentacji danych w komputerze, zna podstawy arytmetyki w tych systemach. Posługuje się oprogramowaniem do reprezentacji algorytmów.
3,5
4,0
4,5
5,0
PK_10-_01_W02
Ma podstawową wiedzę w zakresie algorytmizacji i struktur danych
2,0
3,0Słuchacz potrafi zdefiniować podstawowe pojęcia z zakresu algorytmiki, wskazać i scharakteryzować poznane na zajęciach metody reprezentowania algorytmów, przedstawić określony problem z użyciem wybranej spośród nich.
3,5
4,0
4,5
5,0

Kryterium oceny - umiejętności

Efekt uczenia sięOcenaKryterium oceny
PK_10-_01_U01
Potrafi sformułować problem algorytmiczny, zaproponować odpowiednią technikę algorytmiczną do jego rozwiązania oraz metodę reprezentacji do jego przedstawienia
2,0
3,0Słuchacz potrafi z użyciem odpowiedniej metody reprezentowania algorytmów przedstawić wskazane na zajęciach problemy algorytmiczne.
3,5
4,0
4,5
5,0
PK_10-_01_U02
Potrafi przeanalizować i przedstawić w języku edukacyjnym Blockly wybrane problemy algorytmiczne.
2,0
3,0Słuchacz potrafi zrealizować zadanie przedstawione w Blockly w oparciu o umiejętność myślenia algorytmicznego oraz podstawowe zasady programowania.
3,5
4,0
4,5
5,0

Kryterium oceny - inne kompetencje społeczne i personalne

Efekt uczenia sięOcenaKryterium oceny
PK_10-_01_K01
Rozumie rolę programisty w procesie wytwarzania oprogramowania
2,0
3,0Słuchacz rozumie związek pomiędzy myśleniem algorytmicznym a sprawną implementacją dowolnego zagadnienia w językach programowania.
3,5
4,0
4,5
5,0

Literatura podstawowa

  1. Thomas H. Cormen , Charles E. Leiserson , Ronald L. Rivest , Clifford Stein, Wprowadzenie do algorytmów, Wydawnictwo Nakowo-Techniczne, Warszawa, 2022
  2. David Harel, Rzecz o istocie informatyki - algorytmika, Wydawnictwo Nakowo-Techniczne, Warszawa, 2008

Treści programowe - ćwiczenia audytoryjne

KODTreść programowaGodziny
T-A-1Zapis liczb naturalnych w systemach pozycyjnych: dwójkowym, ósemkowym i szesnastkowym. Podstawy arytmetyki w systemie dwójkowym. Wybrane formaty kodowania liczb całkowitych.3
T-A-2Specyfikacja problemu. Przygotowanie specyfikacji dla wybranych problemów algorytmicznych. Praktyczny dobór metody reprezentowania algorytmów do określonego zadania.2
T-A-3Lista kroków jako najpopularniejsza tekstowa metoda reprezentowania algorytmów. Wykorzystanie w praktyce.2
T-A-4Schemat blokowy jako sposób reprezentacji algorytmów. Tworzenie schematów blokowych dla wybranych problemów algorytmicznych.3
T-A-5Diagram N-S jako alternatywna względem schematu blokowego graficzna metoda reprezentowania algorytmów. Wykorzystanie w wybranych zadaniach algorytmicznych.2
T-A-6Wykorzystanie w praktyce pozostałych metod reprezentacji algorytmów – opis słowny, prezentacja, pseudokod itd.2
T-A-7Kolokwium zaliczające formę zajęć1
15

Treści programowe - laboratoria

KODTreść programowaGodziny
T-L-1Wprowadzenie do zastosowania Blockly w praktycznej nauce myślenia algorytmicznego.2
T-L-2Reprezentacja i analiza algorytmów na bazie wybranych problemów. Analiza wybranych problemów z użyciem języka edukacyjnego Blockly.12
14

Treści programowe - wykłady

KODTreść programowaGodziny
T-W-1Zajścia organizacyjne: omówienie zasad uczestnictwa, celowości przedmiotu, zakresu tematycznego, ustalenie zasad i terminów zaliczenia przedmiotu na poszczególnych formach zajęć.1
T-W-2Podstawowe zagadnienia informatyczne związane z algorytmiką - reprezentacja danych w komputerze, systemy liczbowe, operacje logiczne.2
T-W-3Algorytmika - pojęcia podstawowe. Algorytmy - metody reprezentowania, analiza i projektowanie, standardowe notacje, własności.4
T-W-4Podstawowe problemy algorytmiczne - sortowanie, rekurencja, iteracja, metoda "dziel i zwyciężaj", programowanie dynamiczne, algorytmy zachłanne, algorytmy heurystyczne, algorytmy aproksymacyjne.4
T-W-5Pisemne zaliczenie wykładu.1
12

Formy aktywności - ćwiczenia audytoryjne

KODForma aktywnościGodziny
A-A-1Uczestnictwo w zajeciach ćwiczeniowych15
A-A-2Przygotowanie do zajęć na podstawie wiedzy nabytej na wykładzie i pracy samodzielnej24
A-A-3Samodzielna analiza zaleconej na wykładzie literatury oraz materiału przedstawionego na wykładzie. Powtarzanie i przyswajanie nabywanej wiedzy.16
A-A-4Przygotowanie do kolokwium19
74
(*) 1 punkt ECTS, odpowiada około 30 godzinom aktywności studenta

Formy aktywności - laboratoria

KODForma aktywnościGodziny
A-L-1Uczestnictwo w zajęciach12
A-L-2Samodzielna instalacja oprogramowania wymaganego do uzupełniania wiedzy nabytej na zajęciach10
A-L-3Samodzielne poszukiwanie źródeł dodatkowej wiedzy, związanej z materiałem przedstawianym na zajęciach.14
A-L-4Powtarzanie materiału realizowanego na zajęciach laboratoryjnych15
51
(*) 1 punkt ECTS, odpowiada około 30 godzinom aktywności studenta

Formy aktywności - wykłady

KODForma aktywnościGodziny
A-W-1Uczestniczenie w wykładach.12
A-W-2Samodzielna analiza zaleconej na wykładzie literatury oraz materiału przedstawionego na wykładzie. Powtarzanie i przyswajanie nabywanej wiedzy.14
A-W-3Przygotowanie do pisemnej formy końcowego zaliczenia wykładu.23
49
(*) 1 punkt ECTS, odpowiada około 30 godzinom aktywności studenta
PoleKODZnaczenie kodu
Zamierzone efekty uczenia sięPK_10-_01_W01Ma podstawową wiedzę dotyczącą systemów liczbowych, oprogramowania
Odniesienie do efektów kształcenia dla kierunku studiówPK_10-_W01Ma podstawową wiedzę dotyczącą systemów liczbowych, oprogramowania
Cel przedmiotuC-1Słuchacz zna i rozumie zasady myślenia algorytmicznego, metody reprezentowania algorytmów, potrafi dobrać metody reprezentacji algorytmów do określonego problemu, a także przedstawić wybrane problemy algorytmiczne z użyciem adekwatnych metod.
Treści programoweT-L-1Wprowadzenie do zastosowania Blockly w praktycznej nauce myślenia algorytmicznego.
T-L-2Reprezentacja i analiza algorytmów na bazie wybranych problemów. Analiza wybranych problemów z użyciem języka edukacyjnego Blockly.
T-A-1Zapis liczb naturalnych w systemach pozycyjnych: dwójkowym, ósemkowym i szesnastkowym. Podstawy arytmetyki w systemie dwójkowym. Wybrane formaty kodowania liczb całkowitych.
T-W-2Podstawowe zagadnienia informatyczne związane z algorytmiką - reprezentacja danych w komputerze, systemy liczbowe, operacje logiczne.
Metody nauczaniaM-1Wykład informacyjny.
M-4Ćwiczenia przedmiotowe.
M-5Ćwiczenia laboratoryjne.
Sposób ocenyS-2Ocena podsumowująca: Ocena podsumowująca - na wykładach (test zaliczeniowy) i zajęciach ćwiczeniowych (kolokwium końcowe).
S-1Ocena formująca: Ocena formująca - na zajęciach laboratoryjnych, polagająca na podstawie systematycznej oceny rozwiązań postawionych przez wykładowcę problemów.
Kryteria ocenyOcenaKryterium oceny
2,0
3,0Słuchacz rozumie ideę zapisu binarnego, heksadecymalnego i oktalnego w reprezentacji danych w komputerze, zna podstawy arytmetyki w tych systemach. Posługuje się oprogramowaniem do reprezentacji algorytmów.
3,5
4,0
4,5
5,0
PoleKODZnaczenie kodu
Zamierzone efekty uczenia sięPK_10-_01_W02Ma podstawową wiedzę w zakresie algorytmizacji i struktur danych
Odniesienie do efektów kształcenia dla kierunku studiówPK_10-_W02Ma podstawową wiedzę w zakresie algorytmizacji i struktur danych
Cel przedmiotuC-1Słuchacz zna i rozumie zasady myślenia algorytmicznego, metody reprezentowania algorytmów, potrafi dobrać metody reprezentacji algorytmów do określonego problemu, a także przedstawić wybrane problemy algorytmiczne z użyciem adekwatnych metod.
Treści programoweT-A-2Specyfikacja problemu. Przygotowanie specyfikacji dla wybranych problemów algorytmicznych. Praktyczny dobór metody reprezentowania algorytmów do określonego zadania.
T-A-3Lista kroków jako najpopularniejsza tekstowa metoda reprezentowania algorytmów. Wykorzystanie w praktyce.
T-A-4Schemat blokowy jako sposób reprezentacji algorytmów. Tworzenie schematów blokowych dla wybranych problemów algorytmicznych.
T-A-5Diagram N-S jako alternatywna względem schematu blokowego graficzna metoda reprezentowania algorytmów. Wykorzystanie w wybranych zadaniach algorytmicznych.
T-A-6Wykorzystanie w praktyce pozostałych metod reprezentacji algorytmów – opis słowny, prezentacja, pseudokod itd.
T-W-4Podstawowe problemy algorytmiczne - sortowanie, rekurencja, iteracja, metoda "dziel i zwyciężaj", programowanie dynamiczne, algorytmy zachłanne, algorytmy heurystyczne, algorytmy aproksymacyjne.
T-W-3Algorytmika - pojęcia podstawowe. Algorytmy - metody reprezentowania, analiza i projektowanie, standardowe notacje, własności.
Metody nauczaniaM-1Wykład informacyjny.
M-4Ćwiczenia przedmiotowe.
Sposób ocenyS-2Ocena podsumowująca: Ocena podsumowująca - na wykładach (test zaliczeniowy) i zajęciach ćwiczeniowych (kolokwium końcowe).
Kryteria ocenyOcenaKryterium oceny
2,0
3,0Słuchacz potrafi zdefiniować podstawowe pojęcia z zakresu algorytmiki, wskazać i scharakteryzować poznane na zajęciach metody reprezentowania algorytmów, przedstawić określony problem z użyciem wybranej spośród nich.
3,5
4,0
4,5
5,0
PoleKODZnaczenie kodu
Zamierzone efekty uczenia sięPK_10-_01_U01Potrafi sformułować problem algorytmiczny, zaproponować odpowiednią technikę algorytmiczną do jego rozwiązania oraz metodę reprezentacji do jego przedstawienia
Odniesienie do efektów kształcenia dla kierunku studiówPK_10-_U01Potrafi sformułować problem algorytmiczny, zaproponować odpowiednią technikę algorytmiczną do jego rozwiązania oraz metodę reprezentacji do jego przedstawienia
Cel przedmiotuC-1Słuchacz zna i rozumie zasady myślenia algorytmicznego, metody reprezentowania algorytmów, potrafi dobrać metody reprezentacji algorytmów do określonego problemu, a także przedstawić wybrane problemy algorytmiczne z użyciem adekwatnych metod.
Treści programoweT-A-2Specyfikacja problemu. Przygotowanie specyfikacji dla wybranych problemów algorytmicznych. Praktyczny dobór metody reprezentowania algorytmów do określonego zadania.
T-A-3Lista kroków jako najpopularniejsza tekstowa metoda reprezentowania algorytmów. Wykorzystanie w praktyce.
T-A-4Schemat blokowy jako sposób reprezentacji algorytmów. Tworzenie schematów blokowych dla wybranych problemów algorytmicznych.
T-A-5Diagram N-S jako alternatywna względem schematu blokowego graficzna metoda reprezentowania algorytmów. Wykorzystanie w wybranych zadaniach algorytmicznych.
T-A-6Wykorzystanie w praktyce pozostałych metod reprezentacji algorytmów – opis słowny, prezentacja, pseudokod itd.
Metody nauczaniaM-1Wykład informacyjny.
M-2Metoda przypadków.
M-4Ćwiczenia przedmiotowe.
Sposób ocenyS-2Ocena podsumowująca: Ocena podsumowująca - na wykładach (test zaliczeniowy) i zajęciach ćwiczeniowych (kolokwium końcowe).
Kryteria ocenyOcenaKryterium oceny
2,0
3,0Słuchacz potrafi z użyciem odpowiedniej metody reprezentowania algorytmów przedstawić wskazane na zajęciach problemy algorytmiczne.
3,5
4,0
4,5
5,0
PoleKODZnaczenie kodu
Zamierzone efekty uczenia sięPK_10-_01_U02Potrafi przeanalizować i przedstawić w języku edukacyjnym Blockly wybrane problemy algorytmiczne.
Odniesienie do efektów kształcenia dla kierunku studiówPK_10-_U02Potrafi przeanalizować i przedstawić w języku edukacyjnym Blockly wybrane problemy algorytmiczne
PK_10-_U03Potrafi mysleć w kategoriach dekompozycji problemów algorytmicznych do elementarnych konstrukcji języka programowania
Cel przedmiotuC-1Słuchacz zna i rozumie zasady myślenia algorytmicznego, metody reprezentowania algorytmów, potrafi dobrać metody reprezentacji algorytmów do określonego problemu, a także przedstawić wybrane problemy algorytmiczne z użyciem adekwatnych metod.
Treści programoweT-L-1Wprowadzenie do zastosowania Blockly w praktycznej nauce myślenia algorytmicznego.
T-L-2Reprezentacja i analiza algorytmów na bazie wybranych problemów. Analiza wybranych problemów z użyciem języka edukacyjnego Blockly.
Metody nauczaniaM-5Ćwiczenia laboratoryjne.
M-6Gry dydaktyczne.
Sposób ocenyS-1Ocena formująca: Ocena formująca - na zajęciach laboratoryjnych, polagająca na podstawie systematycznej oceny rozwiązań postawionych przez wykładowcę problemów.
Kryteria ocenyOcenaKryterium oceny
2,0
3,0Słuchacz potrafi zrealizować zadanie przedstawione w Blockly w oparciu o umiejętność myślenia algorytmicznego oraz podstawowe zasady programowania.
3,5
4,0
4,5
5,0
PoleKODZnaczenie kodu
Zamierzone efekty uczenia sięPK_10-_01_K01Rozumie rolę programisty w procesie wytwarzania oprogramowania
Odniesienie do efektów kształcenia dla kierunku studiówPK_10-_K02Rozumie rolę programisty w procesie wytwarzania oprogramowania
Cel przedmiotuC-1Słuchacz zna i rozumie zasady myślenia algorytmicznego, metody reprezentowania algorytmów, potrafi dobrać metody reprezentacji algorytmów do określonego problemu, a także przedstawić wybrane problemy algorytmiczne z użyciem adekwatnych metod.
Treści programoweT-L-1Wprowadzenie do zastosowania Blockly w praktycznej nauce myślenia algorytmicznego.
T-L-2Reprezentacja i analiza algorytmów na bazie wybranych problemów. Analiza wybranych problemów z użyciem języka edukacyjnego Blockly.
T-W-1Zajścia organizacyjne: omówienie zasad uczestnictwa, celowości przedmiotu, zakresu tematycznego, ustalenie zasad i terminów zaliczenia przedmiotu na poszczególnych formach zajęć.
Metody nauczaniaM-3Dyskusja dydaktyczna.
Sposób ocenyS-1Ocena formująca: Ocena formująca - na zajęciach laboratoryjnych, polagająca na podstawie systematycznej oceny rozwiązań postawionych przez wykładowcę problemów.
Kryteria ocenyOcenaKryterium oceny
2,0
3,0Słuchacz rozumie związek pomiędzy myśleniem algorytmicznym a sprawną implementacją dowolnego zagadnienia w językach programowania.
3,5
4,0
4,5
5,0