Module also offered within study programmes:
General information:
Name:
Programowanie I
Course of study:
2019/2020
Code:
SENR-1-309-s
Faculty of:
Energy and Fuels
Study level:
First-cycle studies
Specialty:
-
Field of study:
Energy Engineering
Semester:
3
Profile of education:
Academic (A)
Lecture language:
Polish
Form and type of study:
Full-time studies
Course homepage:
 
Responsible teacher:
dr hab. inż. Hołda Adam (adam@agh.edu.pl)
Module summary

Programowanie proceduralne przy wykorzystaniu języka programowania C++

Description of learning outcomes for module
MLO code Student after module completion has the knowledge/ knows how to/is able to Connections with FLO Method of learning outcomes verification (form of completion)
Social competence: is able to
M_K001 Aktywność ENR1A_K01 Activity during classes
Skills: he can
M_U001 Opanowanie umiejętności programowania strukturalnego w języku C++. Opanowanie przez studentów sposobu implementacji podstawowych struktur języka. Umiejętność programowania w środowisku Dev-C++. ENR1A_U01 Test,
Activity during classes,
Oral answer,
Essays written during classes
M_U002 Umiejętność tworzenia prostych aplikacji celem rozwiązania konkretnych problemów matematycznych i fizycznych. ENR1A_U01 Essays written during classes
M_U003 Rozumie rolę, znaczenie i odpowiedzialność programisty w pracy dla aplikacjami oraz pracy zespołowej. ENR1A_U01 Activity during classes
Knowledge: he knows and understands
M_W001 Student ma podstawową wiedzę, w zakresie programowania strukturalnego z głównym naciskiem na jeden z najpopularniejszych języku C++. Zna ogólne zasady opracowywania algorytmów komputerowych, zna podstawy weryfikowania poprawności działania programu oraz reagowania na pojawiające się błędy wykonania i kompilacji ENR1A_W02 Test results
Number of hours for each form of classes:
Sum (hours)
Lecture
Audit. classes
Lab. classes
Project classes
Conv. seminar
Seminar classes
Pract. classes
Zaj. terenowe
Zaj. warsztatowe
Prace kontr. przejść.
Lektorat
45 15 0 30 0 0 0 0 0 0 0 0
FLO matrix in relation to forms of classes
MLO code Student after module completion has the knowledge/ knows how to/is able to Form of classes
Lecture
Audit. classes
Lab. classes
Project classes
Conv. seminar
Seminar classes
Pract. classes
Zaj. terenowe
Zaj. warsztatowe
Prace kontr. przejść.
Lektorat
Social competence
M_K001 Aktywność - - + - - - - - - - -
Skills
M_U001 Opanowanie umiejętności programowania strukturalnego w języku C++. Opanowanie przez studentów sposobu implementacji podstawowych struktur języka. Umiejętność programowania w środowisku Dev-C++. - - + - - - - - - - -
M_U002 Umiejętność tworzenia prostych aplikacji celem rozwiązania konkretnych problemów matematycznych i fizycznych. - - + - - - - - - - -
M_U003 Rozumie rolę, znaczenie i odpowiedzialność programisty w pracy dla aplikacjami oraz pracy zespołowej. - - + - - - - - - - -
Knowledge
M_W001 Student ma podstawową wiedzę, w zakresie programowania strukturalnego z głównym naciskiem na jeden z najpopularniejszych języku C++. Zna ogólne zasady opracowywania algorytmów komputerowych, zna podstawy weryfikowania poprawności działania programu oraz reagowania na pojawiające się błędy wykonania i kompilacji + - - - - - - - - - -
Student workload (ECTS credits balance)
Student activity form Student workload
Summary student workload 115 h
Module ECTS credits 4 ECTS
Udział w zajęciach dydaktycznych/praktyka 45 h
Preparation for classes 35 h
Realization of independently performed tasks 30 h
Contact hours 5 h
Module content
Lectures (15h):
Programowanie w językach strukturalnych

1. Programowanie w językach strukturalnych w tym Pascal, Asembler, Fortran, C ,C#,C.net,i C++ ogólna struktura programu w języku C++. Pliki jako nośnik programu. Pojęcie modułu, kompilacja i linkowanie programu i modułu.
2. Struktura programu, podstawowe instrukcje wejścia wyjścia, formatowanie.
3. Podstawowe typy danych i rozmiary danych, operatory matematyczne, tablice jedno i wielowymiarowe.
4. Operatory relacyjne i logiczne, instrukcja warunkowa if.
5. instrukcje iteracyjne for, while, do … while.
6. Wykorzystanie poznanych instrukcji.
7. Wskaźniki, tablice i wskaźniki, wskaźnik do struktur. Dynamiczne tworzenie struktur danych.
8. Funkcje, przekazywanie argumentów, przeciążanie, czas życia zmiennej
9. Wykorzystanie poznanych instrukcji, rekurencja.
10. Pliki, podstawowe operacje na plikach. Implementacja struktur danych: listy, stosy.
11. Dyrektywy preprocesora, makrodefinicje, efekty uboczne.
12. Implementacje algorytmów i metody ich weryfikacji.
13. Doskonalenie w programowaniu, dokumentowanie algorytmów, komentarze
14. Przegląd podstawowych konstrukcji programistycznych.
15. Wykorzystanie poznanych instrukcji do rozwiązania zagadnień matematyczno-fizycznych. Zaliczenie zajęć.

Laboratory classes (30h):
Programowanie w językach strukturalnych

