Uniwersytet Marii Curie-Skłodowskiej w Lublinie - Centralny System UwierzytelnianiaNie jesteś zalogowany | zaloguj się
katalog przedmiotów - pomoc

Elementy programowania

Informacje ogólne

Kod przedmiotu: MFI-FT-EP-LS Kod Erasmus / ISCED: 13.2 / (0533) Fizyka
Nazwa przedmiotu: Elementy programowania
Jednostka: Wydział Matematyki, Fizyki i Informatyki
Grupy:
Strona przedmiotu: http://kft.umcs.lublin.pl/baran/epk/index.html
Punkty ECTS i inne: 0 LUB 3.00 LUB 2.00 (w zależności od programu)
zobacz reguły punktacji
Język prowadzenia: polski
Wymagania wstępne:

Znajomość podstaw logiki, algebry i analizy matematycznej

Godzinowe ekwiwalenty punktów ECTS:

Godziny kontaktowe (z udziałem nauczyciela akademickiego):

laboratorium - 45, konsultacje - 5.

Łączna liczba godzin z udziałem nauczyciela akademickiego: 50.

Liczba punktów ECTS z udziałem nauczyciela akademickiego 2.


Godziny nie kontaktowe (praca własna studenta):

przygotowanie się do laboratorium - 5, studiowanie literatury - 5, przygotowanie się do egzaminu - 15.

Łączna liczba godzin nie kontaktowych: 25.

Liczba punktów ECTS za godziny nie kontaktowe 1.

Sumaryczna liczba punktów ECTS dla modułu: 3.

Sposób weryfikacji efektów kształcenia:

Sposób weryfikacji efektów kształcenia na studiach I st. na podstawie Uchwały Nr XXII –39.8/12 Senatu Uniwersytetu Marii Curie – Skłodowskiej w Lublinie z dnia 25 kwietnia 2012 r. dla cyklu kształcenia rozpoczętego w 2015/2016, 2016/2017:

W1 - egzamin, konsultacje.

U1 - aktywność na zajęciach, egzamin.

K1- aktywność na zajęciach, dyskusja, konsultacje.


Sposób weryfikacji efektów kształcenia na studiach I st. na podstawie na podstawie Uchwały Nr XXIV – 7.7/17 Senatu Uniwersytetu Marii Curie-Skłodowskiej w Lublinie z dnia 31 maja 2017 r.

W1 - egzamin, konsultacje.

U1 - aktywność na zajęciach, egzamin.

K1- aktywność na zajęciach, dyskusja, konsultacje.

Pełny opis:

Celem zajęć jest przygotowanie studenta do pisania programów numerycznych w środowisku Java/C++ lub Fortran na podstawie zadanego algorytmu wykorzystując procedury numeryczne.

Student poznaje typy zmiennych i ich reprezentacje numeryczne, operacje wejścia-wyjścia, instrukcje sterujące, funkcje, procedury, wskaźniki i na zajęciach tworzy proste programy, kompiluje je i uruchamia. Potrafi oszacować błąd obliczeń numerycznych. W ramach ćwiczeń student poznaje metody numeryczne do rozwiązywania zagadnień:

- obliczania pochodnych funkcji

- obliczania całek

- znajdowania pierwiastków funkcji

- interpolacji danych

- działań na macierzach

- układów równań liniowych

- równań różniczkowych zwyczajnych

- obliczeń samozgodnych.

- podstawy budowy komputerów

- algorytm; podstawy algorytmiki

- instrukcje podstawiania

- operacje i operatory

- instrukcje warunkowe

- instrukcje powtarzania (pętle)

- pojęcie typu danych

- typy proste i złożone

- tablice

- formatowanie wyników

- języki programowania

- podstawy języka Java

- podstawy języka Fortran

I. Java

# historia

# podstawowe cechy języka Java

# wirtualna maszyna Javy

# biblioteki standardowe

Składnia języka

# pierwszy program w Javie;

# kompilacja (javac) i uruchamianie (java) programów

# typy pierwotne i referencyjne

# zmienne i stałe

# literały

# tworzenie obiektów i ich usuwanie

# operatory, wyrażenia i instrukcje sterujące

# napisy (String)

# tablice

# wejście/wyjście

# parametry wywołania programu

Klasy i obiekty

# definiowanie klas

# składowe klas (pola, metody, klasy)

# inicjalizacja pól instancyjnych

# konstruktory, konstruktor domyślny

# wywoływanie konstruktorów (this)

# this

# operator new

# dostęp do składowych (public, private, protected; pakiet)

# przeciążanie konstruktorów i metod

# składowe statyczne (static)

# pola statyczne i ich inicjalizacja

# własności metod statycznych

# metoda main()

Pakiety

# definiowanie pakietów

# importowanie pakietów, klas i składowych statycznych

# parametr -classpath

