Ocena użytkownikóww: ***** / 7
Nadesłany przez Tomasz Lubiński, 18 czerwca 2011 14:00
Kod przedstawiony poniżej przedstawia główną część rozwiązania problemu.
Pobierz pełne rozwiązanie.Jeżeli nie odpowiada Ci sposób formatowania kodu przez autora skorzystaj z pretty printer'a i dostosuj go automatycznie do siebie.
reszta.html:
...
function wydaj()
{
// przypisanie obiektu pola tekstowego do zmiennej
var pole_liczba = document.forms['reszta'].liczba;
// pobranie liczby
var R = pole_liczba.value;
//tablica dostepnych nominalow
var N = [200, 100, 50, 20, 10, 5, 2, 1, 0.50, 0.20, 0.10, 0.05, 0.02, 0.01];
if (!isNaN(R)){
var wynik = "Reszta to:\r\n";
var i = 0;
//dopoki nie wydano calej reszty
while (R>0 && i<=N.length) {
//sprawdz czy mozna wydac danym nominalem
if (R >= N[i]) {
P=Math.floor(R/N[i]); //ile razy wydac dany nominal
R=Math.round(100*(R-(N[i]*P)))/100; //zmniejsz reszte o wydany nominal
wynik += N[i] + " PLN x " + P + "\r\n"; //wypisz wynik
}
//rozpatrz kolejny nominal
i++;
}
alert(wynik);
}
else {
alert('Podano nieprawidlowa wartosc!');
pole_liczba.focus();
}
return false;
}
...