1. Programowanie w językach strukturalnych w tym Pascal, Asembler, Fortran, C ,C#,C.net,i C++ ogólna struktura programu w języku C++. Pliki jako nośnik programu. Pojęcie modułu, kompilacja i linkowanie programu i modułu.
2. Struktura programu, podstawowe instrukcje wejścia wyjścia, formatowanie.
3. Podstawowe typy danych i rozmiary danych, operatory matematyczne, tablice jedno i wielowymiarowe.
4. Operatory relacyjne i logiczne, instrukcja warunkowa if.
5. Instrukcje iteracyjne for, while, do … while.
6. Wykorzystanie poznanych instrukcji.
7. Wskaźniki, tablice i wskaźniki, wskaźnik do struktur. Dynamiczne tworzenie struktur danych.
8. Funkcje, przekazywanie argumentów, przeciążanie, czas życia zmiennej
9. Wykorzystanie poznanych instrukcji, rekurencja.
10. Pliki, podstawowe operacje na plikach. Implementacja struktur danych: listy, stosy.
11. Dyrektywy preprocesora, makrodefinicje, efekty uboczne.
12. Implementacje algorytmów i metody ich weryfikacji.
13. Doskonalenie w programowaniu, dokumentowanie algorytmów, komentarze
14. Przegląd podstawowych konstrukcji programistycznych.
15. Wykorzystanie poznanych instrukcji do rozwiązania zagadnień matematyczno-fizycznych. Zaliczenie zajęć.

Additional information
Teaching methods and techniques:
  • Lectures: Treści prezentowane na wykładzie są przekazywane w formie prezentacji multimedialnej w połączeniu z klasycznym wykładem tablicowym wzbogaconymi o pokazy odnoszące się do prezentowanych zagadnień.
  • Laboratory classes: W trakcie zajęć laboratoryjnych studenci samodzielnie rozwiązują zadany problem praktyczny, dobierając odpowiednie narzędzia. Prowadzący stymuluje grupę do refleksji nad problemem, tak by otrzymane wyniki miały wysoką wartość merytoryczną.
Warunki i sposób zaliczenia poszczególnych form zajęć, w tym zasady zaliczeń poprawkowych, a także warunki dopuszczenia do egzaminu:

Sposób zaliczenia ćwiczeń laboratoryjnych – pozytywna średnia ocena z kolokwiów i odpowiedzi ustnych
W czasie sesji możliwe są 2 terminy zaliczeń poprawkowych, uzgodnione z osobą prowadzącą zajęcia

Participation rules in classes:
  • Lectures:
    – Attendance is mandatory: No
    – Participation rules in classes: Studenci uczestniczą w zajęciach poznając kolejne treści nauczania zgodnie z syllabusem przedmiotu. Studenci winni na bieżąco zadawać pytania i wyjaśniać wątpliwości. Rejestracja audiowizualna wykładu wymaga zgody prowadzącego.
  • Laboratory classes:
    – Attendance is mandatory: Yes
    – Participation rules in classes: Studenci wykonują ćwiczenia laboratoryjne zgodnie z materiałami udostępnionymi przez prowadzącego. Student jest zobowiązany do przygotowania się w przedmiocie wykonywanego ćwiczenia, co może zostać zweryfikowane kolokwium w formie ustnej lub pisemnej. Zaliczenie zajęć odbywa się na podstawie zaprezentowania rozwiązania postawionego problemu. Zaliczenie modułu jest możliwe po zaliczeniu wszystkich zajęć laboratoryjnych.
Method of calculating the final grade:

Oceny z ćwiczeń laboratoryjnych obliczane są następująco: procent uzyskanych punktów przeliczany jest na ocenę zgodnie z Regulaminem Studiów AGH. Ocena z ćwiczeń laboratoryjnych jest także oceną końcową. Uzyskanie zaliczenia w terminach poprawkowych może skutkować obniżeniem oceny o 10%.

Sposób i tryb wyrównywania zaległości powstałych wskutek nieobecności studenta na zajęciach:

Każda nieobecność na zajęciach obowiązkowych wymaga od studenta samodzielnego opanowania przerabianego wówczas materiału. Nieobecność na więcej niż jednych zajęciach wymaga zaliczenia przerabianego materiału w formie i terminie wyznaczonym przez prowadzącego (najpóźniej w ostatnim tygodniu trwania zajęć). Student, który bez usprawiedliwienia opuścił więcej niż dwa obowiązkowe zajęcia i jego cząstkowe wyniki w nauce były negatywne może nie zaliczyć zajęć.

Prerequisites and additional requirements:

znajomość podstaw informatyki

Recommended literature and teaching resources:

1. Eckel B.: Thinking in C++, Helion 2002
2. Signer A.: Programowanie w języku C++. Szybki start, Helion 2006
3. Josuttis N. M.: C++ Biblioteka standardowa. Podręcznik programisty, Helion, 2003
4. Lippman S., Lajoie J.: Podstawy języka C++ , WNT 2003

Scientific publications of module course instructors related to the topic of the module:

1. J. Donizak, A. Hołda, P. Sarre „Model matematyczny transportu mechanicznego sypkiego wsadu w piecu obrotowym w procesie zgazowania karbonizatu”, Paliwa i energia XXI; Wydział Energetyki i Paliw AGH. — Kraków : Wydawnictwo Naukowe „Akapit”, , 2014
2. A.Hołda, Z. Kolenda „Mathematical models validation of aluminium electrolysis process using exergy method” , International Journal of Exergy , 2014 vol. 15
3. A.Hołda „Analityczne i numeryczne wyznaczanie rozkładu źródeł entropii w elektrolizerze aluminium typu Söderberga” — Kraków : AGH Uczelniane Wydawnictwa Naukowo-Dydaktyczne, Rozprawy Monografie / Akademia Górniczo-Hutnicza im. Stanisława Staszica w Krakowie 2008,
4. Model matematyczny wymiany masy i energii w procesie zawiesinowym otrzymywania miedzi blister. 2007, nr18.25.180.313

Additional information:

None