Moduł oferowany także w ramach programów studiów:
Informacje ogólne:
Nazwa:
Języki programowania i algorytmy
Tok studiów:
2019/2020
Kod:
HNKT-1-308-s
Wydział:
Humanistyczny
Poziom studiów:
Studia I stopnia
Specjalność:
-
Kierunek:
Nowoczesne technologie w kryminalistyce
Semestr:
3
Profil:
Ogólnoakademicki (A)
Język wykładowy:
Polski
Forma studiów:
Stacjonarne
Strona www:
 
Prowadzący moduł:
dr inż. Frankowski Marek (mfrankow@agh.edu.pl)
Treści programowe zapewniające uzyskanie efektów uczenia się dla modułu zajęć

Celem przedmiotu jest zapoznanie studentów z wybranymi metodami obliczeniowymi i językami programowania spotykanymi na rynku pracy. W ramach przedmiotu studenci wprowadzani są problematykę tworzenia średniej wielkości aplikacji.

Opis efektów uczenia się dla modułu zajęć
Kod MEU Student, który zaliczył moduł zajęć zna i rozumie/potrafi/jest gotów do Powiązania z KEU Sposób weryfikacji i oceny efektów uczenia się osiągniętych przez studenta w ramach poszczególnych form zajęć i dla całego modułu zajęć
Wiedza: zna i rozumie
M_W001 Student zna i rozumie klasyczne metody numeryczne i ich zastosowania praktyczne. NKT1A_W05 Kolokwium,
Projekt
M_W002 Student zna i rozumie podstawowe cechy typowych języków programowania imperatywnego stosowanych na rynku pracy. NKT1A_W05 Kolokwium,
Projekt
Umiejętności: potrafi
M_U001 Student potrafi projektować i implementować metody obliczeniowe rozwiązujące proste problemy numeryczne. NKT1A_U04, NKT1A_U06, NKT1A_U05, NKT1A_U07 Kolokwium,
Projekt
M_U002 Student potrafi dobierać metody i narzędzia dostępne online do postawionych problemów obliczeniowych z wykorzystaniem języków programowania imperatywnego. NKT1A_U06, NKT1A_U07 Projekt
Kompetencje społeczne: jest gotów do
M_K001 Student potrafi prezentować zagadnienia obliczeniowe, komunikować zasady działania złożonych algorytmów numerycznych oraz odnosić się do dokumentacji problemów fizycznych i inżynierskich. NKT1A_K04, NKT1A_K01, NKT1A_K02 Aktywność na zajęciach,
Projekt
Liczba godzin zajęć w ramach poszczególnych form zajęć:
SUMA (godz.)
Wykład
Ćwicz. aud
Ćwicz. lab
Ćw. proj.
Konw.
Zaj. sem.
Zaj. prakt
Zaj. terenowe
Zaj. warsztatowe
Prace kontr. przejść.
Lektorat
46 18 0 14 14 0 0 0 0 0 0 0
Matryca kierunkowych efektów uczenia się w odniesieniu do form zajęć i sposobu zaliczenia, które pozwalają na ich uzyskanie
Kod MEU Student, który zaliczył moduł zajęć zna i rozumie/potrafi/jest gotów do Forma zajęć dydaktycznych
Wykład
Ćwicz. aud
Ćwicz. lab
Ćw. proj.
Konw.
Zaj. sem.
Zaj. prakt
Zaj. terenowe
Zaj. warsztatowe
Prace kontr. przejść.
Lektorat
Wiedza
M_W001 Student zna i rozumie klasyczne metody numeryczne i ich zastosowania praktyczne. + - + + - - - - - - -
M_W002 Student zna i rozumie podstawowe cechy typowych języków programowania imperatywnego stosowanych na rynku pracy. + - + + - - - - - - -
Umiejętności
M_U001 Student potrafi projektować i implementować metody obliczeniowe rozwiązujące proste problemy numeryczne. + - + + - - - - - - -
M_U002 Student potrafi dobierać metody i narzędzia dostępne online do postawionych problemów obliczeniowych z wykorzystaniem języków programowania imperatywnego. + - + + - - - - - - -
Kompetencje społeczne
M_K001 Student potrafi prezentować zagadnienia obliczeniowe, komunikować zasady działania złożonych algorytmów numerycznych oraz odnosić się do dokumentacji problemów fizycznych i inżynierskich. + - + + - - - - - - -
Nakład pracy studenta (bilans punktów ECTS)
Forma aktywności studenta Obciążenie studenta
Sumaryczne obciążenie pracą studenta 89 godz
Punkty ECTS za moduł 3 ECTS
Udział w zajęciach dydaktycznych/praktyka 46 godz
Przygotowanie do zajęć 14 godz
przygotowanie projektu, prezentacji, pracy pisemnej, sprawozdania 14 godz
Samodzielne studiowanie tematyki zajęć 10 godz
Dodatkowe godziny kontaktowe 5 godz
Szczegółowe treści kształcenia w ramach poszczególnych form zajęć (szczegółowy program wykładów i pozostałych zajęć)
Wykład (18h):

