Archiwum kategorii 'Programowanie' Category

06
kwi

silnia wyjątkowa

Zadanie:
Zaimplementuj jako metody klasy Testy rekurencyjne wersje funkcji silnia(int n) oraz fib(int n) obliczające silnię oraz n-ty wyraz ciągu Fibonacciego; które wynik przekazują poprzez wyjątek. Chodzi o to, aby zamiast instrukcji return zgłosić wyjątek, którego atrybut lub pole będzie zawierało wynik obliczeń. Zaprogramuj też dla porównania „zwykłe” wersje rekurencyjne tych metod i zbadaj, która wersja jest szybsza.

Warto jakoś zacząć - najlepiej od łatwiejszej silni. Zaimplementujemy więc “zwykłą” rekurencyjną silnię

public int silnia_r(int n) {
if (n <= 1) {
return 1;
}
else {
return n * silnia_r(n-1);
}
}

Czytaj dalej ’silnia wyjątkowa’

30
mar

przykład typów generycznych w c#

Zadanie 1:
Zaprogramuj klasę Lista<T> implementującą metody dodawania i usuwania elementów z początku i końca listy, oraz metodę sprawdzania jej niepustości. Istotne jest, aby elementy listy nie były obiektami klasy Lista, lecz elementami innej klasy, której polami są: pole zawierające wartość typu T, oraz odnośniki do innych elementów listy. Przyjmij taką implementację klasy Lista, aby działała ona efektywnie zarówno gdy jest wykorzystywana jako kolejka, jak i stos, tj. aby operacje dodawania i usuwania elementów na początek i koniec działały w czasie stałym.

Przykład: klik

Zadanie 2:
Zaimplementuj klasę Słownik<K,V> przechowującąpary elementów, gdzie pierwszym elementem pary jest klucz, a drugim wartość. Klasa powinna implementować metodę dodawania, wyszukiwania i usuwania elementu wskazywanego przez klucz. Przyjmij, że pary są przechowywane jako elementy drzewa binarnych poszukiwań tak, aby możliwe było szybkie odszukanie klucza. Parametrami klasy są typ klucza i typ wartości.

Przykład: klik

28
mar

przykład klas strumieniowych

Zadanie 1:
Zadeklaruj klasę IntStream implementującą strumień liczb naturalnych, która implementuje metody:

int next();
bool eos();
void reset();

gdzie kolejne wywołania metody next() zwracają kolejne liczby naturalne począwszy od zera, wartość metody eos() oznacza koniec strumienia, a resest() inicjuje na nowo strumień. Zadeklaruj dwie podklasy:

  • PrimeStream implementującą strumień liczb pierwszych, tj. wartościami kolejnych wywołań metody next() są kolejne liczby pierwsze. Oczywiście ze względu na ograniczony rozmiar typu int możliwe jest jedynie zwrócenie liczb pierwszych mniejszych niż rozmiar typu. Gdy nie jest możliwe obliczenie kolejnej liczby pierwszej, wartość eos() powinna być true.
  • klasę RandomStream, w której metoda next() zwraca liczby losowe. W takim wypadku eos() jest zawsze fałszywe. Wykorzystaj te klasy do implementacji klasy RandomWordStream realizującej strumień losowych słów o długościach równych kolejnym liczbom pierwszym.

Przykład: klik

Zadanie 4.
Zdefiniuj klasę ListaLeniwa implementującą leniwe listy całkowite wraz z metodą

int element(int i);

zwracającą i-ty element listy. ”Leniwość” takiej listy polega na tym, że na początku jest ona pusta, jednak w trakcie wywołania metody element(100) budowanych jest pierwszych sto elementów. Gdy wywołamy element(102) do listy dopisywane są brakujące dwa elementy. Zaimplementuj podklasę Pierwsze zawierającą listę liczb pierwszych, tj. element(i) zwraca i-tą liczbą pierwszą.

Przykład: klik

07
mar

lista 1 (c++)

Zadanie
Napisz program, który zamienia wprowadzona ze standardowego wejscia cin liczbe naturalna (z przedziału od 1 do 999 999 999) na liczbe w zapisie słownym w jezyku polskim (pamietaj o prawidłowej odmianie liczebników). Program ma wypisac zamieniona liczbe na standardowym wyjsciu cout. Po wczytaniu liczby całkowitej sprawdz, czy nalezy ona do zadanego przedziału. Jesli wczytana liczba bedzie niewłasciwa, to program powinien wypisac stosowny komunikat na standardowe wyjscie dla błedów cerr.
Uwaga
Do zamiany liczby z postaci binarnej int do słownej string zaprogramuj oddzielna funkcje. Łancuchy znakowe string mozna ze soba łaczyc za pomoca operatora dodawania + .

Mój kod: http://www.nopaste.pl/3cb

23
gru

Pracowania ANSI C

lista1.pdf
lista2.pdf
lista3.pdf
lista4.pdf
projekty.pdf

Moje rozwiązania (bez listy 3 której nie robiłem): www




λ!

Mój aktualny plan
Moja niby strona
Moja nasza-klasa

Kategorie

 

lipiec 2008
P W Ś C P S N
« maj    
 123456
78910111213
14151617181920
21222324252627
28293031