logo PRZ
Karta przedmiotu
logo WYDZ

Wstęp do programowania


Podstawowe informacje o zajęciach

Cykl kształcenia:
2025/2026
Nazwa jednostki prowadzącej studia:
Wydział Elektrotechniki i Informatyki
Nazwa kierunku studiów:
Informatyka
Obszar kształcenia:
nauki techniczne
Profil studiów:
ogólnoakademicki
Poziom studiów:
pierwszego stopnia
Forma studiów:
stacjonarne
Specjalności na kierunku:
AA - inżynieria systemów informatycznych, AI - Sztuczna inteligencja, TT - informatyka w przedsiębiorstwie, Z - inżynieria systemów złożonych
Tytuł otrzymywany po ukończeniu studiów:
inżynier
Nazwa jednostki prowadzącej zajęcia:
Katedra Elektrotechniki i Podstaw Informatyki
Kod zajęć:
409
Status zajęć:
obowiązkowy dla programu
Układ zajęć w planie studiów:
sem: 1 / W30 L15 / 3 ECTS / Z
Język wykładowy:
polski
Imię i nazwisko koordynatora:
dr inż. Grzegorz Drałus
Terminy konsultacji koordynatora:
http://pei.prz.edu.pl/plan_zajec_semestr.php
semestr 1:
dr inż. Bogdan Kwiatkowski , termin konsultacji http://pei.prz.edu.pl/plan_zajec_semestr.php
semestr 1:
mgr inż. Paweł Szczupak , termin konsultacji http://pei.prz.edu.pl/plan_zajec_semestr.php

Cel kształcenia i wykaz literatury

Główny cel kształcenia:
Zasadniczym celem kształcenia na module jest prezentacja podstawowych zagadnień z zakresu techniki programowania w językach wysokiego poziomu.

Ogólne informacje o zajęciach:
Moduł poświęcony jest prezentacji podstaw programowania proceduralnego. Omawiany jest proces tworzenia rozwiązania w postaci algorytmu i programu. Podstawy języka i środowiska programowania, (edytor, kompilator, debbuger). Przedstawia się metody sterowanie przebiegiem programu, podstawowe i złożone typy danych, wyrażenia, zmienne statyczne, wskaźniki, zmienne dynamiczne. Analizuje się zagadnienia strukturalizacji programu, procedury i funkcje oraz metody przekazywania parametrów. Rozważa się zagadnienia rekursji. Studenci zapoznają się ze stosowaniem standardowych bibliotek, sterowania strumieniami wejścia-wyjścia i zarządzania plikami. Przedstawia się podstawowe techniki programowania obiektowego.

Materiały dydaktyczne:
http://www.pei.prz.edu.pl/dydaktyka.html, http://e-learning.prz.edu.pl/

Wykaz literatury, wymaganej do zaliczenia zajęć
Literatura wykorzystywana podczas zajęć wykładowych
1 Downey Allen B. Myśl w języku Python! Nauka programowania Helion. 2025
2 Mariano Anaya Czysty kod w Pythonie. Twórz wydajny i łatwy w utrzymaniu kod Helion. 2022
3 Lutz Mark Python. Wprowadzenie Helion. 2022
Literatura wykorzystywana podczas zajęć ćwiczeniowych/laboratoryjnych/innych
1 Piotr Wróblewski Algorytmy w Pythonie. Techniki programowania dla praktyków Helion. 2023
2 Gawryszewski Marek, Kierzkowski Andrzej Python Ćwiczenia praktyczne Helion. 2017
Literatura do samodzielnego studiowania
1 Moskała Marcin Python od podstaw Moskała Marcin. 2022
2 Eric Matthes Python Crash Course No Starch Press. 2018

Wymagania wstępne w kategorii wiedzy / umiejętności / kompetencji społecznych

Wymagania formalne:
Student powinien znać podstawowe zagadnienia z zakresu algebry i analizy matematycznej

Wymagania wstępne w kategorii Wiedzy:
Student powinien mieć wiedzę w zakresie matematyki, wykorzystywaną do formułowania i rozwiązywania prostych zadań inżynierskich związanych z informatyką.

Wymagania wstępne w kategorii Umiejętności:
Student powinien umieć użyć wiedzę matematyczną do formułowania i rozwiązywania prostych zadań informatycznych w oparciu o metody analityczne i eksperymentalne.

