- Nazwa przedmiotu:
- Podstawy programowania
- Koordynator przedmiotu:
- mgr inż. / Marek Malinowski
- Status przedmiotu:
- Obowiązkowy
- Poziom kształcenia:
- Studia I stopnia
- Program:
- Inżynieria Środowiska
- Grupa przedmiotów:
- Obowiązkowe
- Kod przedmiotu:
- ZISP72
- Semestr nominalny:
- 1 / rok ak. 2011/2012
- Liczba punktów ECTS:
- 3
- Liczba godzin pracy studenta związanych z osiągnięciem efektów uczenia się:
- Liczba punktów ECTS na zajęciach wymagających bezpośredniego udziału nauczycieli akademickich:
- Język prowadzenia zajęć:
- polski
- Liczba punktów ECTS, którą student uzyskuje w ramach zajęć o charakterze praktycznym:
- Formy zajęć i ich wymiar w semestrze:
-
- Wykład150h
- Ćwiczenia0h
- Laboratorium0h
- Projekt0h
- Lekcje komputerowe0h
- Wymagania wstępne:
- brak
- Limit liczby studentów:
- Cel przedmiotu:
- Przyjęto założenie, że przedmiot ma charakter ogólnokształcący i podstawowym celem nauczania przedmiotu jest pogłębienie ogólnej wiedzy informatycznej, wyrobienie umiejętności algorytmicznego myślenia oraz przygotowanie do rozwiązywania nietypowych problemów
oraz poszerzania posiadanej wiedzy i umiejętności w zakresie programowania.
Studenci powinni poznać technikę abstrakcji i jej rolę w informatyce, powinni poznać techniki programowania i wykorzystywane formalizmy, powinni poznać na poziomie elementarnym przynajmniej jeden język algorytmiczny i związane z nim środowisko programowe.
- Treści kształcenia:
- W - Elementy algorytmiki: podstawowy aparat pojęciowy, reprezentacja algorytmu, konstruowanie algorytmów- przegląd metod algorytmicznych, struktury sterujące (wybór, iteracja i rekurencja), poprawność algorytów, złożoność obliczeniowa – notacja O(.). Języki programowania: model maszyny wirtualnej i warstwowy model oprogramowania; perspektywa historyczna – paradygmaty programowania; meta języki – notacja BNF i diagramy składniowe; przegląd głównych pojęć – zmienne , stałe i literały, typy danych, instrukcje sterujące w wybranym języku, technika podprogramów – procedury i funkcje, parametry; implementacja języków programowania – translacja, konsolidacja, przykładowe środowisko programowe; programowanie obiektowe; programowanie równoległe; programowanie deklaratywne – Prolog. Struktury danych: tablice, listy, stosy, kolejki, drzewa, wskaźniki, przykładowe implementacje struktur danych w wybranych językach programowania. Inżynieria oprogramowania: cykl życia oprogramowania, modularność, metodyka projektowania, aspekty prawne.
- Metody oceny:
- Formą oceny opanowania wymagań programowych dla przedmiotu jest zaliczenie wyrażone w skali ocen 2 – 5, będące średnią ocen cząstkowych ze sprawdzianów i przynajmniej jednego zadania projektowego. Sprawdziany w formie co najmniej dwóch testów wielokrotnego wyboru przeprowadzone będą w trakcie zajęć wykładowych w terminie ustalonym przez prowadzącego wykład. Odpowiedzi na pytania zawarte w testach oceniane będą w skali 0-1 punktów. Uzyskana ilość punktów odwzorowana będzie liniowo na skalę ocen 2 – 5, przy warunku uzyskania minimum połowy maksymalnej ilości punktów. Zadanie projektowe realizowane będzie w formie pracy domowej i oceniane będzie w skali ocen 2 – 5.Podstawową formą kontaktowania się studentów z prowadzącym zajęcia będą konsultacje i poczta elektroniczna.
- Egzamin:
- Literatura:
- 1. Wirth N., Algorytmy + struktury danych = programy, WNT, Warszawa 1980.
2. Wirth N., Wstęp do programowania systematycznego, WNT, Warszawa 1978.
- Witryna www przedmiotu:
- Uwagi:
Efekty uczenia się