Proszę o napisanie programu w c++ zliczający punkty w darta. Proszę użyć if 'ów i while 'a gdyż to narazie trochę umiem.
Zasady gry 301 dla jednego gracza:
Zawodnik zaczyna grę od stanu punktowego 301. Na koniec każdej kolejki (po rzuceniu 3 rzutek) odejmuje się sumę zdobytych punktów od poprzedniego stanu punktowego. Zawodnik musi zredukować ilość punktów dokładnie do zera. Gdy zawodnik w jednej kolejce zdobędzie więcej punktów niż jest potrzebne do osiągnięcia zera - oznacza to "BUST" i nie będą one zapisane. Całkowita punktacja powraca do stanu z poprzedniej kolejki.
Treść zadania:
Napisz program, któy zlicza punkty w grę 301 dla jednego gracza, według zasad podanych powyżej. Program może mieć dowolną liczbę rund. W każdej rundzie zawodnik ma do wykorzystania 3 lotki. Każda lotka może punktować od 0 - 60 punktów. Jeśli punktacja podana przez gracza będzie mieściła się w tym zakresie, nie będziemy sprawdzali poprawności punktów (w prawdziwej grze zawodnik nie ma szans zdobyć np. 59 punktów w jednym rzucie, a w naszej grze może). Jeśli jednak wartość jednego rzutu nie mieści się w zakresie 0 - 60, program wyświetli komunikat:
"Niepoprwana ilość punktów".
Gra kończy się, gdy zawodnik osiągnie 0 punktów - nawet, jeśli będzie to po pierwszej lub drugiej lotce, a więc w środku rundy!
W każdej rundzie program wyśfietli następujące komunikaty:
Runda 1, rzut 1: Podaj ilość punktów
Runda 1, rzut 2: Podaj ilość punktów
Runda 1, rzut 3: Podaj ilość punktów
Runda 1, liczba twoich punktów: x
Gzie x jest liczbą punktów posiadanych przez gracza, a nie ilością punktów zdobytych w rundzie. Przykładowo jeżeli w pierwszej rundzie rzuciłem 20 pkt, to x = 301 - 20 = 281. Jeżeli gracz w rundzie rzuci więcej punktó niż mu pozostało, zobaczymy komunikat:
Runda X. BUST!
Liczba Twoich punktów: x
Komunikat BUST! pojawi się bezpośrednio po rzucie, w którym gracz przekroczył punktajcę. Oznacza to, że BUST! może być po 1, 2 lub 3 rzucie. Niezależnie od numeru rzutu, BUST! zawsze kończy bieżącą rundę.
Na zakończenie gry (w momencie, gdy użytkownik uzyska 0 pkt) program wypisze :
Gra zakończona w rundzie X
Dodtakowym wymaganiem jest, aby program zakończył się natychmiest po wprowadzeniu przez użytkownika liczby -1. Liczba ta zostanie wykorzystana przez testy automatyczne do zakończenia działania programu po wykonaniu testu.