Programowanie obiektowe, semestr letni, 2018/2019
Zajęcia odbywają się w środy w godzinach 12:15-13:45, 14:15-15:45.
2019-06-12
- ściągawki z javy:
- java streams: https://winterbe.com/posts/2014/07/31/java8-stream-tutorial-examples/
- Eclipse i Maven:
- jak uruchomić przykładowy projekt z zadania2:
- użyj nowej wersji Eclipse:
/opt/eclipse/java/eclipse
- zainstaluj wtyczkę m2e (Help -> Install new software, trzeba zaznaczyć “all sites” i wyszukać “m2e”)
- zaimportuj projekt (File -> Import i wybrać “maven -> existing maven projects”)
- użyj nowej wersji Eclipse:
2019-06-05
2018-05-29
- ImmutableSetTest.java
- zadanie domowe (2pkt): rozwiązania zadania ImmutableSet, przesłane emailem do 2019-06-04 23:59
- czytanki o iteratorach:
2019-05-22
- Pan Tadeusz (jako plik tekstowy)
- Scanner
- Java wyrażenia regularne
- Java locale
- liczniki w Javie
- laboratorium testy:
- zadanie domowe (2pkt): rozwiązania zadania grafowego, przesłane emailem do 2019-05-28 23:59
2019-05-15
- laboratorium:
- testy: bstTest.java
- zadanie domowe (2 pkt), implementacja klasy BST przesłana emailem do wtorku 2019-05-21 23:59
2019-05-08
- laboratorium:
- testy: ONPTest.java
- laboratorium: wyjątki cz. 1 i wyjątki cz. 2
- zadanie domowe (2pkt), implementacja klasy ONP przesłane emailem do wtorku 2019-05-14 23:59
- ćwiczenia: drzewa BST
2019-04-24
- laboratorium:
- ćwiczenia: https://pl.wikipedia.org/wiki/Blackjack
2019-04-17
-
laboratorium:
-
testy: WyrazeniaTest.java
-
zadanie domowe (2pkt), implementacja pakietu klas dla wyrażeń logicznych (może być na podstawie rozwiązania do zadania o wyrażeniach arytmetycznych) + proste testy jednostkowe (JUnit) przesłane emailem do wtorku 2019-05-07 23:59
-
wczytywanie danych ze standardowego wejścia
import java.util.Scanner; class io { public static void main(String args[]) { Scanner sc = new Scanner(System.in); int n = sc.nextInt(); int[] tab = new int[n]; for(int i=0;i<n;i++) tab[i] = sc.nextInt(); int suma = 0; for(int i=0;i<n;i++) suma += tab[i]; System.out.println(suma); } }
-
klasa Scanner: https://docs.oracle.com/javase/10/docs/api/java/util/Scanner.html
-
-
ćwiczenia: wyrażenia arytmetyczne ciąg dalszy
2019-04-10
- laboratorium: brak (Olimpiada Informatyczna)
- ćwiczenia: wyrażenia arytmetyczne
2019-04-03
- laboratorium: klasa Wielomian
- Metoda Hornera
- Własności pierwiastków wielomianów
- Metoda Newtona (ale nie trzeba tego implementować!)
- laboratorium testy: WielomianTest.java
- zadanie domowe (2pkt): rozwiązanie zadania Wielomian (1pkt) oraz uzupełnione testy (1pkt) przesłane emailem do 2019-04-09 23:59, kod musi przechodzić wszystkie testy z ewentualnym pominięciem test_miejsca_zerowe
- klasa ArrayList
- przykład użycia ArrayList i porównanie z tablicami: arraylist.java
- samouczek dotyczący kolekcji w Javie
2019-03-27
- laboratorium testy:
UlamekTest.java - zadanie domowe (1pkt): rozwiązanie zadania Ulamek przesłane emailem do 2019-04-02 23:59
- ==, .equals(), compareTo(), and compare()
- Zune bug explained in detail
- bardzo ciekawy artykuł o datach, czasie i strefach czasowych
- Falsehoods programmers believe about time
- More falsehoods programmers believe about time; “wisdom of the crowd” edition
2019-03-20
- laboratorium: implementacja zadań z ćwiczeń z 2019-03-13
- ćwiczenia: ważniak, wstęp do javy
2019-03-13
- pierwszy program w Javie (Main.java):
public class Main { public static void main(String[] args){ System.out.println("Hello world"); } }
- kompilacja: javac Main.java
- uruchomienie: java Main
- IntelliJ IDEA 2016 Java Quick-Start Hello-World
- JUnit 4 with IntelliJ: A quick introduction
- Unit Testing and Coverage in IntelliJ IDEA
-
laboratorium testy:
lab03_HelloTest.java lab03_TriangleTest.java lab03_ChristmasTreeTest.java lab03_Times2RevTest.java - zadanie domowe (1pkt): rozwiązanie zadania ChristmasTree przesłane emailem do 2019-03-19 23:59
2019-03-06
- laboratorium: projektowanie aplikacji do gry w Brydża
- laboratorium zadanie domowe: PDF z projektem dla zadania o gry w Brydża przesłany emailem do 2019-03-12
- ćwiczenia: zadanie o Bilbo
2019-02-27
- laboratorium: projektowanie bazy pojazdów
- laboratorium zadanie domowe, PDF z projektem dla zadania bazy pojazdów przesłany emailem do 2019-03-05
- ćwiczenia: klasa opisująca grafy
Wyniki zadań domowych
nr indeksu | 0. szybkość | 1. pojazdy | 2. brydż | 3. choinka | 4. ułamek | 5. wielomian | 6. wyrażenia logiczne | 7. onp | 8. bst | 9. graf | 10. immutable | RAZEM |
---|---|---|---|---|---|---|---|---|---|---|---|---|
373363 | 1 | 1 | 1 | 1 | 1 | 2 | 2 | 2 | 10 | |||
382473 | 1 | 1 | ||||||||||
401929 | 1 | 1 | 1 | 2 | 2 | 2 | 2 | 10 | ||||
406109 | 1 | 1 | 1 | 2 | 2 | 2 | 2 | 10 | ||||
406113 | 1 | 1 | 1 | 1 | 1 | 2 | 2 | 2 | 2 | 2 | 10 | |
406119 | 1 | 1 | ||||||||||
406121 | 1 | 1 | 1 | 3 | ||||||||
406161 | 1 | 1 | 1 | 1 | 2 | 2 | 2 | 10 | ||||
406204 | 1 | 1 | 1 | 2 | 2 | 2 | 9 | |||||
406247 | 1 | 1 | 1 | 1 | 2 | 2 | 2 | 10 | ||||
406259 | 1 | 1 | 1 | 1 | 1 | 2 | 2 | 2 | 2 | 10 | ||
406273 | 0 | |||||||||||
406340 | 1 | 1 | 1 | 2 | 2 | 2 | 2 | 10 | ||||
406372 | 1 | 1 | 1 | 1 | 2 | 2 | 8 | |||||
406390 | 1 | 1 | 1 | 1 | 1 | 2 | 0.1 | 2 | 2 | 10 | ||
406395 | 1 | 2 | 2 | 2 | 2 | 9 | ||||||
406548 | 1 | 1 | 1 | 0.5 | 1 | 2 | 2 | 2 | 10 |