Dysponujesz nieograniczoną liczbą monet o nominałach 5, 2 i 1 i masz wydać resztę przy użyciu minimalnej ich liczby. Zdefiniuj funkcję trzy(int kwota), której wynikiem będzie minimalna liczba monet potrzebnych do wydania kwoty podanej jako parametr. Napisz to w c++ oraz komentarze i narysuj schemat blokowy za pomocą figur związany z tym.

Odpowiedź :

Schemant sobie narysuj....

Komentarz do programu:

Do podprogamu wysyłana jest kwota, następnie jest ona dzielona bez reszty dzieki temu wiemy ile razy dana moneta mieści się w kwocie.

Np. 13/5 = 2.

Dalej program dodaje do liczby monet 2, czyli monety += a/5, następnie zmiejsza kwotę którą musimy wydać w tym przypadku 13 zł - 10 zł = 3zł

Teraz wchodzimy w kolejny if... na tej samej zasadzie dzielimy liczę przez 2 czego wynikiem jest 1, i od kwoty którą musimy wydać odejmujemy 2 zł, a do liczby monent dodajemy 1.

To samo robi ostatni if tylko dla kwoty 1 zł.

Następnie podprogram zwraca liczbę monet do programu głównego który wypisuje ich ilość na ekranie.

Zobacz obrazek QbaaaPL