Nazwa przedmiotu:
Podstawy programowania strukturalnego
Koordynator przedmiotu:
dr inż. Władysław Homenda
Status przedmiotu:
Obowiązkowy
Poziom kształcenia:
Studia I stopnia
Program:
Informatyka
Grupa przedmiotów:
Wspólne
Kod przedmiotu:
Semestr nominalny:
1 / rok ak. 2009/2010
Liczba punktów ECTS:
6
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ład30h
  • Ćwiczenia30h
  • Laboratorium15h
  • Projekt0h
  • Lekcje komputerowe0h
Wymagania wstępne:
brak
Limit liczby studentów:
Cel przedmiotu:
Nabycie umiejętności konstrukcji prostych programów w językach programowania wysokiego poziomu na podstawie języka C
Treści kształcenia:
1)      a)    Informacje wstępne: problem, algorytm. b)    Systemy pozycyjne: dziesiętny, dwójkowy, szesnastkowy, jedynkowy (liczba n jest zapisana jako ciąg n zer), minus dwójkowy. c)    Reprezentacja liczb całkowitych w pamięci komputera – system stałopozycyjny uzupełnieniowy. 2)      a)    Reprezentacja liczb zmiennoprzecinkowych, formaty IBM, IEEE, Microsoft, zakresy liczb zmiennoprzecinkowych. b)    Wyrażenia arytmetyczne – priorytety operatorów, notacje przedrostkowa i przyrostkowa. 3)      a)    Prosty model maszyny cyfrowej b)    Prosty pseudoassembler, algorytm Euklidesa wyznaczania NWD, sito Eratostenesa . 4)      a)    Języki wysokiego poziomu, C – informacje ogólne. b)    Struktura programu, funkcje. c)    Podstawowe typy danych – int, float; modyfikatory: long, short, unsigned. 5)      a)    Typy i rozmiary danych. b)    Stałe, zmienne, typy zmiennych. c)    Funkcje konwersji typów danych. 6)      a)    Tablice. b)    Struktury. c)    Typy złożone (np. tablice struktur). 7)      a)    Operatory, b)    Priorytety, konwersje typów. c)    Wyrażenia – arytmetyczne, logiczne, binarne, rzutowania, d)    Instrukcje proste -  pusta, podstawienia, skoku e)    Instrukcje złożone - strukturalne, warunkowe, wyboru, iteracyjne 8)      a)    Instrukcje – uzupełnienia b)    Prosty program w C – szybkie obliczanie potęg (przykład na zastosowanie operatorów, wyrażeń, instrukcji warunkowych i iteracyjnych) c)    Prosty program w C –wyszukiwanie wzorca w tekście (przykład na zastosowanie tablic i instrukcji warunkowych, wyboru i iteracyjnych), 9)      a)    Podstawowe instrukcje wejścia-wyjścia: getch, putc, scanf, printf, elementy formatowania b)    Przykłady programów: modyfikacja sita Eratostenesa na tablicach – znajdowanie liczb słabo złożonych, 10) Wskaźniki a)    Zmienne wskaźnikowe, zmienne wskazywane, dynamiczne zarządzanie pamięcią. b)    Przykłady - sito Eratostenesa w wersji listy jednokierunkowej – tworzenie listy jednokierunkowej, usuwanie elementów z listy i nawigacja po liście jednokierunkowej, 11) Wskaźniki – cd. a)    tworzenie uporządkowanej listy dwukierunkowej, b)    Wskaźniki i tablice, wskaźniki do wskaźników – omówienie. 12) Funkcje i programy – wprowadzenie a)    Funkcje – sposoby przekazywania parametrów: przez wartość, przez adres, przez funkcję. b)    Funkcje i programy – przykłady : i)      Program obliczania exp(A), gdzie A – macierz nxn ii)     Program wyznaczania całki 13) Funkcje i programy – przykłady, cd. a)    Budowa drzewa binarnego, b)    Przeglądanie drzewa binarnego: prefiksowe, postfiksowe, infiksowe, 14) Funkcje i programy – przykłady, cd. a)    Rekurencja, omówienie, przykład: wieże Hanoi, gdzie nie należy stosować rekurencji – obliczanie silni b)    przesłanianie, c)    efekty uboczne. 15) Zaliczenie
Metody oceny:
Zaliczenie ćwiczeń - dwa kolokwia w semestrze. Zaliczenie laboratoriów na podstawie programów pisanych w laboratorium. Zaliczenie przedmiotu: wymagane zaliczenie ćwiczeń i laboratoriów. Łączną ocenę punktową przelicza się na stopnie według poniższych zasad: b)  3.5 jeżeli uzyskali od 61 do 70  pkt. c)  4.0 jeżeli uzyskali od 71 do 80  pkt. d)  4.5 jeżeli uzyskali  od 81 do 90  pkt. e)  5.0 jeżeli uzyskali powyżej 90  pkt.
Egzamin:
Literatura:
Kerningham, Ritchie, Język C Wirth, Algorytmy + struktury danych = programy
Witryna www przedmiotu:
Uwagi:

Efekty uczenia się