Algorytmy online podejmują nieodwracalne decyzje, nie znając przyszłości, na podstawie danych, które przychodzą sekwencyjnie.

Czy można mimo to generować rozwiązania, które są dobre w porównaniu z optymalnymi? BYĆ MOŻE.

Zajęcia odbywają się w poniedziałki w godzinach 14:16–18:00 w sali 104. Opis zajęć w systemie Zapisy. Strona zajęć z poprzedniej edycji (2024).

Java to współczesny obiektowy język programowania stworzony przez Jamesa Goslinga z firmy Sun Microsystems. Od momentu powstania w połowie lat 90-tych XX wieku przeżył on dynamiczny rozwój a zainteresowanie nim nie maleje. Język Java przyciągnął do dziś wiele milionów programistów. Znajduje zastosowanie w każdej ważniejszej gałęzi przemysłu informatycznego i jest obecny w różnego rodzaju urządzeniach, komputerach i sieciach. Popularność Javy wynika przede wszystkim z przenośności programów i niezależności od konkretnej platwormy sprzętowej, a co za tym idzie, ma zastosowanie w Internecie oraz ogólnie w aplikacjach sieciowych. Jego podstawowe koncepcje zostały przejęte z języka Smalltalk (maszyna wirtualna, odśmiecanie pamięci) oraz z języka C++ (znaczna część składni i słów kluczowych).

Kurs przedmiotu Metody Implementacji Algorytmów w roku 2025/2026.

Kurs o modelach językowych. Do czego służą, jak są zbudowane i czy (już)  śnią o elektrycznych owcach.

Najważniejsze informacje dla nowych studentów rozpoczynających naukę w roku akademickim 2024/25.

Na wykładzie wprowadzone jest teoria i podstawowe metody, które umożliwiają efektywne programowanie grafiki z użyciem kart graficznych. Wykład nie jest jednak kursem biblioteki OpenGL. 

Wykład jest wprowadzeniem do projektowania układów cyfrowych przy użyciu języka opisu sprzętu Verilog oraz ich implementacji na układach FPGA. W ramach zajęć student nauczy się również metod testowania sprzętu oraz zapozna się z podstawami formalnej weryfikacji układów cyfrowych.

Wykład jest wprowadzeniem do programowania systemów wbudowanych. W ramach wykładu student zapozna się z architekturą popularnych mikrokontrolerów, nauczy się wykorzystywać ich peryferia do sterowania różnorodnymi urządzeniami zewnętrznymi, a także pozna popularne magistrale używane w systemach wbudowanych.

Wstęp do informatyki 2025/26

Wstępny kurs programowania na przykładzie języka Python.

Na seminarium czytać będziemy prace dotyczące rozstrzygalności i złożoności problemów spełnialności (czy dana formuła ma model), skończonej spełnialności (czy dana formuła ma model skończony) oraz związanych z nimi problemów odpowiadania na zapytania do baz danych/baz wiedzy (dla danej bazy D, teorii logicznej T i zapytania q, czy prawdą jest, że każdy model/skończony model D i T spełnia q?)

Interesować nas będą fragmenty logiki pierwszego rzędu (two-variable fragment, guarded fragment, unary negation fragment, guarded negation fragment, …) oraz logiki deskrypcyjne.

Materiał będzie się częściowo pokrywał z materiałem przedmiotu Problemy Decyzyjne w Logice, ale będzie też sporo innych rzeczy i osoby, które ten przedmiot zaliczyły mogą śmiało zapisać się na seminarium.

Niewykluczone, że spotkamy się z pewnymi problemami otwartymi, które będzie można próbować rozwiązać.

Celem zajęć jest przedstawienie podstawowych metod i algorytmów rozwiązywania typowych zadań obliczeniowych. Omawiane zagadnienia mają wielorakie zastosowania m.in. w obliczeniach naukowych czy grafice komputerowej. 

PWO++ to najlepszy język programowania :-) Autor animacji: Jan Lachowski.

PWO++ to najlepszy język programowania (autor animacji wykorzystującej krzywe Béziera: Jan Lachowski).