<?php
$amount = 54500;
100 => 23,
500 => 5,
1000 => 0,
5000 => 200
);
echo "Сумма: $amount\n";
function giveMoney($bills, $amount){
if ($amount > 0 and $amount % 100 == 0) {
foreach ($bills as $nominal => $value) {
$countBanknote = floor($amount / $nominal); if($amount >= $nominal and $countBanknote <= $value) {
$value = $value - $countBanknote;
$amount = $amount % $nominal;
$return = "{$nominal}x{$countBanknote}";
$array[] = $return;
}if($value == 0 and $countBanknote != 0) {
}
if($amount >= $nominal and $countBanknote > $value and $value != 0) {
$countBanknote = $value;
$sum = $nominal * $countBanknote;
$amount = $amount % $sum;
$return = "{$nominal}x{$countBanknote}";
$array[] = $return;
}
}
echo "Выдача возможна, число купюр:\n$array\n";
}if($amount < 0) {
echo"Выдача невозможна: сумма меньша нуля.\n";
}if($amount % 100 != 0) {
echo"Выдача невозможна: Сумма не кратна 100.\n";
}
}
giveMoney($bills, $amount);
PD9waHAKIAplcnJvcl9yZXBvcnRpbmcoLTEpOwogCiRhbW91bnQgPSA1NDUwMDsKIAokYmlsbHMgPSBhcnJheSgKCTEwMCAgICA9PiAgICAyMywKCTUwMCAgICA9PiAgICA1LAoJMTAwMCAgID0+ICAgIDAsCgk1MDAwICAgPT4gICAgMjAwCik7CiRiaWxscyA9IGFycmF5X3JldmVyc2UoJGJpbGxzLCBUUlVFKTsKJGFycmF5ID0gYXJyYXkoKTsKZWNobyAi0KHRg9C80LzQsDogJGFtb3VudFxuIjsKZnVuY3Rpb24gIGdpdmVNb25leSgkYmlsbHMsICRhbW91bnQpewogICAgICAgIGlmICgkYW1vdW50ID4gMCBhbmQgJGFtb3VudCAlIDEwMCA9PSAwKSB7Cglmb3JlYWNoICgkYmlsbHMgYXMgJG5vbWluYWwgPT4gJHZhbHVlKSB7CgkJJGNvdW50QmFua25vdGUgPSBmbG9vcigkYW1vdW50IC8gJG5vbWluYWwpOwogICAgICAgICAgICAgICAgIGlmKCRhbW91bnQgPj0gJG5vbWluYWwgYW5kICRjb3VudEJhbmtub3RlIDw9ICR2YWx1ZSkgewoJICAgICAJJHZhbHVlID0gJHZhbHVlIC0gJGNvdW50QmFua25vdGU7CgkgICAgIAkkYW1vdW50ID0gJGFtb3VudCAlICRub21pbmFsOwoJICAgICAJJHJldHVybiA9ICJ7JG5vbWluYWx9eHskY291bnRCYW5rbm90ZX0iOwoJICAgICAJJGFycmF5W10gPSAkcmV0dXJuOwoJICAgICB9aWYoJHZhbHVlID09IDAgYW5kICRjb3VudEJhbmtub3RlICE9IDApIHsKCSAgICAgfQoJICAgICBpZigkYW1vdW50ID49ICRub21pbmFsIGFuZCAkY291bnRCYW5rbm90ZSA+ICR2YWx1ZSBhbmQgJHZhbHVlICE9IDApIHsKCSAgICAgCSRjb3VudEJhbmtub3RlID0gJHZhbHVlOwoJICAgICAJJHN1bSA9ICRub21pbmFsICogJGNvdW50QmFua25vdGU7CgkgICAgIAkkYW1vdW50ID0gJGFtb3VudCAlICRzdW07CgkgICAgIAkkcmV0dXJuID0gInskbm9taW5hbH14eyRjb3VudEJhbmtub3RlfSI7CgkgICAgIAkkYXJyYXlbXSA9ICRyZXR1cm47CgkgICAgIH0KCSAgICAgCiAgICAgICAgICAgIH0KICAgICAgICAkYXJyYXkgPSBpbXBsb2RlKCIgIiwgJGFycmF5KTsKICAgICAgICBlY2hvICLQktGL0LTQsNGH0LAg0LLQvtC30LzQvtC20L3QsCwg0YfQuNGB0LvQviDQutGD0L/RjtGAOlxuJGFycmF5XG4iOwogICAgICAgIH1pZigkYW1vdW50IDwgMCkgewoJZWNobyLQktGL0LTQsNGH0LAg0L3QtdCy0L7Qt9C80L7QttC90LA6INGB0YPQvNC80LAg0LzQtdC90YzRiNCwINC90YPQu9GPLlxuIjsKICAgICAgICB9aWYoJGFtb3VudCAlIDEwMCAhPSAwKSB7CgllY2hvItCS0YvQtNCw0YfQsCDQvdC10LLQvtC30LzQvtC20L3QsDog0KHRg9C80LzQsCDQvdC1INC60YDQsNGC0L3QsCAxMDAuXG4iOwogICB9Cn0KZ2l2ZU1vbmV5KCRiaWxscywgJGFtb3VudCk7