Uniwersytet Mikołaja Kopernika w Toruniu - Centralny punkt logowania
Strona główna

Algorytmika i programowanie w języku Python

Informacje ogólne

Kod przedmiotu: 1000-ZiAPyth
Kod Erasmus / ISCED: (brak danych) / (0613) Tworzenie i analiza oprogramowania i aplikacji Kod ISCED - Międzynarodowa Standardowa Klasyfikacja Kształcenia (International Standard Classification of Education) została opracowana przez UNESCO.
Nazwa przedmiotu: Algorytmika i programowanie w języku Python
Jednostka: Wydział Matematyki i Informatyki
Grupy: Przedmioty z polskim językiem wykładowym
Punkty ECTS i inne: 6.00 Podstawowe informacje o zasadach przyporządkowania punktów ECTS:
  • roczny wymiar godzinowy nakładu pracy studenta konieczny do osiągnięcia zakładanych efektów uczenia się dla danego etapu studiów wynosi 1500-1800 h, co odpowiada 60 ECTS;
  • tygodniowy wymiar godzinowy nakładu pracy studenta wynosi 45 h;
  • 1 punkt ECTS odpowiada 25-30 godzinom pracy studenta potrzebnej do osiągnięcia zakładanych efektów uczenia się;
  • tygodniowy nakład pracy studenta konieczny do osiągnięcia zakładanych efektów uczenia się pozwala uzyskać 1,5 ECTS;
  • nakład pracy potrzebny do zaliczenia przedmiotu, któremu przypisano 3 ECTS, stanowi 10% semestralnego obciążenia studenta.
Język prowadzenia: polski
Wymagania wstępne:

Znajomość zagadnień z podstaw algorytmiki i języka programowania C++ realizowanych na przedmiocie Podstawy algorytmiki i programowania (1000-ZiPAPR). Praca z komputerem w zakresie podstawowym: umiejętność pracy z prostym edytorem tekstowym, uruchamianie aplikacji, korzystanie z serwisów www. Znajomość matematyki szkolnej na poziomie podstawowym.

Rodzaj przedmiotu:

przedmiot obligatoryjny

Całkowity nakład pracy studenta:

1. Godziny realizowane z udziałem nauczycieli

a) laboratorium – 26 godzin,

b) bieżące przygotowanie do zajęć, w tym rozwiązywanie zadań zleconych przez prowadzących, zapoznanie się z informacją zwrotną dotyczącą rozwiązanych zadań oraz konsultacje z prowadzącymi zajęcia – 30 godzin.


2. Czas poświęcony na pracę indywidualną studenta potrzebny do pomyślnego zaliczenia przedmiotu:

a) studiowanie literatury – 15 godzin,

b) zapoznanie się z materiałami dodatkowymi, m.in. dokumentacją bibliotek programistycznych – 30 godzin,

c) wykonanie zadań i projektów zaliczeniowych – 30 godzin.


3. Czas wymagany do przygotowania się do uczestnictwa w procesie oceniania (np. w egzaminach):

a) przygotowanie się do kolokwium – 15 godzin.


RAZEM: 146 godzin (6 punktów ECTS)

Efekty uczenia się - wiedza:

Po ukończeniu kursu student osiąga następujące efekty (kody odnoszą się do efektów dla studiów 1 stopnia na kierunku informatyka - studia inżynierskie):


W1 - zna podstawową składnię, w szczególności instrukcje sterujące języka Python (K_W03, K_W10),

W2 - zna proste i złożone typy danych języka Python (listy, krotki, słowniki, zbiory) (K_W03)

W3 - zna podstawowe metody i techniki projektowania, analizowania i implementowania algorytmów (K_W04).

Efekty uczenia się - umiejętności:

Po ukończeniu kursu student osiąga następujące efekty (kody odnoszą się do efektów dla studiów 1 stopnia na kierunku informatyka - studia inżynierskie):


U1 - projektuje algorytmy rozwiązujące typowe zadania i implementuje je w języku Python (K_U07),

U2: potrafi pisać, uruchamiać i testować programy w wybranym środowisku programistycznym (K_U05)

U3 - poprawnie wykorzystuje proste i złożone typy danych stosownie do sytuacji, pamiętając o ich ograniczeniach, potrafi wykorzystać bibliotekę standardową (K_U08),

U4 - ocenia rząd złożoności czasowej algorytmu (K_U07, K_U01),

U5 - umie czytać ze zrozumieniem programy zapisane w języku Python (K_U06).

Efekty uczenia się - kompetencje społeczne:

Po ukończeniu kursu student osiąga następujące efekty (kody odnoszą się do efektów dla studiów 1 stopnia na kierunku informatyka - studia inżynierskie):


K1 - służy swoją wiedzą i umiejętnościami, skutecznie przekazuje innym swoje myśli w zrozumiały sposób; właściwie posługuje się terminologią fachową w obrębie zagadnień związanych z podstawami programowania (K_K02),

K2 - jest nastawiony na jak najlepsze wykonanie zadania; dba o szczegół; jest systematyczny (K_K04),

K3 - krytycznie ocenia swoją wiedzę i doskonali ją z wykorzystaniem różnych źródeł informacji (K_K03).

Metody dydaktyczne eksponujące:

- pokaz

Metody dydaktyczne podające:

- wykład konwersatoryjny

Metody dydaktyczne poszukujące:

- laboratoryjna
- projektu

Skrócony opis:

Laboratoria są połączeniem metody informacyjno-problemowej z praktyczną realizacją algorytmów w postaci programów w języku Python. Takie podejście ma na celu poznanie języka programowania w wyniku rozwiązywania problemów teoretycznych i pozwala na rozwijanie myślenia komputacyjnego.

