///Algorytm wydawania reszty w podejściu zachłannym
///założenia: ///użyć jak najmniej monet ze zbioru 1 , 2, 5 zł ///wypisać nominały monet których należy użyć do wydania reszty
#include <iostream>
using namespace std;
int kz=20, cena=14, r=0, i, m=2; ///kz -kwota zapłacona np. banknot, cena -kwota do zapłaty, r -reszta do wydania int tm[]={1,2,5}; int main() { r=kz-cena; while(m>=0) { if(r>tm[m]) { cout<<tm[m]<<" "; r=r-tm[m];} else m--;} return 0; }
/// Polecenia do wykonania w domu:
/* 1. Powyższy program nie działa poprawnie dla podanych wartości. Sprawdź logikę działania tego programu i popraw go, dodając maksymalnie jeden znak 2. Rozszerz zbiór monet o następujące nominały [grosze]: 1, 2, 5, 10, 20, 50 Następnie sprawdź, czy program będzie działał poprawnie, gdy reszta do wydania wyniesie 5.78zł 3. Dodaj do programu zmienną za pomocą której policzy on ile monet użyto i wyświetli wartość tej zmiennej przed wypisaniem nominałów użytych monet. */