WPR, laboratorium 10
Ko... ko... kolekcje, niekoniecznie antyków,
¶frazując: rysować każdy może,
trochę lepiej lub trochę gorzej...
Proszę wybrać sobie cztery zadania.
Zadanie 1A (kolekcje+pliki)
Napisz program, który dla podanego jako parametr, pliku tekstowego
wyświetli listę występujących w nich różnych słów, uporządkowaną:
a)   alfabetycznie,
b)   rosnąco, według długości wyrazów,
(gdy dwa wyrazy są tej samej długości
decyduje porządek alfabetyczny).
Zadanie 2A (kolekcje+pliki)
Napisz program, który dla podanego jako parametr, pliku tekstowego
wyświetli listę występujących w nich różnych słów, które wystąpiły przynajmniej
n razy (n określone przez użytkownika).
Zadanie 3A
Mając już odpowiednią wiedzę o kolekcjach, napisz program umożliwiający
kodowanie lub odkodowanie tekstu wykorzystując alfabet Morse'a.
Porównaj kod programu z kodem wykonanym na
wcześniejszych zajęciach, realizującym to samo zadanie.
Zadanie 1B (grafika)
Napisz program, który tworzy okno o podanych przez użytkownika wymiarach, umieszczając wewnątrz płot o podanej liczbie żerdzi. Poniżej przedstawiono kilka przykładów uruchomienia programu.
Zadanie 2B (grafika --- ćwiczenie z czytania dokumentacji)
Napisz program, który tworzy okno i rysuje wewnątrz przedstawiony poniżej symbol.
Zadanie 3AB (kolekcje+pliki+grafika)
Napisz program tworzący okno i wyświetlający wewnątrz stolik z książkami. Informacja o znajdujących się na stoliku książkach znajduje się w pliku lab10ksiazki.txt   w katalogu z treścią zadań. Plik może być przeczytany przez program tylko raz!
Przyjęty format zawartości pliku:
wysokość_książki grubość_książki kolor_okładki(r g b) tytuł
Na grzbiecie książki, jeśli się zmieści, drukowany jest jej tytuł. Jeśli tytuł jest zbyt długi, wyświetlany jest numer książki. Jeśli książka jest zbyt cienka, w stosunku do używanej czcionki, na grzbiecie nie pojawia się nic.
Poniżej zamieszczono propozycję szkieletu klasy reprezentującej książkę.
fragment kodu programu
class Book{
...
void setPosition(int x,int y){...} //położenie książki w oknie
int getWidth(){ ... }
Book(int height,int width,String title,int r,int g,int b){
...
}
void drawBook(Graphics g){
...
}
}
Zadanie 4 L (dla koneserów!)
Napisz program, który dla podanego jako parametr, pliku tekstowego
wyświetli listę występujących w nich różnych słów, w jeden z wybranych sposobów
uporządkowania:
 ORDER_A:   alfabetycznie,
 ORDER_B:   rosnąco, według długości wyrazów, (gdy dwa wyrazy są tej samej długości
decyduje porządek alfabetyczny),
 ORDER_C:   malejąco według liczby wystąpień wyrazu
(gdy dwa wyrazy wystąpiły tyle samo razy decyduje porządek alfabetyczny).
Wykorzystaj poniższy fragment kodu testującego.
kod programu
MyComparator cmp= new MyComparator(MyComparator.ORDER_A);
.... wordsInFile=new ....;
// wczytanie zawartości pliku
Collections.sort(wordsInFile,cmp);
// wyświetlenie zawartości kolekcji: wordsInFile
//...
cmp.setHowToCompare(MyComparator.ORDER_B);
Collections.sort(wordsInFile,cmp);
// wyświetlenie zawartości kolekcji: wordsInFile
//...
cmp.setHowToCompare(MyComparator.ORDER_C);
Collections.sort(wordsInFile,cmp);
// wyświetlenie zawartości kolekcji: wordsInFile
//...
Zadanie 4 XL
Napisz program wyświetlający wewnątrz okna głównego n razy obrazek zawarty w pliku graficznym earth.jpg, (plik znajduje się w katalogu z treścią zadań). Wymiary obrazka oraz czas między kolejnymi wyświetleniami obrazka ustalane są losowo. Poniżej przedstawiono efekt przykładowego wykonania programu.
Zadanie 4 XXL (dla bardzo, bardzo chętnych... fonty, fonty, fonty)
Napisz program, który wczytuje plik tekstowy, który
zawiera tekst do wyświetlenia. Standarodowy tekst jest wyświetlany w oknie
(o podanej przez użytkownika szerokości) czcionką Dialog, o rozmiarze 12.
W pliku mogą pojawić się polecenia zmieniające rozmiar czcionki:
\small 9pt
\normal 12pt
\large 18pt
\LARGE 24pt
lub jej rodzaj:
\dialog oznacza czcionkę Dialog
\maszynowa oznacza czcionkę Monospaced
\text oznacza czcionkę Serif
czy sposobu wyróżnienia:
\bold wytłuszczona aktualna czcionka
\italic pochylona aktualna czcionka
Powyższe polecenia działają od miejsca w którym się pojawiły do końca pliku lub końca
bloku, który oznaczony jest parą nawiasów klamrowych.
plik tekstowy
{
\maszynowa \small to \normal jest \large wiara:
}
{
\dialog \large człowiek {\italic przestaje się}
{\bold martwić }
\LARGE i robi {\bold swoje }
}
(J. Carroll {\italic Muzeum Psów } )
Dla powyższego pliku tekstowego, po podaniu szerokości 390
otrzymamy poniższy wynik:
Wyszukiwarka
Podobne podstrony:
lab10(1)lab10I9G1S1 Nadolny Michal Lab10lab10lab10 Verilogfiza lab10AiP Lab10Lab10sop 2009 lab10lab10Lab10 occi2 lab10lab10 macierze wektorylab10 ACpanek LAB10lab10Lab10 RSVPLab10 integracja z ms?cesswięcej podobnych podstron