Autor: Krzysztof
PO2020: Wejściówka na Lab.2
Napisz program szyfrujący tekst wprowadzany przez użytkownika. W tym celu przygotuj tablicę kwadratową A o wymiarze 5 na 5 przechowującą wartości typu char, oraz tablicę jednowymiarową B, Czytaj dalej..
PO2020: ogłoszenia na początek semestru
Wejściówka na pierwszych zajęciach
Wejściówki nie ma na pierwszych zajęciach z PO.
Komputerowe stanowiska pracy i czas pracy
Ocenie podlegają wyłącznie rozwiązania wykonane na stanowisku komputerowym w pracowni, natomiast nie podlegają ocenie zadania wykonane Czytaj dalej..
ZI2020: pierwsze zajęcia w semestrze
Pierwsze zajęcia konwersatorium odbędą się we wtorek, 25 lutego.
ZTP 2019: Wyniki z egzaminu w terminie pierwszym
Lista ocen osób, które brały udział w egzaminie. Wiersze zawierają: trzy ostatnie cyfry nr indeksu, liczbę zdobytych punktów i proponowaną ocenę. Czytaj dalej..
ZTP 2019: Lista osób zwolnionych z egzaminu i wyniki z egzaminu zero
Trzy ostatnie cyfry z nr indeksu osób, które zostają zwolnione z egzaminu z wykładu za bardzo dobre wyniki na zajęciach laboratoryjnych:
- ***262
- ***278
- ***425
- ***455
- ***649
Osoby te otrzymują ocenę 5 (bardzo dobry).
Lista osób, które otrzymały ocenę pozytywną z zajęć lab. i osiągnęły co najmniej 50% pkt. na egzaminie zerowym. Wiersze zawierają: trzy ostatnie cyfry nr indeksu i proponowaną ocenę.
- ***018 4
- ***178 3
- ***179 3.5
- ***184 3
- ***280 4.5
- ***353 3.5
- ***362 3
- ***372 3.5
- ***389 3.5
- ***396 3.5
- ***402 3
- ***420 3
- ***423 4
- ***424 3
- ***460 3.5
- ***479 3.5
- ***480 3
- ***507 4
- ***563 3
- ***634 3.5
- ***635 3
- ***638 5
- ***642 4
- ***644 3
- ***648 4.5
- ***653 4
- ***874 4
Lista osób, które otrzymały ocenę pozytywną z zajęć lab. i uczestniczyły w egzaminie zerowym, ale liczba zdobytych na egzaminie punktów nie przekroczyła progowej wartości 50% możliwych do zdobycia. Wiersze zawierają trzy ostatnie cyfry nr indeksu.
- ***088
- ***136
- ***137
- ***319
- ***388
- ***399
- ***403
- ***422
- ***646
- ***651
- ***880
W razie niejasności, proszę o kontakt. Oceny nie podlegają negocjacji.
ZTP 2019: Wykład 12 – slajdy
ZTP 2019: Wykład 11 – slajdy
ZTP 2019: Zadania przed lab.7
Zadania, które dotyczą zakresu materiału, jaki będzie poruszany na lab. 7. Rozwiązanie nie jest wymagane. Zadania stanowią wyłącznie pomoc w przygotowaniu się do zajęć.
Założenia
Przyjmijmy, że mamy zbiór punktów w przestrzeni n-wymiarowej, przy czym współrzędne pojedynczego punktu są reprezentowane w postaci wektora liczb rzeczywistych o długości n. Mówimy, że punkt A dominuje nad punktem B, jeżeli dla każdej współrzędnej A(i) odpowiadająca jej współrzędna B(i) jest mniejsza lub równa, oraz istnieje co najmniej jedna taka współrzędna j dla której A(j)>B(j). Można też wtedy powiedzieć, że B jest zdominowane przez A. Jeżeli natomiast dla pary punktów taki warunek nie jest spełniony, tj. ani A nie dominuje nad B, ani B nad A, wtedy uważamy punkty A i B za nieporównywalne względem siebie. W zbiorze punktów punkt niezdominowany to taki, który może tylko dominować lub być nieporównywalnym z wszystkimi pozostałymi punktami.


Zadanie 1
Wygeneruj zbiór 100 losowych punktów w przestrzeni n-wymiarowej, po czym znajdź w nim zbiór punktów niezdominowanych. Algorytm znajdowania punktów niezdominowanych polega na porównaniu każdego punktu ze wszystkimi pozostałymi (nie dokonujemy porównania punktu z samym sobą). Jeżeli dla aktualnie sprawdzanego punktu z żadnego porównania nie wyniknie, że jest zdominowany, to znaczy, że jest niezdominowany. Znaleziony punkt niezdominowany należy zapisać w kontenerze pomocniczym. Na koniec sprawdzania kontener pomocniczy zawiera wyłącznie punkty niezdominowane.
Algorytm można zrealizować z pomocą dwóch kontenerów zawierających zestawy tych samych 100 punktów oraz kontenera pomocniczego, który początkowo jest pusty. Punkty z pierwszego kontenera są punktami sprawdzanymi, a punkty z drugiego – punktami z którymi dokonywane jest sprawdzenie. Do kontenera pomocniczego trafiają kopie tych punktów z kontenera pierwszego, które okazały się niezdominowane. Realizacja czynności odbywa się za pomocą dwóch pętli for – zewnętrznej (punkty z pierwszego kontenera) i wewnętrznej (punkty z drugiego kontenera).
Po zaimplementowaniu algorytmu spróbuj zaimplementować go ponownie, ale tym razem bez używania pętli for, while, repeat, natomiast stosując algorytmy STL oraz własne lub biblioteczne obiekty funkcyjne. Sprawdź, czy uzyskałeś ten sam wynik.
Zadanie 2
Wygeneruj zbiór 100 punktów losowo rozłożonych na okręgu o promieniu 1 (Algorytm 2), po czym znajdź w nim zbiór punktów niezdominowanych. W kontenerze uporządkuj rosnąco niezdominowane punkty pod względem ich pierwszej współrzędnej. Wykorzystując algorytm adjacent_difference (slajdy 122 i 123, wykład 8) policz odległości euklidesowe miedzy sąsiednimi punktami (tj. między punktami 1 i 2, 2 i 3, 3 i 4, itd.). W obiekcie funkcyjnym służącym do obliczenia odległości euklidesowej miedzy dwoma punktami skorzystaj z algorytmu inner_product, tak jak to jest pokazane na slajdzie 121 wykładu 8. Policzone odległości zapisz do pomocniczego kontenera, a na koniec policz średnią odległość między punktami oraz wariancję tej odległości.
Przy pisaniu kodu programu unikaj pętli for, while, repeat, a zamiast nich stosuj algorytmy STL oraz własne lub biblioteczne obiekty funkcyjne.
Hint: Zadanie dotyczące znajdowania zbioru punktów niezdominowanych może pojawić się na lab.7. Na zajęciach można będzie wykorzystać fragmenty własnego kodu opracowanego w domu.
Zmiana terminu zajęć lab. ZTP
Zajęcia laboratoryjne ZTP zaplanowane na 18 grudnia (jutro, środa) zostają przełożone na 8 stycznia (środa) w tych samych godzinach i w tej samej pracowni komputerowej (tj. od 11:30 do 14:45 w 1203).
