Wydział Elektryczny - Elektrotechnika (N1)
Sylabus przedmiotu Podstawy algorytmizacji i programowania:
Informacje podstawowe
Kierunek studiów | Elektrotechnika | ||
---|---|---|---|
Forma studiów | studia niestacjonarne | Poziom | pierwszego stopnia |
Tytuł zawodowy absolwenta | inżynier | ||
Obszary studiów | nauk technicznych, studiów inżynierskich | ||
Profil | ogólnoakademicki | ||
Moduł | — | ||
Przedmiot | Podstawy algorytmizacji i programowania | ||
Specjalność | przedmiot wspólny | ||
Jednostka prowadząca | Katedra Zastosowań Informatyki | ||
Nauczyciel odpowiedzialny | Andrzej Brykalski <Andrzej.Brykalski@zut.edu.pl> | ||
Inni nauczyciele | Piotr Baniukiewicz <Piotr.Baniukiewicz@zut.edu.pl>, Maciej Burak <Maciej.Burak@zut.edu.pl>, Wojciech Chlewicki <Wojciech.Chlewicki@zut.edu.pl>, Irena Karpik <Irena.Karpik@zut.edu.pl> | ||
ECTS (planowane) | 5,0 | ECTS (formy) | 5,0 |
Forma zaliczenia | egzamin | Język | polski |
Blok obieralny | — | Grupa obieralna | — |
Formy dydaktyczne
Wymagania wstępne
dla tego przedmiotu nie są określone wymagania wstępneCele przedmiotu
KOD | Cel modułu/przedmiotu |
---|---|
C-1 | Zapoznanie studentów z podstawowymi pojęciami informatyki. |
C-2 | Ukształtowanie umiejętności z zakresu technik programowania strukturalnego w języku C. |
C-3 | Ukształtowanie umiejętności praktycznych z zakresu procesu wytwarzania oprogramowania - (tworzenie kodu źródłowego, kompilacja, debugowanie). |
Treści programowe z podziałem na formy zajęć
KOD | Treść programowa | Godziny |
---|---|---|
laboratoria | ||
T-L-1 | Praca w środowisku Linux : logowanie się do sieci, wybrane polecenia systemu Linux, zapoznanie się z programem Midnight Commander, kompilatorem gcc. Edycja, kompilacja i uruchomienie prostego programu w języku C. | 2 |
T-L-2 | Sprawdzian z wykładów (systemy dec, bin, hex – przeliczanie). Wyrażenia arytmetyczne i logiczne, funkcje matematyczne (biblioteka „math.h”), instrukcja warunkowa „if…else”. Schematy blokowe wybranych algorytmów. Prosty program z instrukcją pętli „while” lub „do while”. | 2 |
T-L-3 | Krótki sprawdzian z wykładów (schematy blokowe). Pętla „while” cd. (sumy szeregów nieskończonych). | 2 |
T-L-4 | Zaliczenie (while ). Pętla „for”, typ tablicowy, deklaracja tablicy , wprowadzanie danych. | 2 |
T-L-5 | Sprawdzian z wykładów (elementy języka C). Tablice jednowymiarowe liczbowe (sortowanie). Łańcuchy znakowe, funkcje „gets”, „puts”, biblioteka „string.h”, przetwarzanie łańcuchów. | 2 |
T-L-6 | Zaliczenie tablic i łańcuchów. Tablice dwuwymiarowe, deklarowanie, inicjalizowanie tablic, manipulowanie elementami. | 2 |
T-L-7 | Wprowadzenie do funkcji niestandardowych (zwracających wartość). Funkcje tworzone przez użytkownika, definicja, parametry formalne i aktualne, prototyp funkcji, zwracanie wartości, klasy pamięci. | 2 |
T-L-8 | Wskaźniki, zastosowanie wskaźników jako parametrów funkcji, wykorzystanie wskaźników przy przetwarzania tablic w funkcjach. | 2 |
T-L-9 | Struktury, definicja typu, tablica struktur, struktury w funkcjach (wskaźniki do struktur). Pliki, funkcja otwarcia pliku, tryby pracy, funkcje plikowe do odczytu i zapisu (znakowe, łańcuchowe), przetwarzanie plików. | 2 |
18 | ||
wykłady | ||
T-W-1 | Pojęcie informatyki, obszary informatyki, zastosowania informatyki w technice, komputer jako narzędzie automatycznego przetwarzania informacji, generacje i klasyfikacja komputerów cyfrowych oraz języków programowania, zasoby informatyczne ZUT. Dane we wnętrzu komputera: bity i bajty, kod dwójkowy a kod szesnastkowy i ósemkowy, wewnętrzna reprezentacja danych - znaki, liczby całkowite (uzupełnienie dwójkowe), liczby rzeczywiste (zapis zmienno- i stałopozycyjny). Zasady adresowania pamięci. Niezawodność zapamiętywania i przesyłania danych, kontrola parzystości. Charakterystyka języków programowania, programowanie strukturalne i obiektowe, programowanie wizualne, proces kompilacji i konsolidacji programu, zasady formułowania zadań dla komputera. | 4 |
T-W-2 | Zasady tworzenia algorytmów oraz sposoby formalnego ich zapisu, w tym z wykorzystaniem języków programowania. Przykłady algorytmów w postaci sieci działań, dotyczących przetwarzania danych w macierzy, rekurencji, postępowania iteracyjnego, konwersji systemów liczenia itp. | 2 |
T-W-3 | Symbole standardowe, słowa kluczowe, pojęcie typu danych, standardowe typy danych, stałe i zmienne, dyrektywy #define i #include. Instrukcje wyjścia i specyfikatory formatowania, kody sterujące. Instrukcje przypisania, wyrażenia arytmetyczne i logiczne, priorytety wartościowania wyrażeń, standardowe funkcje matematyczne, operatory bitowe. Warunkowa instrukcja przypisania. | 3 |
T-W-4 | Instrukcje wejścia, operator pobrania adresu i kody konwersji. Instrukcje bloku, decyzyjne, iteracyjne, przekazywanie sterowania do instrukcji etykietowanych. Typ tablicowy i łańcuchy. Zasady tworzenia kodów źródłowych do wcześniej prezentowanych algorytmów. | 9 |
T-W-5 | Zasady programowania strukturalnego i wykorzystywania podprogramów standardowych i niestandardowych. Porównanie struktury kodu źródłowego programu w języku C/C++ ze strukturami kodów, sporządzonych w innych językach programowania wysokiego poziomu (Pascal, Fortran). Wykorzystanie dyrektywy #define do definiowania prostych funkcji. Obszar i czas działania zmiennych automatycznych, zewnętrznych i statycznych. Zasady tworzenia funkcji (typu funkcja matematyczna) zwracających wartość oraz funkcji (typu procedura) nie zwracających wartości. | 2 |
T-W-6 | Zasady przekazywania danych pomiędzy funkcjami: zmienne zewnętrzne, jedno i dwukierunkowa komunikacja poprzez parametry. Wskaźniki i sposób ich wykorzystania do dwukierunkowego przekazywania danych przez parametry. Rekurencja i rekurencja niejawna w funkcjach. | 3 |
T-W-7 | Niestandardowe typy danych: typ wyliczeniowy, struktury i unie, pliki. Wykorzystanie języka C do programowania wybranych zadań niskiego poziomu. | 4 |
27 |
Obciążenie pracą studenta - formy aktywności
KOD | Forma aktywności | Godziny |
---|---|---|
laboratoria | ||
A-L-1 | uczestnictwo w zajęciach | 18 |
A-L-2 | przygotowanie do zajęć (krótkie sprawdziany ) | 16 |
A-L-3 | samodzielne wykonywanie programów (zadania domowe) | 15 |
A-L-4 | przygotowanie do zaliczenia poszczególnych ćwiczeń | 10 |
59 | ||
wykłady | ||
A-W-1 | uczestnictwo w zajęciach | 27 |
A-W-2 | Przygotowanie do zajęć (utrwalanie i powtarzanie materiału) | 35 |
A-W-3 | Praca własna z literaturą | 30 |
A-W-4 | Przygotowanie do egzaminu | 27 |
119 |
Metody nauczania / narzędzia dydaktyczne
KOD | Metoda nauczania / narzędzie dydaktyczne |
---|---|
M-1 | Wykład informacyjny z przykładami |
M-2 | Praca własna w laboratorium komputerowym. |
Sposoby oceny
KOD | Sposób oceny |
---|---|
S-1 | Ocena formująca: Sprawdzian z wykładów. |
S-2 | Ocena formująca: Zaliczenie laboratorium. |
S-3 | Ocena podsumowująca: Sprawdzian końcowy z wykładów. |
S-4 | Ocena podsumowująca: Zaliczenie końcowe laboratorium. |
Zamierzone efekty kształcenia - wiedza
Zamierzone efekty kształcenia | Odniesienie do efektów kształcenia dla kierunku studiów | Odniesienie do efektów zdefiniowanych dla obszaru kształcenia | Odniesienie do efektów kształcenia prowadzących do uzyskania tytułu zawodowego inżyniera | Cel przedmiotu | Treści programowe | Metody nauczania | Sposób oceny |
---|---|---|---|---|---|---|---|
EL_1A_B03_W01 Ma wiedzę w zakresie technik programowania w języku C. | EL_1A_W13 | T1A_W02, T1A_W07 | InzA_W02 | C-1 | T-W-2, T-W-3, T-W-6, T-W-7, T-W-1, T-W-4, T-W-5 | M-1 | S-1, S-3 |
Zamierzone efekty kształcenia - umiejętności
Zamierzone efekty kształcenia | Odniesienie do efektów kształcenia dla kierunku studiów | Odniesienie do efektów zdefiniowanych dla obszaru kształcenia | Odniesienie do efektów kształcenia prowadzących do uzyskania tytułu zawodowego inżyniera | Cel przedmiotu | Treści programowe | Metody nauczania | Sposób oceny |
---|---|---|---|---|---|---|---|
EL_1A_B03_U01 Student nabył umiejętność analizy i wytwarzania kodu oraz potrafi dokonać implementacji prostego problemu programistycznego w języku C. | EL_1A_U08, EL_1A_U01 | T1A_U01, T1A_U08, T1A_U09 | InzA_U01, InzA_U02 | C-3, C-2 | T-L-4, T-L-6, T-L-3, T-L-5, T-L-2, T-L-1, T-L-9, T-L-7, T-L-8 | M-2 | S-4, S-2 |
Kryterium oceny - wiedza
Efekt kształcenia | Ocena | Kryterium oceny |
---|---|---|
EL_1A_B03_W01 Ma wiedzę w zakresie technik programowania w języku C. | 2,0 | |
3,0 | Ma wiedzę w zakresie technik programowania w języku C. | |
3,5 | ||
4,0 | ||
4,5 | ||
5,0 |
Kryterium oceny - umiejętności
Efekt kształcenia | Ocena | Kryterium oceny |
---|---|---|
EL_1A_B03_U01 Student nabył umiejętność analizy i wytwarzania kodu oraz potrafi dokonać implementacji prostego problemu programistycznego w języku C. | 2,0 | |
3,0 | Student nabył umiejętność analizy i wytwarzania kodu oraz potrafi dokonać implementacji prostego problemu programistycznego w języku C. | |
3,5 | ||
4,0 | ||
4,5 | ||
5,0 |
Literatura podstawowa
- Kernighan B. W., Ritchie D. M, Język ANSI C, WNT, Warszawa, 2004
- Loudon K, Algorytmy w C, Helion, Warszawa, 2003
- Oualline S, Język C. Programowanie, Helion, Warszawa, 2003
Literatura dodatkowa
- Metzger P, Anatomia PC, Helion, Warszawa, 2006
- Tłuczek, Programowanie w języku C. Ćwiczenia praktyczne., Helion, Warszawa, 2001