# pakiety standardowe

Dziedziczenie

# deklaracja dziedziczenia

# inicjalizacja obiektu i konstruktory w klasie pochodnej

# inicjalizacja części odziedziczonej (konstrukcja super)

# dodawanie nowych pól i metod

# przesłanianie pól

# nadpisywanie metod

# upublicznianie składowych

# wywoływanie starych metod z nadklasy (konstrukcja super)

# rzutowanie i operator instanceof.

Polimorfizm

# referencje do obiektów

# polimorficzne wywoływanie metod

# klasy i metody abstrakcyjne (abstract)

# klasy i metody finalne (final)

# hierarchia dziedziczenia i klasa Object

# opakowania

# klonowanie obiektów

Interfejsy

# definiowanie interfejsów

# domyślne modyfikatory pól i metod w interfejsach

# rozszerzanie interfejsów

# zastosowania interfejsów

# adaptery

# fabrykowanie obiektów na podstawie interfejsu.

Interfejsy i klasy zagnieżdżone

# statyczne typy zagnieżdżone

# klasy wewnętrzne

# lokalne klasy wewnętrzne

# anonimowe klasy wewnętrzne

# dziedziczenie typów

# klasy wewnętrzne w interfejsach.

Operatory i wyrażenia

# konwersja typów

# operatory arytmetyczne

# operatory inkrementacji i dekrementacji

# operatory relacyjne i warunkwe

# operatory bitowe

# operator ?:

# operatory przypisania

# priorytety

Przepływ sterowania

# instrukcje i bloki

# instrukcja if-else

# instrukcja switch

# pętle while i do-while

# pętla for

# etykiety

# break, continue

# return

II. Fortran

# patrz wyżej; podobny schemat

III. Podstawy metod obliczeniowych i ćwiczenia

# reprezentacje liczb całkowitych

# reprezentacje liczb zmiennopozycyjnych

# standard IEEE754

# błędy obliczeń numerycznych

# pochodne

# całkowanie

# metody znajdowania pierwiastków funkcji

# metody interpolacji danych

# macierze

# rozwiązywanie układów równań liniowych

# równania różniczkowe (metody jawne i niejawne)

# metoda Rungego-Kutty2 i 4-go rzędu

Literatura:

- Dowolny podręcznik Java/Fortran/C

- Henrici: Elements of Numerical Analysis. Wiley, 1964.

Efekty uczenia się:

Na podstawie Uchwały Nr XXII –39.8/12 Senatu Uniwersytetu Marii Curie – Skłodowskiej w Lublinie z dnia 25 kwietnia 2012 r. dla cyklu kształcenia rozpoczętego w 2015/2016, 2016/2017:

W1. Student zna metody numeryczne pozwalające rozwiązać zagadnienia z zakresu matematyki i fizyki (K_W06, K_Inz_W10)

U1. Potrafi napisać algorytm do rozwiązywania konkretnego zagadnienia, zadeklarować zmienne, posługiwać się programami komputerowymi służącymi do wykonywania obliczeń numerycznych (K_U14, K_Inz_U08)

K1. Krytycznie odnosi się do posiadanej wiedzy i rozumie jej znaczenie w rozwiązywaniu problemów poznawczych i praktycznych (K_K01, K_K02)

Na podstawie Uchwały Nr XXIV – 7.7/17 Senatu Uniwersytetu Marii Curie-Skłodowskiej w Lublinie z dnia 31 maja 2017 r. dla cyklu kształcenia rozpoczętego w 2017/2018, 2018/2019:

W1. Student zna metody numeryczne pozwalające rozwiązać zagadnienia z zakresu matematyki i fizyki (K_W03)

U1. Potrafi napisać algorytm do rozwiązywania konkretnego zagadnienia, zadeklarować zmienne, posługiwać się programami komputerowymi służącymi do wykonywania obliczeń numerycznych (K_U05)

K1. Krytycznie odnosi się do posiadanej wiedzy i rozumie jej znaczenie w rozwiazywaniu problemów poznawczych i praktycznych (K_K01)

Praktyki zawodowe:

- Brak

Zajęcia w cyklu "Semestr letni 2019/2020" (zakończony)

Okres: 2020-02-26 - 2020-06-21
Wybrany podział planu:


powiększ
zobacz plan zajęć
Typ zajęć: Laboratorium, 30 godzin więcej informacji
Koordynatorzy: Tomasz Kwapiński
Prowadzący grup: Tomasz Kwapiński
Lista studentów: (nie masz dostępu)
Zaliczenie: Przedmiot - Egzamin
Laboratorium - Zaliczenie na ocenę
Opisy przedmiotów w USOS i USOSweb są chronione prawem autorskim.
Właścicielem praw autorskich jest Uniwersytet Marii Curie-Skłodowskiej w Lublinie.