Zachodniopomorski Uniwersytet Technologiczny w Szczecinie

Wydział Elektryczny - Teleinformatyka (S1)

Sylabus przedmiotu Struktury danych i techniki programowania:

Informacje podstawowe

Kierunek studiów Teleinformatyka
Forma studiów studia stacjonarne Poziom pierwszego stopnia
Tytuł zawodowy absolwenta inżynier
Obszary studiów nauki techniczne, studia inżynierskie
Profil ogólnoakademicki
Moduł
Przedmiot Struktury danych i techniki programowania
Specjalność przedmiot wspólny
Jednostka prowadząca Katedra Elektrotechniki Teoretycznej i Informatyki
Nauczyciel odpowiedzialny Barbara Grochowalska <Barbara.Szymanik@zut.edu.pl>
Inni nauczyciele
ECTS (planowane) 3,0 ECTS (formy) 3,0
Forma zaliczenia egzamin Język polski
Blok obieralny Grupa obieralna

Formy dydaktyczne

Forma dydaktycznaKODSemestrGodzinyECTSWagaZaliczenie
laboratoriaL2 15 1,00,38zaliczenie
wykładyW2 30 2,00,62egzamin

Wymagania wstępne

KODWymaganie wstępne
W-1Ukończony moduł Matematyka
W-2Ukończony moduł Podstawy algorytmizacji i programowania.

Cele przedmiotu

KODCel modułu/przedmiotu
C-1Zapoznanie studentów z programowaniem w języku C++.
C-2Ukształtowanie umiejętności z zakresu implementacji algorytmów wykorzystujących dynamiczne struktury danych.

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

KODTreść programowaGodziny
laboratoria
T-L-1Wstęp do programowania w języku C++. Programowanie obiektowe.4
T-L-2Dynamiczna alokacja danych. Kontener vector.4
T-L-3Listy.2
T-L-4Kolejki FIFO.2
T-L-5Implementacja algorytmów sortowania.2
T-L-6Zaliczenie labolatoriów.1
15
wykłady
T-W-1Elementy języka C++. Pierwszy program. Zapoznanie ze środowiskiem Visual Studio.2
T-W-2Elementy programowania obiektowego w C++.6
T-W-3Struktury statyczne i dynamiczne, wprowadzenie. STL - kolekcje i iteratory.4
T-W-4Listy jednokierunkowe i dwukierunkowe. Implementacja, przykłady.2
T-W-5Stos. Implementacja i przykłady. Sortowanie przez scalanie.2
T-W-6Rekurencja.2
T-W-7Kolejki FIFO.2
T-W-8Drzewa binarne. Algorytmy przeszukiwania drzew.2
T-W-9Sterty, kolejki priorytetowe. Sortowanie na drzewach.2
T-W-10Drzewa gier. Przykład gry - kółko i krzyżyk. Algorytm min-max.6
30

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

KODForma aktywnościGodziny
laboratoria
A-L-1Uczestnictwo w zajęciach15
A-L-2Przygotowanie do zajęć10
A-L-3Przygotowanie do zaliczenia.5
30
wykłady
A-W-1Uczestnictwo w zajęciach30
A-W-2Przygotowanie do zajęć15
A-W-3Praca własna z literaturą.10
A-W-4Przygotowanie do egzaminu.5
60

Metody nauczania / narzędzia dydaktyczne

KODMetoda nauczania / narzędzie dydaktyczne
M-1Wykład informacyjny.
M-2Wykład problemowy.
M-3Prezentacja multimedialna.
M-4Ćwiczenia labolatoryjne z wykorzystaniem stanowisk komputerowych.

Sposoby oceny

KODSposób oceny
S-1Ocena formująca: Labolatoria na podstawie krótkich sprawdzianów.
S-2Ocena podsumowująca: Wykład: egzamin z całości materiału.
S-3Ocena podsumowująca: Labolatoria: sprawdzian praktyczny.

Zamierzone efekty kształcenia - wiedza