1. Metoda Runge-Kutty, chaos deterministyczny
2. Całkowanie numeryczne, metody Monte Carlo
3. Liczby pseudolosowe, generowanie liczb pseudolosowych
4. Podstawy szyfrowania
5. Poszukiwanie miejsc zerowych funkcji, metoda bisekcji
6. Język programowania Java
7. Język programowania C
8. Tworzenie własnej aplikacji – gra komputerowa

Ćwiczenia laboratoryjne (14h):

Ćwiczenia laboratoryjne zgodne z tematyką wykładów w formie instrukcji wprowadzających z możliwością konsultacji z prowadzącym.

Ćwiczenia projektowe (14h):

Zadania projektowe zgodne z tematyką wykładów, będące kontynuacją instrukcji wprowadzających realizowanych na zajęciach laboratoryjnych.

Pozostałe informacje
Metody i techniki kształcenia:
  • Wykład: 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ń.
  • Ćwiczenia laboratoryjne: 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ą.
  • Ćwiczenia projektowe: Nie określono
Warunki i sposób zaliczenia poszczególnych form zajęć, w tym zasady zaliczeń poprawkowych, a także warunki dopuszczenia do egzaminu:

Aby uzyskać zaliczenie należy:
zdobyć równo lub więcej niż 50% punktów z kartkówek
oraz
zdobyć równo lub więcej niż 50% punktów z zadań domowych

Zasady udziału w zajęciach:
  • Wykład:
    – Obecność obowiązkowa: Nie
    – Zasady udziału w zajęciach: 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.
  • Ćwiczenia laboratoryjne:
    – Obecność obowiązkowa: Tak
    – Zasady udziału w zajęciach: 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.
  • Ćwiczenia projektowe:
    – Obecność obowiązkowa: Tak
    – Zasady udziału w zajęciach: Nie określono
Sposób obliczania oceny końcowej:

Ocena wyznaczana na podstawie regulaminu studiów z wagami – kartkówki 30% zadania domowe 70%.
Aktywność na laboratoriach i wykładach może dodać +5% z wybranej części
Poprawy ocen:
Na ostatnich zajęciach można poprawić jedną najgorzej napisaną kartkówkę oraz oddać jedno najniżej ocenione zadanie (ocena zostaje podmieniona na nową) UWAGA: brak innych form zaliczeń poprawkowych

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

Nieobecności:
Nieusprawiedliwione → 0 z kartkówki
Usprawiedliwione → możliwość nadrobienia kartkówki w terminie określonym przez prowadzącego zajęcia
Zadanie domowe należy oddać na platformie terminowo bez względu na nieobecność, w tym usprawiedliwioną – przypadki skrajne rozstrzyga prowadzący laboratorium

Wymagania wstępne i dodatkowe, z uwzględnieniem sekwencyjności modułów :

Doświadczenie w programowaniu z wykorzystaniem podstaw języków obiektowych. Znajomość klasycznych problemów programistycznych i algorytmów oraz struktur danych.

Zalecana literatura i pomoce naukowe:

Darmowe pomoce dostępne online:
https://books.goalkicker.com/CSharpBook/
https://books.goalkicker.com/JavaBook/
https://books.goalkicker.com/CBook/

Publikacje naukowe osób prowadzących zajęcia związane z tematyką modułu:

Nie podano dodatkowych publikacji

Informacje dodatkowe:

Brak