Wymagania wstępne w kategorii Kompetencji społecznych:
Ma świadomość odpowiedzialności za własną pracę.

Efekty kształcenia dla zajęć

MEK Student, który zaliczył zajęcia Formy zajęć/metody dydaktyczne prowadzące do osiągnięcia danego efektu kształcenia Metody weryfikacji każdego z wymienionych efektów kształcenia Związki z KEK Związki z PRK
MEK01 Analizuje gotowy kod programu wykład, laboratorium zaliczenie cz. pisemna, zaliczenie cz. praktyczna (laboratorium) K-W04++
K-U04++
K-K01++
P6S-KK
P6S-UK
P6S-UU
P6S-WG
MEK02 Formułuje algorytm rozwiązania zadania programistycznego wykład, laboratorium zaliczenie cz. pisemna, zaliczenie cz. praktyczna K-U01+++
K-U08+++
P6S-UW
MEK03 Projektuje i programuje poste aplikacje z użyciem techniki programowania strukturalnego i proceduralnego wykład, laboratorium zaliczenie cz. pisemna, zaliczenie cz. praktyczna, K-U04++
K-U08+++
K-K02++
P6S-KK
P6S-KO
P6S-UK
P6S-UU
P6S-UW
MEK04 Programuje poste aplikacje z użyciem techniki programowania obiektowego wykład, laboratorium zaliczenie cz. pisemna, zaliczenie cz. praktyczna, obserwacja wykonawstwa K-U08+++
K-K02++
K-K07++
P6S-KK
P6S-KO
P6S-UU
P6S-UW

Treści kształcenia dla zajęć

Sem. TK Treści kształcenia Realizowane na MEK
1 TK01 Pojęcia podstawowe: algorytm, zmienna, instrukcja, program. Notacje algorytmów: sieć działań, notacja liniowa. W01, L01 MEK02
1 TK02 Kompilatory i interpretery kodu. Środowiska programistyczne. Elementy języka Python, symbole, identyfikatory, styl programowania. Struktura programu, deklaracje nazw i typów, deklaracje zmiennych. Uruchamianie programów w środowisku. Edytor programisty, środowisko zintegrowane, śledzenie przebiegu programu, praca krokowa, podglądanie i modyfikowanie wartości zmiennych. W02, W03, L01 MEK01
1 TK03 Typy danych, konwersja typów. Rola typu w procesie tworzenia programu, Znaczenie typu w procesie kompilacji. Typy całkowite – reprezentacja liczb. Typ znakowy – kodowanie znaków. Typy zmiennoprzecinkowe - reprezentacja. Arytmetyka (całkowita a zmiennoprzecinkowa). Zmienne i wyrażenia. Operatory: matematyczne, relacyjne, logiczne, bitowe. Priorytety operatorów. W03, W04, L02 MEK01
1 TK04 Sterowanie przebiegiem programu. Instrukcje: pusta, przypisania, złożona, warunkowa. Instrukcje iteracyjne, wyboru. Instrukcje złożone w instrukcjach sterujących. Formatowanie i operacje wejścia/wyjścia. W05, L02 MEK01 MEK02 MEK03
1 TK05 Złożone typy danych. Listy, operacje na listach, wyrażenia lambda i programowanie funkcyjne, słowniki, zbiory, generatory i iteratory, moduły. Wytworniki list. W06, L03 MEK03
1 TK06 Funkcje, pojęcie funkcji; zwracanie wyniku, przekazywanie parametrów. Czas życia i zakres ważności zmiennych, zakres lokalny, zakres globalny, funkcje biblioteczne. Rekurencja, funkcje rekurencyjne. W07, W08, L04 MEK01 MEK03
1 TK07 Pliki, zmienna plikowa, otwarcie i zamknięcie pliku, czytanie i zapis danych do pliku. Pliki tekstowe i binarne. Wyjątki, obsługa, błędów. Moduły, pakiety, struktury dynamiczne: stos, kolejka, lista. W9, W10, L05 MEK02 MEK03
1 TK08 Podstawy programowania obiektowego. Klasy i ich składowe. obiekty, metody, "pseudo" konstruktor. Hermetyzacja, dziedziczenie. Zasady tworzenia kodu programu z wykorzystaniem technik programowania obiektowego. W11, W12, L06 MEK03 MEK04
1 TK09 Programowanie w systemie Windows. Programy sterowane zdarzeniami. Graficzny interfejs użytkownika. Przykłady tworzenia prostych aplikacji. Zasady uruchamiania i śledzenia aplikacji Windows. Gotowe biblioteki. W13, W14, W15, L07 MEK03 MEK04