Zamierzone efekty kształceniaOdniesienie do efektów kształcenia dla kierunku studiówOdniesienie do efektów zdefiniowanych dla obszaru kształceniaOdniesienie do efektów kształcenia prowadzących do uzyskania tytułu zawodowego inżynieraCel przedmiotuTreści programoweMetody nauczaniaSposób oceny
TI_1A_C34_W01
Student ma wiedzą w zakresie programowania w języku C++ oraz w zakresie wybranych struktur danych.
TI_1A_W08, TI_1A_W09C-1, C-2T-W-1, T-W-3, T-W-4, T-W-5, T-W-7, T-W-8, T-W-9, T-W-10, T-W-2, T-W-6M-1, M-2, M-3S-1, S-2, S-3

Zamierzone efekty kształcenia - umiejętności

Zamierzone efekty kształceniaOdniesienie do efektów kształcenia dla kierunku studiówOdniesienie do efektów zdefiniowanych dla obszaru kształceniaOdniesienie do efektów kształcenia prowadzących do uzyskania tytułu zawodowego inżynieraCel przedmiotuTreści programoweMetody nauczaniaSposób oceny
TI_1A_C34_U01
Student potrafi zaimplementować znane struktury danych w języku C++. Potrafi implementować wybrane algorytmy wykorzystujące struktury danych.
TI_1A_U05, TI_1A_U07C-1, C-2T-L-6, T-L-1, T-L-2, T-L-3, T-L-4, T-L-5M-4S-1, S-3

Kryterium oceny - wiedza

Efekt kształceniaOcenaKryterium oceny
TI_1A_C34_W01
Student ma wiedzą w zakresie programowania w języku C++ oraz w zakresie wybranych struktur danych.
2,0
3,0Student zna podstawy języka C++. Student zna podstawowe typy dynamicznych struktur danych oraz metody ich implementacji.
3,5
4,0
4,5
5,0

Kryterium oceny - umiejętności

Efekt kształceniaOcenaKryterium oceny
TI_1A_C34_U01
Student potrafi zaimplementować znane struktury danych w języku C++. Potrafi implementować wybrane algorytmy wykorzystujące struktury danych.
2,0
3,0Student potrafi zaimplementować podstawowe dynamiczne struktury danych oraz wykonać na nich podstawowe operacje.
3,5
4,0
4,5
5,0

Literatura podstawowa

  1. Piotr Wróblewski, Algorytmy struktury danych i techniki programowania, Helion, Gliwice, 2001, 2
  2. L.Banachowski, K.Diks, W.Rytter, Algorytmy i struktury danych, WNT-Wydawnictwa Naukowo-Techniczne Sp.z o.o., 2006

Literatura dodatkowa

  1. Thomas H. Cormen, Charles E. Leiserson, Ronald L. Rivest, Clifford Stein, Wprowadzenie do algorytmów, Wydawnictwa Naukowo - Techniczne, 2004

Treści programowe - laboratoria

KODTreść programowaGodziny
T-L-1Wstęp do programowania w języku C++. Programowanie obiektowe.4
T-L-2Dynamiczna alokacja danych. Kontener vector.4
T-L-3Listy.2
T-L-4Kolejki FIFO.2
T-L-5Implementacja algorytmów sortowania.2
T-L-6Zaliczenie labolatoriów.1
15

Treści programowe - wykłady

KODTreść programowaGodziny
T-W-1Elementy języka C++. Pierwszy program. Zapoznanie ze środowiskiem Visual Studio.2
T-W-2Elementy programowania obiektowego w C++.6
T-W-3Struktury statyczne i dynamiczne, wprowadzenie. STL - kolekcje i iteratory.4
T-W-4Listy jednokierunkowe i dwukierunkowe. Implementacja, przykłady.2
T-W-5Stos. Implementacja i przykłady. Sortowanie przez scalanie.2
T-W-6Rekurencja.2
T-W-7Kolejki FIFO.2
T-W-8Drzewa binarne. Algorytmy przeszukiwania drzew.2
T-W-9Sterty, kolejki priorytetowe. Sortowanie na drzewach.2
T-W-10Drzewa gier. Przykład gry - kółko i krzyżyk. Algorytm min-max.6
30

Formy aktywności - laboratoria

KODForma aktywnościGodziny
A-L-1Uczestnictwo w zajęciach15
A-L-2Przygotowanie do zajęć10
A-L-3Przygotowanie do zaliczenia.5
30
(*) 1 punkt ECTS, odpowiada około 30 godzinom aktywności studenta

Formy aktywności - wykłady

