Uniwersytet Warszawski, Wydział Fizyki - Centralny System Uwierzytelniania
Strona główna

Programowanie I R

Informacje ogólne

Kod przedmiotu: 1100-1Ind24
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: Programowanie I R
Jednostka: Wydział Fizyki
Grupy: Fizyka, ścieżka indywidualna; przedmioty dla I roku
Strona przedmiotu: http://glach.wikidot.com/p1r
Punkty ECTS i inne: 3.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
Kierunek podstawowy MISMaP:

fizyka
informatyka

Założenia (opisowo):

Wykład i ćwiczenia stanowią intensywne wprowadzenie do programowania w języku Python — od zera do poziomu swobodnego pisania kodu i jego czytania rozumieniem.


Do zaliczenia jest wymagane uzyskanie ponad połowy punktów z:

— projektów zaliczeniowych (dwóch)

— kolokwium (pisemnego),

— egzaminu pisemnego.


Egzamin możliwy jest też w sesji poprawkowej. Zaliczenie eksternistyczne / egzamin w trybie zerowym — prośba o kontakt z wyprzedzeniem.

Tryb prowadzenia:

w sali

Skrócony opis:

— programowanie imperatywne/obiektowe/funkcyjne/deklaratywne

— instrukcje warunkowe i pętle, instrukcje pass, break, continue

— sekwencyjne typy danych (napisy, listy, krotki), pętla for i list comprehension

— słowniki, dictionary comprehension

— funkcje, argumenty opcjonalne, argumenty pozycyjne i nazwane

— formatowanie napisów, operacje na plikach, operacja na strumieniach Linux/Unix-owych

— dostęp do listy argumentów programu

— funkcje jako argument, rekurencje, rekurencje z zapamiętywanie, dekoratory

— elementy programowania funkcyjnego, wyrażenia lambda

— programowanie obiektowe, klasy i obiekty

— obsługa wyjątków, instrukcje try i except

— iteratory, generatory, instrukcja yield, wyrażenia generatorowe

— biblioteki numpy, pycosat i pysat

Pełny opis:

— programowanie imperatywne/obiektowe/funkcyjne/deklaratywne

— podstawowe instrukcje (print, if, while)

— pętla while i instrukcje pass, break, continue

— sekwencyjne typy danych (napisy, listy, krotki)

— pętla for i list comprehension

— słowniki, dictionary comprehension

— funkcje, argumenty opcjonalne, argumenty pozycyjne i nazwane

— formatowanie napisów

— operacje na plikach

— operacja na strumieniach Linux/Unix-owych

— dostęp do listy argumentów programu

— funkcje jako argument, rekurencje, rekurencje z zapamiętywanie

— rozwiązanie przez użycie dekoratorów

— elementy programowania funkcyjnego, wyrażenia lambda

— programowanie obiektowe, klasy i obiekty

— zmienne klasy, metody klasy, dziedziczenie

— obsługa wyjątków, instrukcje try i except

— iteratory

— generatory, instrukcja yield, wyrażenia generatorowe

— biblioteka numpy

— biblioteki pycosat i pysat

Literatura:

Polecane podręczniki:

"Effective Python" Brett Slatkin

"Introduction to Computation and Programming Using Python" John V. Guttag

Polecane zasoby internetowe:

[http://www.py4e.com/lessons]

[http://openbookproject.net/thinkcs/python/english3e/]

[http://runestone.academy/runestone/books/published/thinkcspy/index.html]

Efekty uczenia się:

Student(ka) pozna język Python w stopniu ponadpodstawowym, w szczególności wszystkie instrukcje i konstrukcje języka w wersji Python3.

Będzie umiał(a) zakodować w języku Python algorytm zadany opisem w postaci opisu w języku naturalnym lub opisany pseudokodem.

Będzie rozumiał idee programowania proceduralnego (w tym podziału na podprogramu) i obiektowego (w tym podziału na klasy). Będzie umiał użyć tej wiedzy aby podzielić w 2-3 osobowym zespole pracę nad projektem programistycznym.

Będzie umiał(a) przeczytać ze zrozumieniem i zinterpretować otrzymany kod w języku Python.

Będzie znał(a) najczęstsze komunikaty o błędach i zachowanie programów w najczęstszych sytuacjach nietypowych. Będzie umiał (a)użyć tych informacji aby odnaleźć błędy w otrzymanym kodzie.

Metody i kryteria oceniania:

ocena = f(p1+p2+p3+p4), gdzie:

x f(x)

>=90 5

81-89 4+

72-80 4

62-71 3+

50-61 3

p1 — oceny z projektów zaliczeniowych (0-40)

p2 — aktywność na ćwiczeniach (0-20)

p3 — ocena z kolokwium (0-20)

p4 — ocena z egzaminu (0-20)

Praktyki zawodowe:

nie dotyczy

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

Okres: 2025-02-17 - 2025-06-08
Wybrany podział planu:
Przejdź do planu
Typ zajęć:
Ćwiczenia, 30 godzin więcej informacji
Wykład, 15 godzin więcej informacji
Koordynatorzy: Grzegorz Łach
Prowadzący grup: Grzegorz Łach, Agnieszka Makulska, Michał Parniak-Niedojadło, Tomasz Tarkowski, Bartłomiej Zglinicki
Lista studentów: (nie masz dostępu)
Zaliczenie: Przedmiot - Zaliczenie na ocenę
Wykład - Zaliczenie na ocenę

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

Okres: 2026-02-16 - 2026-06-07

Wybrany podział planu:
Przejdź do planu
Typ zajęć:
Ćwiczenia, 30 godzin więcej informacji
Wykład, 15 godzin więcej informacji
Koordynatorzy: Grzegorz Łach
Prowadzący grup: Michał Czerepaniak, Bartosz Kasza, Grzegorz Łach, Agnieszka Makulska, Mikołaj Marcinkowski
Lista studentów: (nie masz dostępu)
Zaliczenie: Przedmiot - Zaliczenie na ocenę
Wykład - Zaliczenie na ocenę
Opisy przedmiotów w USOS i USOSweb są chronione prawem autorskim.
Właścicielem praw autorskich jest Uniwersytet Warszawski, Wydział Fizyki.
ul. Pasteura 5, 02-093 Warszawa tel: +48 22 5532 000 https://www.fuw.edu.pl/ kontakt deklaracja dostępności mapa serwisu USOSweb 7.2.0.0-11 (2025-12-17)