- Nazwa przedmiotu:
- Zasady programowania strukturalnego II
- Koordynator przedmiotu:
- dr inż. Maciej Przybylski
- Status przedmiotu:
- Obowiązkowy
- Poziom kształcenia:
- Studia I stopnia
- Program:
- Automatyka Robotyka i Informatyka Przemysłowa
- Grupa przedmiotów:
- Obowiązkowe
- Kod przedmiotu:
- ZAPIIst
- Semestr nominalny:
- 2 / rok ak. 2020/2021
- Liczba punktów ECTS:
- 3
- Liczba godzin pracy studenta związanych z osiągnięciem efektów uczenia się:
- 1) Liczba godzin kontaktowych: 20 godz., w tym:
• projektowanie w pracowni komputerowej - 15 godz.
• konsultacje - 5 godz.
Praca własna studenta – 60 godz., w tym:
• studia literaturowe - 10 godz.
• opracowanie projektu poza pracownią - 35 godz.
• opracowanie dokumentacji projektu - 15 godz.
Razem: 80 godz. (3 ECTS)
- Liczba punktów ECTS na zajęciach wymagających bezpośredniego udziału nauczycieli akademickich:
- 1 punkt ECTS - liczba godzin kontaktowych: 20 godz., w tym:
• projektowanie w pracowni komputerowej - 15 godz.
• konsultacje - 5 godz.
- Język prowadzenia zajęć:
- polski
- Liczba punktów ECTS, którą student uzyskuje w ramach zajęć o charakterze praktycznym:
- 3 punkty ECTS – 75 godz., w tym:
• obecność na zajęciach - 15 godz.
• projektowania poza pracownią - 45 godz.
• dokumentowanie projektu - 15 godz.
- Formy zajęć i ich wymiar w semestrze:
-
- Wykład0h
- Ćwiczenia0h
- Laboratorium0h
- Projekt15h
- Lekcje komputerowe0h
- Wymagania wstępne:
- Zaliczony (wskazane) przedmiot: Zasady programowania strukturalnego I.
- Limit liczby studentów:
- max. 15 studentów
- Cel przedmiotu:
- Nauka logicznego, algorytmicznego myślenia przy rozwiązywaniu problemów inżynierskich.
Praktyczne wykorzystanie w programowaniu strukturalnym poznanych złożonych dynamicznych struktur danych: list, drzew i grafów.
Zdobycie umiejętności tworzenia złożonych programów wraz z tworzeniem bibliotek funkcji definiowanych we własnych modułach.
Wprowadzenie do programowania zorientowanego obiektowo, w tym wizualno-obiektowego.
- Treści kształcenia:
- Indywidualne projekty są realizowane w języku C/C++. W tworzonej aplikacji wymagane jest: 1) wprowadzanie i/lub zapisywanie danych do programu z wykorzystaniem typu plikowego, 2) struktura danych do projektu musi też wykorzystywać: tablice dynamiczne, listy, drzewa lub grafy, 3) aplikacja musi mieć budowę modułową i funkcje programu muszą być umieszczane w utworzonych dla niej bibliotekach. Aplikacja musi być udokumentowana i testowana. Wprowadzenie do programowania wizualno-obiektowego obejmuje: definicję typu, definicje obiektów i metod, dziedziczenie i poliformizm, typowe komponenty wizualne oraz podstawy pisania aplikacji wizualnych.
- Metody oceny:
- ZALICZENIE Ocena zaliczająca przedmiot jest ustalana na podstawie projektu indywidualnie opracowanego w trakcie semestru. Ocena projektu składa się z ocen cząstkowych za: dokumentację wstępną, prototyp, ostatecznie wykonanie aplikacji w wersji konsolowej i okienkowej. Wymagana jest również osobista prezentacja projektu oraz umiejętność wyjaśnienia szczegółów przedstawionej aplikacji.
- Egzamin:
- nie
- Literatura:
- 1) P. Wnuk, B. Putz: Informatyka 2 - Programowanie. Wersja w języku C/C++. Podręcznik internetowy, OKNO PW, 2004-2010.
2) B. Putz, A. Putz jr, P. Wnuk : Algorytmy i struktury danych. Podręcznik internetowy, OKNO PW, 2006-2010.
3) S. Prata: Język C++. Wydanie V, Helion 2006.
4) J. Grębosz: Symfonia C++ standard. Tom I. Edition 2000 Kraków, 2005-2008.
5) B. Eckel: Thinking in C++. Edycja polska. Helion 2002.
6) N. Wirth: Algorytmy+struktury danych=programy. WNT 2004.
7) P. Wróblewski: Algorytmy, struktury danych i techniki programowania. Wyd. IV, Helion 2010.
8) T.H. Cormen et al.: Wprowadzenie do algorytmów. WNT 2007, PWN 2012 (nowe wydanie).
- Witryna www przedmiotu:
- http://iair.mchtr.pw.edu.pl/studenci/
- Uwagi:
- Przedmiot daje gruntowne podstawy do programowania, umożliwiając tworzenie własnych aplikacji do rozwiązywania różnych problemów technicznych.
Efekty uczenia się
Profil ogólnoakademicki - wiedza
- Charakterystyka ZAPIIst_W01
- Posiada praktyczną wiedzę w zakresie algorytmizacji problemów technicznych
Weryfikacja: Zaliczenie projektu
Powiązane charakterystyki kierunkowe:
K_W04, K_W05
Powiązane charakterystyki obszarowe:
P6U_W, I.P6S_WG.o
- Charakterystyka ZAPIIst_W02
- Ma wiedzę w zakresie programowania strukturalnego
Weryfikacja: Zaliczenie projektu
Powiązane charakterystyki kierunkowe:
K_W04, K_W05
Powiązane charakterystyki obszarowe:
P6U_W, I.P6S_WG.o
Profil ogólnoakademicki - umiejętności
- Charakterystyka ZAPIIst_U01
- Ma praktyczną umiejętność tworzenia złożonych programów
Weryfikacja: Zaliczenie projektu
Powiązane charakterystyki kierunkowe:
K_U08, K_U09
Powiązane charakterystyki obszarowe:
I.P6S_UW.o, III.P6S_UW.o
Profil ogólnoakademicki - kompetencje społeczne
- Charakterystyka ZAPIIst_K01
- Rozumie potrzebę ciągłego kształcenia
Weryfikacja: Zaliczenie
Powiązane charakterystyki kierunkowe:
K_K01
Powiązane charakterystyki obszarowe:
I.P6S_KO, P6U_K, I.P6S_KK