Nakład pracy studenta

Forma zajęć Praca przed zajęciami Udział w zajęciach Praca po zajęciach
Wykład (sem. 1) Godziny kontaktowe: 30.00 godz./sem.
Uzupełnienie/studiowanie notatek: 5.00 godz./sem.
Studiowanie zalecanej literatury: 10.00 godz./sem.
Laboratorium (sem. 1) Przygotowanie do laboratorium: 7.00 godz./sem.
Godziny kontaktowe: 15.00 godz./sem.
Dokończenia/wykonanie sprawozdania: 10.00 godz./sem.
Konsultacje (sem. 1) Przygotowanie do konsultacji: 1.00 godz./sem.
Zaliczenie (sem. 1) Przygotowanie do zaliczenia: 5.00 godz./sem.
Zaliczenie pisemne: 1.00 godz./sem.

Sposób wystawiania ocen składowych zajęć i oceny końcowej

Forma zajęć Sposób wystawiania oceny podsumowującej
Wykład Zaliczenie pisemne na ostatnim wykładzie. Zaliczenie wykładu od 51% uzyskanych punktów.
Laboratorium Do zaliczenia przedmiotu należy wykonać wszystkie laboratoria. Oceniana jest jakość wykonanych zadań i sprawozdań. Na ostatnich zajęciach sprawdzian zaliczeniowy w formie praktycznego programowania na komputerze. Oceną końcową to 0.32*sprawozdania+ 0.68*kolokwium. Gradacja ocen: 0-50% - 2.0, 51-60% - 3.0, 61-70% - 3.5, 71-80% - 4.0, 81-90% - 4.5, 91-100% - 5.0. Kolokwium zaliczeniowe obejmujące całość materiału, odbędzie się w przedostatnim lub ostatnim tygodniu semestru.
Ocena końcowa Ocena końcowa wystawiana jest jako średnia ważona: 0.67 oceny z laboratorium oraz 0.33 oceny z zaliczenia wykładu.

Przykładowe zadania

Wymagane podczas egzaminu/zaliczenia
(-)

Realizowane podczas zajęć ćwiczeniowych/laboratoryjnych/projektowych
(-)

Inne
(-)

Czy podczas egzaminu/zaliczenia student ma możliwość korzystania z materiałów pomocniczych : nie

Treści zajęć powiazane są z prowadzonymi badaniami naukowymi tak

1 G. Drałus; G. Karnas; G. Masłowski Identification of cloud-to-ground lightning and intra-cloud lightning based on their radiated electric field signatures using different types of neural networks and machine learning classifiers 2024
2 G. Drałus; J. Kusznier; D. Mazur; K. Szostek Analysis of the Effectiveness of ARIMA, SARIMA, and SVR Models in Time Series Forecasting: A Case Study of Wind Farm Energy Production 2024
3 G. Drałus; M. Gołębiowski; P. Hawro; P. Krutys; T. Kwater Comprehensive online estimation of object signals for a control system with an adaptive approach and incomplete measurements 2024
4 G. Drałus Metody śledzenia punktu MPP modułu fotowoltaicznego 2023
5 G. Drałus; J. Drałus; J. Kusznier; D. Mazur Application of Artificial Intelligence Algorithms in Multilayer Perceptron and Elman Networks to Predict Photovoltaic Power Plant Generation 2023
6 A. Czmil; G. Drałus; D. Mazur Automatic Detection and Counting of Blood Cells in Smear Images Using RetinaNet 2021
7 G. Dec; G. Drałus; B. Kwiatkowski; D. Mazur Forecasting Models of Daily Energy Generation by PV Panels Using Fuzzy Logic 2021
8 G. Drałus; T. Rak Prognozowanie w horyzoncie jednej godziny produkcji energii przez panel fotowoltaiczny 2020
9 G. Drałus; T. Rak Programowanie równoległe w hybrydowym środowisku MPI i OpenMP na klastrze serwerów 2020