Module also offered within study programmes:
General information:
Name:
Computer Programming
Course of study:
2012/2013
Code:
DGK-1-106-s
Faculty of:
Mining Surveying and Environmental Engineering
Study level:
First-cycle studies
Specialty:
-
Field of study:
Geodesy and Cartography
Semester:
1
Profile of education:
Academic (A)
Lecture language:
Polish
Form and type of study:
Full-time studies
Responsible teacher:
dr hab. inż, prof. AGH Preweda Edward (preweda@agh.edu.pl)
Academic teachers:
dr inż. Adamczyk Tomasz (tomada@agh.edu.pl)
dr hab. inż, prof. AGH Preweda Edward (preweda@agh.edu.pl)
dr inż. Jasińska Elżbieta (jasinska@agh.edu.pl)
dr inż. Ruchel Jan (ruchel@agh.edu.pl)
Module summary

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
M_K001 Student rozumie potrzebę ciągłego aktualizowania i poszerzania swojej wiedzy w zakresie jeżyków programowania oraz dostrzega możliwość współpracy tworzonych aplikacji z modułami już istniejącymi GK1A_K04, GK1A_K01, GK1A_K05 Activity during classes,
Participation in a discussion,
Involvement in teamwork
Skills
M_U001 potrafi samodzielnie konstruować algorytmy postępowania, prowadzące do rozwiązania zadania inżynierskiego z dziedziny geodezji i kartografii GK1A_U06, GK1A_W09, GK1A_U09, GK1A_U07 Activity during classes,
Examination,
Test,
Project,
Execution of a project,
Involvement in teamwork
M_U002 potrafi tworzyć autorskie aplikacje wspomagające analizę obserwacji geodezyjnych GK1A_U22, GK1A_U07, GK1A_U15 Activity during classes,
Examination,
Test,
Project,
Involvement in teamwork
M_U004 potrafi modyfikować pliki tekstowe i zdefiniowane, w tym pliki z rejestratorów polowych GK1A_W09, GK1A_U14, GK1A_U15 Activity during classes,
Examination,
Test
Knowledge
M_W002 ma uporządkowaną wiedzę z zakresu tworzenia algorytmów wspomagających obliczenia geodezyjne GK1A_W11, GK1A_W09, GK1A_W10 Activity during classes,
Examination,
Test,
Project,
Execution of exercises,
Involvement in teamwork
M_W003 ma szczegółową wiedzę z zakresu analizy i modyfikacji istniejących kodów źródłowych, ma wystarczającą wiedzę do rozwijania swoich umiejętności programistycznych na zaawansowanym poziomie w dowolnym języku programowania GK1A_W11, GK1A_W09 Activity during classes,
Examination,
Test,
Project,
Engineering project,
Execution of a project,
Involvement in teamwork
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
Others
E-learning
Social competence
M_K001 Student rozumie potrzebę ciągłego aktualizowania i poszerzania swojej wiedzy w zakresie jeżyków programowania oraz dostrzega możliwość współpracy tworzonych aplikacji z modułami już istniejącymi + - - + - - - - - - -
Skills
M_U001 potrafi samodzielnie konstruować algorytmy postępowania, prowadzące do rozwiązania zadania inżynierskiego z dziedziny geodezji i kartografii + - - + - - - - - - -
M_U002 potrafi tworzyć autorskie aplikacje wspomagające analizę obserwacji geodezyjnych + - - + - - - - - - -
M_U004 potrafi modyfikować pliki tekstowe i zdefiniowane, w tym pliki z rejestratorów polowych + - - + - - - - - - -
Knowledge
M_W002 ma uporządkowaną wiedzę z zakresu tworzenia algorytmów wspomagających obliczenia geodezyjne + - - + - - - - - - -
M_W003 ma szczegółową wiedzę z zakresu analizy i modyfikacji istniejących kodów źródłowych, ma wystarczającą wiedzę do rozwijania swoich umiejętności programistycznych na zaawansowanym poziomie w dowolnym języku programowania + - - + - - - - - - -
Module content
Lectures:
  1. Wprowadzenie do programowania

    Przegląd języków programowania, ich różnice i cechy wspólne. Uniwersalne metody zapisywania algorytmów postępowania. Schematy blokowe.

  2. Podstawowe elemanty języka

    Jednostki leksykalne ( słowa kluczowe, identyfikatory, symbole, dyrektywy, liczby, literały logiczne, separatory). Operatory (arytmetyczne, logiczne, relacyjne). Struktura programu. Klasyfikacja typów i zmiennych. Deklaracja zmiennych i stałych.

  3. Instrukcje proste

    Instrukcja przypisania, pusta, skoku. Realizacja schematów blokowych.

  4. Instrukcje strukturalne

    Instrukcje warunkowe i iteracyjne. Instrukcja wiążąca. Przekształcenie rozbudowanych schematów blokowych i algorytmów postępowania w kod źródłowy.

  5. Procedury i funkcje

    Deklaracja procedur i funkcji. Przekazywanie parametrów przez funkcje i procedury, zmienne lokalne i zmienne globalne. Funkcje predefiniowane. Wywołanie procedur/funkcji.

  6. Pliki tekstowe

    Funkcje i procedury obsługi dowolnych plików. Funkcje i procedury przetwarzania plików tekstowych. Odczytywanie, przekształcanie i zapisywanie danych zawartych w plikach tekstowych ( w tym również tablic). Przykłady

  7. Pliki nietekstowe

    Funkcje i procedury przetwarzania plików nietekstowych. Odczytywanie, przekształcanie i zapisywanie danych zawartych w plikach tekstowych, ze szczególnym uwzględnieniem rekordów. Przykłady

  8. Sortowanie danych

    Algorytmy sortowania tablic, w tym tablic rekordów.Metody filtrowania baz danych.

  9. Programowanie zagadnien geodezyjnych

    Formułowanie algorytmów wspomagających obliczenia geodezyjne, schematy blokowe i ich realizacja w zagadnieniach inżynierskich.

