Program zaliczeniowy II

Nale�y napisa� program, kt�ry znajduje rozk�ady zadanej liczby wymiernej na podan� liczb� u�amk�w o liczniku 1. Program powinien: Oto przyk�adowe dzia�anie programu:
Podaj u�amek: 1
Podaj liczb� sk�adnik�w: 3
Znaleziono rozk�ady:
1=1/2+1/3+1/6
1=1/2+1/4+1/4
1=1/3+1/3+1/3
Czy chcesz roz�o�y� nast�pn� liczb�? (t/n): t
Podaj u�amek: 1/3
Podaj liczb� sk�adnik�w: 2
Znaleziono rozk�ady:
1/3=1/4+1/12
1/3=1/6+1/6
Czy chcesz roz�o�y� nast�pn� liczb�? (t/n): n

Dodatkowe wymaganie

Program powinien zawiera� klas�, kt�rej obiekty reprezentuj� liczby wymierne (i korzysta� z tej klasy). Ponadto korzystanie z tej klasy powinno by� tak wygodne, jak to tylko mo�liwe - zalecam wykorzystanie operator�w przeci��onych oraz automatycznych konwersji.

Na co nale�y zwr�ci� uwag�:

  1. Nie zawsze zadanie jest rozwi�zywalne - mo�e si� zdarzy�, �e mianowniki pojawiaj�ce si� w rozk�adzie (lub liczby niezb�dne do przeprowadzenia rachunk�w) s� wi�ksze, ni� zakresy typ�w ca�kowitych w C++. W takim przypadku program najlepiej, �eby program wypisa� komunikat, �e nie wszystkie rozwi�zania zosta�y znalezione - nale�y unika� sytuacji, w kt�rej wypisywane s� b�edne rozwi�zania (albo co gorsza program zawiesza si� lub ko�czy z b��dem).
  2. Szybko�� dzia�ania programu nie jest decyduj�cym czynnikiem, jednak nale�y zadba� o to, by program dla niezbyt skomplikowanych danych wykonywa� si� w rozs�dnym czasie.
  3. W przypadku u�ycia cz�sci kodu, kt�ry nie zosta� napisany samodzielnie nale�y to jawnie zadeklarowa�.

Kryteria oceny

  1. Poprawno�� dzia�ania. (2 pkt.)
  2. U�ycie klas. (2 pkt.)
  3. Kod programu. (1 pkt.)
  4. Funkcje dodatkowe. (1 pkt.) - np. mo�liwo�� zapisywania wynik�w do pliku lub wczytywania z pliku zada�.
Rozwi�zania nale�y nadsy�a� na adres [email protected] w terminie, kt�ry zostanie og�oszony p�niej.
Powodzenia
Krzysztof Ziemia�ski
OSZAR »