KODForma aktywnościGodziny
A-W-1Uczestnictwo w zajęciach30
A-W-2Przygotowanie do zajęć15
A-W-3Praca własna z literaturą.10
A-W-4Przygotowanie do egzaminu.5
60
(*) 1 punkt ECTS, odpowiada około 30 godzinom aktywności studenta
PoleKODZnaczenie kodu
Zamierzone efekty kształceniaTI_1A_C34_W01Student ma wiedzą w zakresie programowania w języku C++ oraz w zakresie wybranych struktur danych.
Odniesienie do efektów kształcenia dla kierunku studiówTI_1A_W08Ma uporządkowaną wiedzę w zakresie inżynierii oprogramowania, technik projektowania, modelowania, tworzenia i testowania oprogramowania.
TI_1A_W09Zna wybrane języki programowania niskiego i wysokiego poziomu. Ma podstawową wiedzę z zakresu dobrych praktyk programistycznych.
Cel przedmiotuC-1Zapoznanie studentów z programowaniem w języku C++.
C-2Ukształtowanie umiejętności z zakresu implementacji algorytmów wykorzystujących dynamiczne struktury danych.
Treści programoweT-W-1Elementy języka C++. Pierwszy program. Zapoznanie ze środowiskiem Visual Studio.
T-W-3Struktury statyczne i dynamiczne, wprowadzenie. STL - kolekcje i iteratory.
T-W-4Listy jednokierunkowe i dwukierunkowe. Implementacja, przykłady.
T-W-5Stos. Implementacja i przykłady. Sortowanie przez scalanie.
T-W-7Kolejki FIFO.
T-W-8Drzewa binarne. Algorytmy przeszukiwania drzew.
T-W-9Sterty, kolejki priorytetowe. Sortowanie na drzewach.
T-W-10Drzewa gier. Przykład gry - kółko i krzyżyk. Algorytm min-max.
T-W-2Elementy programowania obiektowego w C++.
T-W-6Rekurencja.
Metody nauczaniaM-1Wykład informacyjny.
M-2Wykład problemowy.
M-3Prezentacja multimedialna.
Sposób ocenyS-1Ocena formująca: Labolatoria na podstawie krótkich sprawdzianów.
S-2Ocena podsumowująca: Wykład: egzamin z całości materiału.
S-3Ocena podsumowująca: Labolatoria: sprawdzian praktyczny.
Kryteria ocenyOcenaKryterium oceny
2,0
3,0Student zna podstawy języka C++. Student zna podstawowe typy dynamicznych struktur danych oraz metody ich implementacji.
3,5
4,0
4,5
5,0
PoleKODZnaczenie kodu
Zamierzone efekty kształceniaTI_1A_C34_U01Student potrafi zaimplementować znane struktury danych w języku C++. Potrafi implementować wybrane algorytmy wykorzystujące struktury danych.
Odniesienie do efektów kształcenia dla kierunku studiówTI_1A_U05Potrafi sformułować algorytm i posłużyć się językami programowania niskiego i wysokiego poziomu oraz odpowiednimi narzędziami informatycznymi do opracowania programów komputerowych służących do transmisji danych i analizy tego procesu.
TI_1A_U07Potrafi zastosować w praktyce wiedzę z zakresu inżynierii oprogramowania oraz dobre praktyki programistyczne stosując wybrane narzędzia i środowiska deweloperskie.
Cel przedmiotuC-1Zapoznanie studentów z programowaniem w języku C++.
C-2Ukształtowanie umiejętności z zakresu implementacji algorytmów wykorzystujących dynamiczne struktury danych.
Treści programoweT-L-6Zaliczenie labolatoriów.
T-L-1Wstęp do programowania w języku C++. Programowanie obiektowe.
T-L-2Dynamiczna alokacja danych. Kontener vector.
T-L-3Listy.
T-L-4Kolejki FIFO.
T-L-5Implementacja algorytmów sortowania.
Metody nauczaniaM-4Ćwiczenia labolatoryjne z wykorzystaniem stanowisk komputerowych.
Sposób ocenyS-1Ocena formująca: Labolatoria na podstawie krótkich sprawdzianów.
S-3Ocena podsumowująca: Labolatoria: sprawdzian praktyczny.
Kryteria ocenyOcenaKryterium oceny
2,0
3,0Student potrafi zaimplementować podstawowe dynamiczne struktury danych oraz wykonać na nich podstawowe operacje.
3,5
4,0
4,5
5,0