Project classes:
  1. Wprowadzenie do programowania

    Struktura programu. Podstawowe instrukcje. Kompilacja programu. Rodzaje plików związanych z projektem.

  2. Instrukcja warunkowa i instrukcja wyboru

    Instrukcja IF i CASE

  3. Instrukcje interacyjne

    Instrukcje FOR, WHILE, REPEAT. Zastosowanie dotychczasowych umiejętności dla potrzeb geodezji.

  4. Procedury i funkcje

    Funkcje i procedury, definiowanie i wykorzystywanie dla potrzeb rachunku współrzędnych geodezyjnych. Przekazywanie parametrów przez funkcje i procedury, zmienne lokalne i zmienne globalne.

  5. Pliki tekstowe

    Operacje na plikach, tworzenie plików, czytanie, zapisywanie do pliku.

  6. Pliki nietekstowe

    Operacje na rekordach, pliki zdefiniowane. Przetwarzanie pików będących zapisem z rejestratora polowego, modyfikacje danych w pliku

  7. Sortowanie i filtrowanie danych

    Operacje na danych zebranych w dowolnej formie pliku. Sortowanie tablic (w tym tablic rekordów). Filtrowanie danych.

  8. Algebra macierzy

    Zagadnienia algebry macierzy, wprowadzanie danych, operacje na macierzach jako tablicach dwuwymiarowych z wykorzystaniem plików tekstowych

Student workload (ECTS credits balance)
Student activity form Student workload
Summary student workload 150 h
Module ECTS credits 5 ECTS
Examination or Final test 6 h
Participation in lectures 30 h
Participation in project classes 30 h
Realization of independently performed tasks 30 h
Contact hours 4 h
Preparation for classes 50 h
Additional information
Method of calculating the final grade:

Ocena końcowa = średnia arytmetyczna z zajęć projektowych oraz egzaminu

Prerequisites and additional requirements:

Brak

Recommended literature and teaching resources:

A.Boduch : Delphi 7. Kompendium programisty , Helion 2003
M. Cantu : Delphi7, Mikom 2004
E. Preweda : Materiały dydaktyczne AGH, http://www2.geod.agh.edu.pl/~ep/
R.Sephens : Algorytmy i struktury danych z przykładami w Delphi, Helion 2000

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

Preweda E.: Rachunek wyrównawczy ⇒ modele statystyczne. PROGRES, Kraków 2013.
Preweda E.: Estymacja parametrów kinematycznego modelu przemieszczeń. Rozprawy Monografie. AGH Kraków 2002.
Preweda E.: System pomiaru, obliczeń i wizualizacji zmian geometrycznych obiektów powłokowych o powierzchni stopnia drugiego. Rozprawa doktorska. AGH Kraków 1995.

Additional information:

Warunkiem uzyskania pozytywnej oceny końcowej jest uzyskanie pozytywnej oceny zaliczenia
z przedmiotu oraz egzaminu