16.07.2014 Views

Programowanie. Teoria i praktyka z wykorzystaniem C++

Programowanie. Teoria i praktyka z wykorzystaniem C++

Programowanie. Teoria i praktyka z wykorzystaniem C++

SHOW MORE
SHOW LESS

Create successful ePaper yourself

Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.

w i c z e n i a<br />

WICZENIA 215<br />

Dekompozycja liczby 123: liczba setek: 1; liczba dziesitek: 2; liczba jednostek: 3. Liczba ma by<br />

wysyana na wyjcie jako typ int. Obsu liczby jedno-, dwu-, trzy- i czterocyfrowe.<br />

Wskazówka: aby uzyska cakowitoliczbow warto 5 znaku '5', odejmij od niego '0',<br />

tzn. '5'-'0'==5.<br />

10. Permutacja to uporzdkowany podzbiór pewnego zbioru. Wyobra sobie na przykad, e<br />

chcesz zdoby szyfr do sejfu. Jest 60 moliwych liczb, a kombinacja, której potrzebujesz,<br />

skada si z trzech rónych liczb. Jest P(60,3) permutacji dla tej kombinacji, gdzie P definiuje<br />

nastpujcy wzór:<br />

We wzorze tym ! oznacza przyrostkowy operator silni. Na przykad 4! wynosi 4*3*2*1.<br />

Kombinacje s podobne do permutacji, z t rónic, e nie jest w nich wana kolejno<br />

elementów. Gdyby na przykad robi sobie deser lodowy, chcc uy trzech rónych<br />

smaków lodów z piciu dostpnych, nie zaleaoby Ci, czy bananowy znajdzie si na<br />

wierzchu czy na samym dole, oby gdzie by. Wzór kombinacji jest nastpujcy:<br />

Zaprojektuj program proszcy uytkownika o podanie dwóch liczb, pytajcy, czy ma obliczy<br />

permutacje czy kombinacje i drukujcy wynik. To bdzie wymagao podzielenia go<br />

na kilka czci. Wykonaj analiz opisanych wyej wymaga. Napisz, co dokadnie program<br />

ma robi. Napisz pseudokod i podziel go na czci. Ten program powinien mie<br />

wbudowany mechanizm sprawdzania bdów. Spraw, aby dla kadego rodzaju bdnych<br />

danych byy zwracane odpowiednie komunikaty o bdzie.<br />

Podsumowanie<br />

Jedn z podstawowych czynnoci programistycznych jest odpowiednie rozpoznanie danych<br />

wejciowych. W taki czy inny sposób musi poradzi sobie z tym problemem kady program.<br />

Do najtrudniejszych zada naley rozszyfrowanie tego, co wytworzy bezporednio czowiek.<br />

Na przykad cige problemy sprawia wiele aspektów technologii rozpoznawania gosu. Proste<br />

wersje tego problemu, jak nasz kalkulator, mona rozwiza za pomoc gramatyk definiujcych<br />

wprowadzane dane.

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!