Pełny opis:

Podczas laboratoriów omawiane są i implementowane algorytmy będące uzupełnieniem zagadnień poruszanych na przedmiocie Podstawy algorytmiki i programowania, analizowane są również problemy, w których mają one zastosowanie. Przy rozwiązywaniu problemów wprowadzane są potrzebne do implementacji elementy języka Python z uwzględnieniem złożoności obliczeniowej i efektywności.

  • Oprogramowanie dla języka Python, tryb interaktywny, edycja, uruchamianie i testowanie programów.
  • Wprowadzenie do języka Python, syntaktyka i semantyka, struktura programu, zmienne, instrukcje sterujące, operacje wejścia wyjścia
  • Reprezentacja liczb i tekstów w języku Python, konwersja typów.
  • Listy, krotki - właściwości oraz operacje na tego typu strukturach
  • Funkcje, przekazywanie parametrów, biblioteka funkcji użytkownika  
  • Rekurencja w języku Python
  • Słowniki, zbiory – właściwości oraz operacje na tych strukturach
  • Obsługa plików w Pythonie
  • Obiektowość języka Python - obiekty, klasy, dziedziczenie
  • Ekstrakcja danych w języku Python - biblioteki i narzędzia przeznaczone do wydobywania informacji ze stron internetowych, plików csv, json, realcyjnych baz danych, itp.
Literatura:

Literatura podstawowa:

  1. M. Lutz, Python. Wprowadzenie. Wydanie V, Helion, 2020
  2. M. Sysło, Algorytmy, Helion, 2016
  3. E. Matthews, Python. Instrukcje dla programisty. Wydanie III, Helion 2023.

Literatura uzupełniająca:

  1. L. Banachowski, K. Diks, W. Rytter, Algorytmy i struktury danych, Helion, 2018.
  2. R. Mitchell, Ekstrakcja danych z językiem Python. Pozyskiwanie danych z internetu. Wydanie II, Helion, 2019.
Metody i kryteria oceniania:

Zaliczenie laboratoriów na ocenę. Elementami składowymi zaliczenia są:

  • sprawdzian praktyczny „przy komputerze" weryfikujący umiejętność samodzielnego rozwiązywania problemów algorytmicznych i programowania w Pythonie (efekty W1-W3, U1-U5, K1-K3),
  • aktywność na zajęciach i samodzielne przygotowanie rozwiązań zadań programistycznych (efekty W1-W3, U1-U5, K1-K3).

Warunkiem koniecznym jest uzyskanie pozytywnej oceny dla każdego z powyższych elementów. Bardziej szczegółowe zasady zaliczenia przedmiotu mogą znajdować się w informacjach dla zajęć w konkretnym cyklu i będą podane przez prowadzących laboratoria.

Praktyki zawodowe:

Nie dotyczy

Zajęcia w cyklu "Semestr letni 2023/24" (zakończony)

Okres: 2024-02-20 - 2024-09-30
Wybrany podział planu:
Przejdź do planu
Typ zajęć:
Laboratorium, 26 godzin, 16 miejsc więcej informacji
Koordynatorzy: Bartosz Ziemkiewicz
Prowadzący grup: Bartosz Bieganowski, Jakub Przybysz, Bartosz Ziemkiewicz
Lista studentów: (nie masz dostępu)
Zaliczenie: Przedmiot - Zaliczenie na ocenę
Laboratorium - Zaliczenie na ocenę

Zajęcia w cyklu "Semestr letni 2024/25" (zakończony)

Okres: 2025-02-24 - 2025-09-30
Wybrany podział planu:
Przejdź do planu
Typ zajęć:
Laboratorium, 26 godzin, 20 miejsc więcej informacji
Koordynatorzy: Bartosz Bieganowski
Prowadzący grup: Bartosz Bieganowski, Jakub Przybysz
Lista studentów: (nie masz dostępu)
Zaliczenie: Przedmiot - Zaliczenie na ocenę
Laboratorium - Zaliczenie na ocenę

Zajęcia w cyklu "Semestr letni 2025/26" (w trakcie)

Okres: 2026-02-23 - 2026-09-20
Wybrany podział planu:
Przejdź do planu
Typ zajęć:
Laboratorium, 26 godzin, 20 miejsc więcej informacji
Koordynatorzy: Bartosz Bieganowski, Jakub Przybysz
Prowadzący grup: Bartosz Bieganowski, Jakub Przybysz
Lista studentów: (nie masz dostępu)
Zaliczenie: Przedmiot - Zaliczenie na ocenę
Laboratorium - Zaliczenie na ocenę

Zajęcia w cyklu "Semestr letni 2026/27" (jeszcze nie rozpoczęty)

Okres: 2027-02-22 - 2027-09-20
Wybrany podział planu:
Przejdź do planu
Typ zajęć:
Laboratorium, 26 godzin, 20 miejsc więcej informacji
Koordynatorzy: (brak danych)
Prowadzący grup: (brak danych)
Lista studentów: (nie masz dostępu)
Zaliczenie: Przedmiot - Zaliczenie na ocenę
Laboratorium - Zaliczenie na ocenę
Opisy przedmiotów w USOS i USOSweb są chronione prawem autorskim.
Właścicielem praw autorskich jest Uniwersytet Mikołaja Kopernika w Toruniu.
ul. Jurija Gagarina 11, 87-100 Toruń tel: +48 56 611-40-10 https://usosweb.umk.pl/ kontakt deklaracja dostępności mapa serwisu USOSweb 7.3.0.0-2 (2026-02-16)