SylabUZ
Course name | Principles of Programming |
Course ID | 11.3-WI-INFP-PP |
Faculty | Faculty of Engineering and Technical Sciences |
Field of study | computer science |
Education profile | academic |
Level of studies | First-cycle studies leading to Engineer's degree |
Beginning semester | winter term 2021/2022 |
Semester | 1 |
ECTS credits to win | 5 |
Course type | obligatory |
Teaching language | polish |
Author of syllabus |
|
The class form | Hours per semester (full-time) | Hours per week (full-time) | Hours per semester (part-time) | Hours per week (part-time) | Form of assignment |
Lecture | 30 | 2 | 18 | 1,2 | Credit with grade |
Laboratory | 30 | 2 | 18 | 1,2 | Credit with grade |
Zapoznanie ze specyfiką projektowania programu w języku C. Ukształtowanie umiejętności projektowania programu w C. Ukształtowanie umiejętności właściwego stosowania poleceń i struktur danych oraz wykorzystania technik programowania do rozwiązywania postawionych problemów. Zapoznanie studentów z architekturą systemu komputerowego pod kątem programowania.
-
Architektura i zasoby komputera. Systemy operacyjne. Projektowanie programu. Pojęcie algorytmu. Programowanie strukturalne.
Języki programowania. Implementacje algorytmów w językach programowania. Środowisko programistyczne. Struktura programu w języku C. Przykład programu w C.
Programowanie w języku C. Składnia poleceń. Stałe i zmienne, typy danych, rozmiary. Operatory, wyrażenia i podstawowe instrukcje języka C. Podstawowe konstrukcje programistyczne: pobieranie i wyświetlanie danych. Struktura programu w języku C.
Typy danych. Zmienne i podstawowe operacje na zmiennych. Operatory arytmetyczne i ich hierarchia. Przykłady.
Formatowanie wydruku printf. Pełna składnia funkcji printf: flaga, szerokość pola, dokładność, znak formatujący. Tabela kodów ASCII.
Instrukcje złożone. Instrukcje: wyrażeniowe, pusta, grupująca. Instrukcje sterowania przebiegiem programu: instrukcja warunkowa if, if-else, else-if; instrukcja wyboru switch. Instrukcje iteracyjne (pętle): for, while, do-while. Instrukcje break i continue.
Wyrażenia i operatory. Operatory indeksowania, wyboru i wywołania. Operatory jednoargumentowe, arytmetyczne, logiczne. Operator warunkowy, przypisania, połączenia. Operatory bitowe. Inne operatory.
Wskaźniki. Zasady pracy ze wskaźnikami. Deklaracja, odwołanie do adresu i wartości wskazywanej.
Funkcje - budowa, argumenty, rezultat, prototyp, deklaracja, wywołanie, zastosowanie funkcji. Komunikacja funkcji z otoczeniem za pomocą wskaźników.
Tablice. Deklaracja, zastosowanie, podstawowe operacje, arytmetyka wskaźników, przekazywanie tablic do funkcji, przykłady. Nazwa zmiennej tablicowej jako wskaźnik. Tablice dwuwymiarowe. Deklaracja, zastosowanie, przykłady. Tablice dynamiczne, alokacja pamięci i jej zwalnianie. Funkcje: malloc(), calloc(), free().
Łańcuchy znaków. Podstawowe operacje na łańcuchach znakowych. Parametry funkcji main. Tworzenie i korzystanie z pliku wykonywalnego programu.
Struktury danych. Właściwości, dostęp do składowych struktury. Tablice struktur. Pola bitowe. Unie.
Pliki. Pojęcia podstawowe, struktura logiczna, pliki tekstowe i binarne. Ścieżka względna i bezwzględna. Praca z plikiem: kojarzenie strumieni z plikami, tryby otwarcia plików, zapis, odczyt, zamknięcie. Wybrane funkcje plikowe.
Wykład: wykład konwencjonalny/tradycyjny.
Laboratorium: ćwiczenia laboratoryjne przy komputerze.
Outcome description | Outcome symbols | Methods of verification | The class form |
Wykład - warunkiem zaliczenia jest uzyskanie pozytywnych ocen z kolokwiów pisemnych przeprowadzonych co najmniej raz w semestrze.
Laboratorium - warunkiem zaliczenia jest uzyskanie pozytywnych ocen z laboratoriów przewidzianych do realizacji w ramach programu zajęć.
Składowe oceny końcowej = wykład: 50% + laboratorium: 50%
Modified by prof. dr hab. inż. Andrzej Obuchowicz (last modification: 20-04-2021 08:55)