1 Powtórzenie wiadomości

Transkrypt

1 Powtórzenie wiadomości
1
Powtórzenie wiadomości
Zadanie 1 Napisać program, który w trybie dialogu z użytkownikiem przyjmie liczbę
całkowitą, a następnie wyświetli informację czy jest to liczba parzysta czy nieparzysta
oraz czy jest dodatnia, ujemna czy jest 0.
Zadanie 2 Napisac program, który wyświetli na ekranie wszystkie argumenty programu:
• z wykorzystaniem pętli for
• z wykorzystaniem pętli while
• z wykorzystaniem pętli do while
Jeśli program został wywołany bez argumentów, wyświetlić odpowiedni komunikat.
Zadanie 3 Napisać program, który przyjmie od użytkownika liczbę całkowitą, a następnie
wyświetli ilość jej cyfr.
Zadanie 4 Napisać program, który pobierze od użytkownika liczbę całkowitą, a następnie
wyświetli informację, czy jest to liczba pierwsza.
Zadanie 5 Napisać program, który wyświetli minimum z podanych przez użytkownika
liczb. Wczytywanie liczb należy zakończyć, gdy użytkownik przyciśnie klawisz Enter bez
podania żadnej liczby.
Zadanie 6 Napisać iteracyjnie (z użyciem pętli) funkcje liczące:
• silnię dla zadanej liczby całkowitej (dla ujemnej wynikiem ma być -1)
• całkowitą potęgę z liczby zmiennopozycyjnej
Wytestować funkcje w krótkim programie. Wszystko umieścić w jednej klasie. Nie wolno
używać funkcji z klasy Math.
Zadanie 7 Napisać rekurencyjnie (bez użycia pętli, z użyciem rekurencyjnych wywołań
tej samej funkcji) funkcje liczące:
• silnię dla zadanej liczby całkowitej (dla ujemnej wynikiem ma być -1)
• całkowitą potęgę z liczby zmiennopozycyjnej
Wytestować funkcje w krótkim programie. Wszystko umieścić w jednej klasie. Nie wolno
używać funkcji z klasy Math.
Zadanie 8 Zadeklarować 6 zmiennych a0, a1, a2, b0, b1, b2 typu rzeczywistego double.
Przypisać im dowolne wartości. Zaprojektować i napisać ciąg instrukcji obliczających i
wyświetlających rozwiązanie następującego układu dwóch równań z dwiema niewiadomymi:
½
a0 x + a1 y = a2
b0 x + b1 y = b2
Uwaga: W miarę potrzeby zadeklarować kolejne zmienne pomocnicze.
Zadanie 9 Napisać program wyznaczający i wyświetlający wartość funkcji f (x, y, z) dla
wartości zmiennych otrzymanych w argumentach programu. Jeśli argumentów jest za mało
lub za dużo, wyświetlić odpowiedni komunikat. Jeśli nie da się policzyć wartości funkcji
dla otrzymanych zmiennych, również wyświetlić odpowiedni komunikat.

dla x ≤ 0
 x+y+z
√
x2 + y + 2z dla x ∈ (0, 10)
f (x, y, z) =

