Wydział Elektryczny - Elektrotechnika (S1)
Sylabus przedmiotu Podstawy algorytmizacji i programowania:
Informacje podstawowe
Kierunek studiów | Elektrotechnika | ||
---|---|---|---|
Forma studiów | studia stacjonarne | Poziom | pierwszego stopnia |
Tytuł zawodowy absolwenta | inżynier | ||
Obszary studiów | charakterystyki PRK, kompetencje inżynierskie PRK | ||
Profil | ogólnoakademicki | ||
Moduł | — | ||
Przedmiot | Podstawy algorytmizacji i programowania | ||
Specjalność | przedmiot wspólny | ||
Jednostka prowadząca | Katedra Elektrotechniki Teoretycznej i Informatyki Stosowanej | ||
Nauczyciel odpowiedzialny | Andrzej Brykalski <Andrzej.Brykalski@zut.edu.pl> | ||
Inni nauczyciele | Maciej Burak <Maciej.Burak@zut.edu.pl>, Katarzyna Cichoń <Katarzyna.Cichon@zut.edu.pl>, Irena Karpik <Irena.Karpik@zut.edu.pl> | ||
ECTS (planowane) | 6,0 | ECTS (formy) | 6,0 |
Forma zaliczenia | egzamin | Język | polski |
Blok obieralny | — | Grupa obieralna | — |
Formy dydaktyczne
Wymagania wstępne
KOD | Wymaganie wstępne |
---|---|
W-1 | Znajomość podstaw informatyki w zakresie szkoły średniej. |
Cele przedmiotu
KOD | Cel modułu/przedmiotu |
---|---|
C-1 | Zapoznanie studentów z podstawowymi pojęciami informatyki. |
C-2 | Zapoznanie studentów z zakresem technik programowania strukturalnego w języku C |
C-3 | Zapoznanie studentów z procesem 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 | Edycja, kompilacja i uruchomienie prostego programu w języku C. Typy danych, deklaracja zmiennych, instrukcja przypisania. Biblioteka stdio.h, funkcje "scanf", "printf". | 2 |
T-L-2 | Wyrażenia arytmetyczne, logiczne, funkcje matematyczne (biblioteka math.h). Instrukcje warunkowe „if…else”, "switch". | 2 |
T-L-3 | Zaliczenie (if ). Schematy blokowe wybranych algorytmów. Prosty program z instrukcją pętli „while” lub „do while”. | 2 |
T-L-4 | Instrukcja "for". Wprowadzenie do tablic jednowymiarowych- deklaracja tablicy,wczytanie i wyświetlenie danych. | 2 |
T-L-5 | Sprawdzian1. | 2 |
T-L-6 | Tablice jednowymiarowe. | 2 |
T-L-7 | Łańcuchy. Funkcje "gets","fgets", "puts","fputs". Biblioteka string.h. Operacje na elementach łańcucha. | 2 |
T-L-8 | Tablice dwuwymiarowe. | 2 |
T-L-9 | Sprawdzian2. | 2 |
T-L-10 | Funkcje własne. Definicja funkcji, argumenty funkcji, zwracanie wartości, prototyp, wywołanie funkcji. | 2 |
T-L-11 | Wskaźniki. Zastosowanie wskaźników jako parametrów funkcji. Funkcje przetwarzające tablice. | 2 |
T-L-12 | Struktury. Definicja typu, tablica struktur, struktury w funkcjach, wskaźniki do struktur. | 2 |
T-L-13 | Typ plikowy "FILE". Funkcja otwarcia pliku, tryby pracy, funkcje plikowe do odczytu i zapisu. | 2 |
T-L-14 | Sprawdzian3. | 2 |
T-L-15 | Poprawy sprawdzianów. Zaliczenie laboratorium. | 2 |
30 | ||
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). | 3 |
T-W-2 | Zasady adresowania pamięci. Niezawodność zapamiętywania i przesyłania danych, kontrola parzystości. | 1 |
T-W-3 | Charakterystyka języków programowania, programowanie strukturalne i obiektowe, programowanie wizualne, proces kompilacji i konsolidacji programu, zasady formułowania zadań dla komputera. | 1 |
T-W-4 | Zasady tworzenia algorytmów oraz sposoby formalnego ich zapisu, w tym z wykorzystaniem języków programowania. | 1 |
T-W-5 | Przykłady algorytmów w postaci sieci działań, dotyczących przetwarzania danych w macierzy, rekurencji, postępowania iteracyjnego, konwersji systemów liczenia itp. | 3 |
T-W-6 | 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. | 3 |
T-W-7 | Instrukcje przypisania, wyrażenia arytmetyczne i logiczne, priorytety wartościowania wyrażeń, standardowe funkcje matematyczne, operatory bitowe. | 3 |
T-W-8 | Warunkowa instrukcja przypisania. | 1 |
T-W-9 | Instrukcje wejścia, operator pobrania adresu i kody konwersji. | 3 |
T-W-10 | Instrukcje bloku, decyzyjne, iteracyjne, przekazywanie sterowania do instrukcji etykietowanych. | 3 |
T-W-11 | Typ tablicowy i łańcuchy. | 2 |
T-W-12 | Zasady tworzenia kodów źródłowych do wcześniej prezentowanych algorytmów. | 3 |
T-W-13 | 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). | 2 |
T-W-14 | 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. | 3 |
T-W-15 | 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-16 | Typ wyliczeniowy. | 1 |
T-W-17 | Struktury. | 3 |
T-W-18 | Unie. | 3 |
T-W-19 | Pliki. | 3 |
45 |
Obciążenie pracą studenta - formy aktywności
KOD | Forma aktywności | Godziny |
---|---|---|
laboratoria | ||
A-L-1 | Uczestnictwo w zajęciach | 30 |
A-L-2 | Przygotowanie do zajęć (wejściówki ) | 10 |
A-L-3 | Samodzielne wykonywanie programów w domu. | 10 |
A-L-4 | Przygotowanie do sprawdzianów. | 15 |
65 | ||
wykłady | ||
A-W-1 | Uczestnictwo w zajęciach | 45 |
A-W-2 | Przygotowanie do zajęć (utrwalanie i powtarzanie materiału) | 15 |
A-W-3 | Praca własna z literaturą | 10 |
A-W-4 | Przygotowanie do egzaminu | 15 |
85 |
Metody nauczania / narzędzia dydaktyczne
KOD | Metoda nauczania / narzędzie dydaktyczne |
---|---|
M-1 | Wykład informacyjny z przykładami |
M-2 | Praca 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 uczenia się - wiedza
Zamierzone efekty uczenia się | Odniesienie do efektów kształcenia dla kierunku studiów | Odniesienie do efektów zdefiniowanych dla obszaru kształcenia | Odniesienie do efektów uczenia się prowadzących do uzyskania tytułu zawodowego inżyniera | Cel przedmiotu | Treści programowe | Metody nauczania | Sposób oceny |
---|---|---|---|---|---|---|---|
EL_1A_B02_W01 Ma wiedzę w zakresie binarnego kodowania podstawowych, ustandaryzowanych typów danych. | EL_1A_W13 | — | — | C-1 | T-W-1, T-W-2, T-W-3 | M-1 | S-1, S-3 |
EL_1A_B02_W02 Ma wiedzę w zakresie zasad tworzenia algorytmów obliczeniowych. | EL_1A_W13 | — | — | C-3 | T-W-4, T-W-5 | M-1 | S-1 |
EL_1A_B02_W03 Ma wiedzę w zakresie technik programowania w języku C. | EL_1A_W13 | — | — | C-2 | T-W-6, T-W-7, T-W-8, T-W-9, T-W-10, T-W-11, T-W-12, T-W-13, T-W-14, T-W-15, T-W-16, T-W-17, T-W-18, T-W-19 | M-1 | S-1, S-3 |
Zamierzone efekty uczenia się - umiejętności
Zamierzone efekty uczenia się | Odniesienie do efektów kształcenia dla kierunku studiów | Odniesienie do efektów zdefiniowanych dla obszaru kształcenia | Odniesienie do efektów uczenia się prowadzących do uzyskania tytułu zawodowego inżyniera | Cel przedmiotu | Treści programowe | Metody nauczania | Sposób oceny |
---|---|---|---|---|---|---|---|
EL_1A_B02_U01 Student nabył umiejętność analizy i wytwarzania kodu oraz potrafi dokonać implementacji prostego problemu programistycznego w języku C. | EL_1A_U01, EL_1A_U08 | — | — | C-2, C-3 | T-L-3, T-L-1, T-L-2, T-L-5, T-L-4, T-L-6, T-L-7, T-L-8, T-L-9 | M-2 | S-2, S-4 |
EL_1A_B02_U02 Student samodzielnie potrafi zaimplementować złożony algorytm w postaci programu w języku C, z wykorzystaniem narzędzi programowania strukturalnego. | EL_1A_U01, EL_1A_U08 | — | — | C-2, C-3 | T-L-10, T-L-11, T-L-12, T-L-13, T-L-14, T-L-15 | M-2 | S-2, S-4 |
Kryterium oceny - wiedza
Efekt uczenia się | Ocena | Kryterium oceny |
---|---|---|
EL_1A_B02_W01 Ma wiedzę w zakresie binarnego kodowania podstawowych, ustandaryzowanych typów danych. | 2,0 | Student uzyskał punktację w zakresie poniżej 50% pytań egzaminacyjnych lub bieżących, krótkich sprawdzianów z treści wykładów, przeprowadzanych przed przystąpieniem do zadań w ramach ćwiczeń laboratoryjnych. |
3,0 | Student uzyskał punktację w zakresie 50-59% pytań egzaminacyjnych lub bieżących, krótkich sprawdzianów z treści wykładów, przeprowadzanych przed przystąpieniem do zadań w ramach ćwiczeń laboratoryjnych. | |
3,5 | Student uzyskał punktację w zakresie 60-69% pytań egzaminacyjnych lub bieżących, krótkich sprawdzianów z treści wykładów, przeprowadzanych przed przystąpieniem do zadań w ramach ćwiczeń laboratoryjnych. | |
4,0 | Student uzyskał punktację w zakresie 70-79% pytań egzaminacyjnych lub bieżących, krótkich sprawdzianów z treści wykładów, przeprowadzanych przed przystąpieniem do zadań w ramach ćwiczeń laboratoryjnych. | |
4,5 | Student uzyskał punktację w zakresie 80-89% pytań egzaminacyjnych lub bieżących, krótkich sprawdzianów z treści wykładów, przeprowadzanych przed przystąpieniem do zadań w ramach ćwiczeń laboratoryjnych. | |
5,0 | Student uzyskał punktację w zakresie 90-100% pytań egzaminacyjnych lub bieżących, krótkich sprawdzianów z treści wykładów, przeprowadzanych przed przystąpieniem do zadań w ramach ćwiczeń laboratoryjnych. | |
EL_1A_B02_W02 Ma wiedzę w zakresie zasad tworzenia algorytmów obliczeniowych. | 2,0 | Student uzyskał punktację w zakresie poniżej 50% pytań egzaminacyjnych lub bieżących, krótkich sprawdzianów z treści wykładów, przeprowadzanych przed przystąpieniem do zadań w ramach ćwiczeń laboratoryjnych. |
3,0 | Student uzyskał punktację w zakresie 50-59% pytań egzaminacyjnych lub bieżących, krótkich sprawdzianów z treści wykładów, przeprowadzanych przed przystąpieniem do zadań w ramach ćwiczeń laboratoryjnych. | |
3,5 | Student uzyskał punktację w zakresie 60-69% pytań egzaminacyjnych lub bieżących, krótkich sprawdzianów z treści wykładów, przeprowadzanych przed przystąpieniem do zadań w ramach ćwiczeń laboratoryjnych. | |
4,0 | Student uzyskał punktację w zakresie 70-79% pytań egzaminacyjnych lub bieżących, krótkich sprawdzianów z treści wykładów, przeprowadzanych przed przystąpieniem do zadań w ramach ćwiczeń laboratoryjnych. | |
4,5 | Student uzyskał punktację w zakresie 80-89% pytań egzaminacyjnych lub bieżących, krótkich sprawdzianów z treści wykładów, przeprowadzanych przed przystąpieniem do zadań w ramach ćwiczeń laboratoryjnych. | |
5,0 | Student uzyskał punktację w zakresie 90-100% pytań egzaminacyjnych lub bieżących, krótkich sprawdzianów z treści wykładów, przeprowadzanych przed przystąpieniem do zadań w ramach ćwiczeń laboratoryjnych. | |
EL_1A_B02_W03 Ma wiedzę w zakresie technik programowania w języku C. | 2,0 | Student uzyskał punktację w zakresie poniżej 50% pytań egzaminacyjnych lub bieżących, krótkich sprawdzianów z treści wykładów, przeprowadzanych przed przystąpieniem do zadań w ramach ćwiczeń laboratoryjnych. |
3,0 | Student uzyskał punktację w zakresie 50-59% pytań egzaminacyjnych lub bieżących, krótkich sprawdzianów z treści wykładów, przeprowadzanych przed przystąpieniem do zadań w ramach ćwiczeń laboratoryjnych. | |
3,5 | Student uzyskał punktację w zakresie 60-69% pytań egzaminacyjnych lub bieżących, krótkich sprawdzianów z treści wykładów, przeprowadzanych przed przystąpieniem do zadań w ramach ćwiczeń laboratoryjnych. | |
4,0 | Student uzyskał punktację w zakresie 70-79% pytań egzaminacyjnych lub bieżących, krótkich sprawdzianów z treści wykładów, przeprowadzanych przed przystąpieniem do zadań w ramach ćwiczeń laboratoryjnych. | |
4,5 | Student uzyskał punktację w zakresie 80-89% pytań egzaminacyjnych lub bieżących, krótkich sprawdzianów z treści wykładów, przeprowadzanych przed przystąpieniem do zadań w ramach ćwiczeń laboratoryjnych. | |
5,0 | Student uzyskał punktację w zakresie 90-100% pytań egzaminacyjnych lub bieżących, krótkich sprawdzianów z treści wykładów, przeprowadzanych przed przystąpieniem do zadań w ramach ćwiczeń laboratoryjnych. |
Kryterium oceny - umiejętności
Efekt uczenia się | Ocena | Kryterium oceny |
---|---|---|
EL_1A_B02_U01 Student nabył umiejętność analizy i wytwarzania kodu oraz potrafi dokonać implementacji prostego problemu programistycznego w języku C. | 2,0 | Student nie nabył umiejętności analizy i wytwarzania kodu oraz nie potrafi dokonać implementacji prostego problemu programistycznego w języku C. Student nie uzyskał z każdej formy oceny min. 3,00. |
3,0 | Student nabył umiejętność analizy i wytwarzania kodu oraz potrafi dokonać implementacji prostego problemu programistycznego w języku C. Pozytywnie zaliczone trzy kolokwia cząstkowe przewidziane w planie przedmiotu. Obliczana ocena końcowa jest średnią arytmetyczna trzech uzyskanych ocen ( przy czym każda powinna być pozytywna). Końcowa uzyskana ocena zaliczająca jest zaokrąglana wg. regulaminu studiów wyższych w Zachodniopomorskim Uniwersytecie Technologicznym w Szczecinie. | |
3,5 | Student uzyskał średnią ocen min. 3,25 i z każdej formy oceny min. 3,00. | |
4,0 | Student nabył umiejętność analizy i wytwarzania kodu oraz potrafi dokonać implementacji problemu programistycznego w języku C. Student potrafi samodzielnie rozwiązać większość zadań, problem programistyczny i uruchomić poprawnie wykonany kod źródłowy z użyciem środowiska programistycznego. Pozytywnie zaliczone trzy kolokwia cząstkowe przewidziane w planie przedmiotu. Obliczana ocena końcowa jest średnią arytmetyczna trzech uzyskanych ocen ( przy czym każda powinna być pozytywna). Końcowa uzyskana ocena zaliczająca jest zaokrąglana wg. regulaminu studiów wyższych w Zachodniopomorskim Uniwersytecie Technologicznym w Szczecinie. | |
4,5 | Student uzyskał średnią ocen min. 4,25 i z każdej formy oceny min. 3,00. | |
5,0 | Student nabył umiejętność analizy i wytwarzania kodu oraz potrafi dokonać implementacji problemu programistycznego w języku C. Student potrafi samodzielnie rozwiązać wszystkie zadania, problem programistyczny i uruchomić poprawnie wykonany kod źródłowy z użyciem środowiska programistycznego. Pozytywnie zaliczone trzy kolokwia cząstkowe przewidziane w planie przedmiotu. Obliczana ocena końcowa jest średnią arytmetyczna trzech uzyskanych ocen ( przy czym każda powinna być pozytywna). Końcowa uzyskana ocena zaliczająca jest zaokrąglana wg. regulaminu studiów wyższych w Zachodniopomorskim Uniwersytecie Technologicznym w Szczecinie. | |
EL_1A_B02_U02 Student samodzielnie potrafi zaimplementować złożony algorytm w postaci programu w języku C, z wykorzystaniem narzędzi programowania strukturalnego. | 2,0 | Student nie nabył umiejętności analizy i wytwarzania kodu oraz nie potrafi dokonać implementacji prostego problemu programistycznego w języku C. Student nie uzyskał z każdej formy oceny min. 3,00. |
3,0 | Student potrafi samodzielnie rozwiązać większość zadań, problem programistyczny i uruchomić poprawnie wykonany kod źródłowy z użyciem środowiska programistycznego. Pozytywnie zaliczone trzy kolokwia cząstkowe przewidziane w planie przedmiotu. Obliczana ocena końcowa jest średnią arytmetyczna trzech uzyskanych ocen ( przy czym każda powinna być pozytywna). Końcowa uzyskana ocena zaliczająca jest zaokrąglana wg. regulaminu studiów wyższych w Zachodniopomorskim Uniwersytecie Technologicznym w Szczecinie. | |
3,5 | Student uzyskał średnią ocen min. 3,25 i z każdej formy oceny min. 3,00. | |
4,0 | Student nabył umiejętność analizy i wytwarzania kodu oraz potrafi dokonać implementacji problemu programistycznego w języku C. Student potrafi samodzielnie rozwiązać większość zadań, problem programistyczny i uruchomić poprawnie wykonany kod źródłowy z użyciem środowiska programistycznego. Pozytywnie zaliczone trzy kolokwia cząstkowe przewidziane w planie przedmiotu. Obliczana ocena końcowa jest średnią arytmetyczna trzech uzyskanych ocen ( przy czym każda powinna być pozytywna). Końcowa uzyskana ocena zaliczająca jest zaokrąglana wg. regulaminu studiów wyższych w Zachodniopomorskim Uniwersytecie Technologicznym w Szczecinie. | |
4,5 | Student uzyskał średnią ocen min. 4,25 i z każdej formy oceny min. 3,00. | |
5,0 | Student nabył umiejętność analizy i wytwarzania kodu oraz potrafi dokonać implementacji problemu programistycznego w języku C. Student potrafi samodzielnie rozwiązać wszystkie zadania, problem programistyczny i uruchomić poprawnie wykonany kod źródłowy z użyciem środowiska programistycznego. Pozytywnie zaliczone trzy kolokwia cząstkowe przewidziane w planie przedmiotu. Obliczana ocena końcowa jest średnią arytmetyczna trzech uzyskanych ocen ( przy czym każda powinna być pozytywna). Końcowa uzyskana ocena zaliczająca jest zaokrąglana wg. regulaminu studiów wyższych w Zachodniopomorskim Uniwersytecie Technologicznym w Szczecinie. |
Literatura podstawowa
- Stephen G. Kochan, Język C Kompendium wiedzy. Kompletny przewodnik po języku C., Helion, 2015, IV
- Michał Matlak, Język C/C++ i obliczenia numeryczne. Krótkie wprowadzenie., Helion, 2016
- Stephen Prata, Język C. Szkoła programowania., Helion, 2016
- Zed A. Shaw, Programowanie w C. Sprytne podejście do trudnych zagadnień, których wolałbyś unikać (takich jak język C)., Helion, 2016
Literatura dodatkowa
- Kernighan B. W., Ritchie D. M, Język ANSI C, WNT, Warszawa, 2004
- Stephen Prata, Język C++. Szkoła programowania, Helion, 2016, IV
- Bjarne Stroustrup, Język C++. Kompendium wiedzy., Helion, 2014, IV