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:
ISP72
Semestr nominalny:
2 / 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ład15h
  • Ć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:
o - ocena z przedmiotu "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. Niklaus Wirth – „Algorytmy + struktury danych = programy”, WNT 1980 2. Niklaus Wirth – „Wstęp do programowania systematycznego”, WNT 1978 "
Witryna www przedmiotu:
Uwagi:

Efekty uczenia się