100 − x − y
dla x ≥ 10
Zadanie 10 Napisać program, który wyświetli średnią arytmetyczną z liczb podanych
do programu jako argumenty. Jeśli tablica argumentów będzie pusta, wyświetlić komunikat:
Błąd! Nie podano argumentów. Obsłużyć wyjątek NumberFormatException (reakcja własnym
komunikatem i zakończenie programu)
Zadanie 11 Zadeklarować liczbę całkowitą n typu int i nadać jej wartość dodatnią.
Obliczyć i wyświetlić n-ty wyraz ciągu an danego wzorem:
½
a1 = 3
ai = 3ai−1 − 12
i>1
Zadanie 12 Zadeklarować zmienną alfa typu byte oraz nadać jej dowolną wartość
dodatnią. Wyświetlić słownie ile wynosi reszta z dzielenia wartości alfa przez 5, np.
dla alfa = 14: Reszta z dzielenia 14 przez 5 wynosi cztery.
Zadanie 13 Zadeklarować zmienną całkowitoliczbową i nadać jej wartość z zakresu od 0
do 6. Wyświetlić nazwę dnia tygodnia odpowiadającą wartości tej zmiennej, przyjmując,
że 0 – niedziela, 1 – poniedziałek, itd.
2
Klasy: String, StringBuilder, StringTokenizer
Uwaga: wszystkie niżej przedstawione funkcje napisać w klasie TestNapisow. W klasie
TestNapisow utworzyć również metodę main i wytestować w niej działanie napisanych
funkcji.
Zadanie 14 Napisać funkcję iloscCyfrWNapisie, która zwróci ilość cyfr występujących
w napisie podanym w parametrze.
Zadanie 15 Napisać funkcję iloscZnakowWNapisie, która otrzymuje w parametrach
napis typu String i znak typu char i zwraca ilość wystąpień tego znaku w napisie.
Zadanie 16 W programowaniu w języku asembler zapis liczby szesnastkowej kończy się
znakiem ’h’ lub ’H’, i poprzedza znakiem ’0’, o ile zaczyna się ona literą. Napisać funkcję
logiczną jestSzesnastkowa, która sprawdzi, czy parametr typu String zawiera poprawny
zapis liczby w systemie szesnastkowym wg przyjętych wyżej założeń.
Zadanie 17 Napisać funkcję iloscPodnapisowWNapisie, która dostaje w parametrach
dwa napisy typu String i zwraca ilość niezależnych wystąpień drugiego parametru w pierwszym.
Zadanie 18 Napisać funkcję o nazwie skrotNazwy, która otrzymując w parametrze typu
String pełną nazwę jakiejś organizacji, zwraca jej nazwę skróconą (napis typu String
składający się z pierwszych liter wyrazów, pisany dużymi literami).
Zadanie 19 Napisać funkcję logiczną jestPalindromem, która sprawdzi, czy napis zadany
w parametrze typu StringBuilder jest palindromem.
Zadanie 20 Napisać funkcję o nazwie wynikDziałania, która otrzymuje w parametrze
napis typu String postaci:
liczba działanie liczba
gdzie liczba jest zapisem liczby rzeczywistej zaś działanie jest tekstem wybranym
spośród następujących: ["+", "-", "*", "/"]. Człony napisu oddzielone są zawsze spacjami.
Funkcja ma zwrócić wynik takiego działania.
3
Klasy
Uwaga: Każdą zaprojektowaną klasę należy wytestować - napisać program, który powoła
obiekt(y) danej klasy do życia, a następnie wytestuje każdą z metod.
Zadanie 21 Zaprojektować i zakodować klasę Punkt, której obiekty będą reprezentowały
punkty na płaszczyźnie. Klasa powinna zawierać min. metody obliczające odległość punktu
od początku układu współrzędnych, odległość punktu od innego zadanego punktu, sprawdzenie,
czy punkt należy do prostej, przesuwające punkt o zadany wektor itp.
Zadanie 22 Zaprojektować i zakodować klasę Prosta, której obiekty będą reprezentowały
proste na płaszczyźnie. Prosta ma być zadana jako zbiór punktów spełniających równanie:
Ax+By+C=0. Klasa ma zawierać min. metody sprawdzające, czy prosta jest funkcją, czy
jest równoległa do osi OX lub OY, czy zawiera punkt, czy jest równoległa lub prostopadła
do zadanej prostej itp.
Zadanie 23 Zaprojektować i zakodować klasę Odcinek, której obiekty będą reprezentowały
odcinek na płaszczyźnie. Odcinek ma być zadany przez jego końce (klasy Punkt). Klasa
ma zawierać min. metody obliczające jego długość, sprawdzające, czy należy do zadanej
prostej, przesuwające odcinek o zadany wektor itp.
Zadanie 24 Zaprojektować i zaprogramować klasę Liczba, która będzie przechowywała
wartość typu long i wykonywała następujące operacje:
1. obliczenie ilości jej cyfr,
2. obliczenie sumy jej cyfr,
3. obliczenie iloczynu jej cyfr,
4. sprawdzenie, czy jest parzysta,
5. sprawdzenie, jaki jest jej znak (dodatnia, ujemna, równa 0),
6. obliczenie jej wartości przeciwnej,
7. sprawdzenie, czy jest liczbą pierwszą,
8. sprawdzenie, czy jest palindromem.
W klasie należy zdefiniować konstruktor z parametrem typu long oraz metodę toString().
Zadanie 25 Zaprojektować klasę (Wektor3D), której obiekty będą reprezentowały wektory
swobodne w przestrzeni trójwymiarowej. Klasa ta ma umożliwiać wykonanie następujących
operacji:
1. utworzenie wektora na podstawie podanych w parametrach trzech współrzędnych
wektora,
2. utworzenie wektora na podstawie podanej w parametrze tablicy trójelementowej
o składowych rzeczywistych,
3. obliczenie długości wektora,
4. dodawanie wektorów,
5. obliczenie iloczynu skalarnego dwóch wektorów,
6. sprawdzenie, czy dwa wektory są do siebie prostopadłe,
7. sprawdzenie, czy dwa wektory są do siebie równoległe.
4
Pliki
Zadanie 26 Napisać program, który w trybie dialogu z użytkownikiem przyjmie ścieżkę
do zasobu, a następnie:
• jeśli taki zasób nie istnieje, wyświetli odpowiedni komunikat i zakończy działanie,
• jeśli jest to katalog, wyświetli jego zawartość,
• jeśli jest to plik, poda jego wielkość i datę ostatniej modyfikacji.
Skorzystać z klasy File.
Zadanie 27 Napisać program, który przyjmie od użytkownika ścieżkę do pliku, a następnie
jeśli taki plik nie istnieje, zwróci stosowną informację i zakończy działanie. Jeśli plik
istnieje, wypisze kolejne linie pliku na ekran, poprzedzając każdą z nich numerem linii.
Zadanie 28 Napisać program, który przyjmie od użytkownika ścieżkę do pliku, a następnie
jeśli taki plik nie istnieje, zwróci stosowną informację i zakończy działanie. Jeśli plik
istnieje wyświetli statystykę dotyczącą ilości linii oraz ilości wyrazów w pliku.
Zadanie 29 Napisać funkcję statystyka, która dostaje w parametrach typu String
scieżki do dwóch plików. Pierwszy plik jest plikiem wejściowym postaci:
5,
2,
5,
2,
7,
8,
9,
0,
2,
2,
5,
7,
8, 4
8, 9, 66, 3, 0
1
6, 9
Funkcja ma za zadanie umieścić w drugim pliku informacje dotyczące każdej linii w
następujący sposób:
Statystyka dotyczaca pliku xxx
1. min: xxx, max: xxx, srednia: xxx
2. min: xxx, max: xxx, srednia: xxx
... i tak dalej
Jeśli ten plik istnieje, funkcja ma go nadpisać. Wszelkie wyjątki (wyjątek wejścia/wyjścia
i brak pliku o zadanej ścieżce) metoda ma przekazywać do obsługi na zewnątrz.

Podobne dokumenty