Задание 10 Параграф 3.3 ГДЗ Босова 8 класс (Информатика)
Пример входных данных
845
Пример выходных данных
Следует сдать:
банкнот по 500 руб. — 1 шт.
банкнот по 100 руб. — 3 шт.
банкнот по 50 руб. — 0 шт.
банкнот по 10 руб. — 4 шт.
Нужно последовательно определить, сколько банкнот каждого номинала войдёт в сумму сдачи. Сначала берём как можно больше банкнот по $$500$$ рублей, затем из остатка — по $$100$$, потом по $$50$$ и по $$10$$.
Для этого используем целочисленное деление и остаток от деления:
$$k500 = s \ div \ 500$$
$$k100 = (s \ mod \ 500) \ div \ 100$$
$$k50 = (s \ mod \ 100) \ div \ 50$$
$$k10 = (s \ mod \ 50) \ div \ 10$$
Так как в примере сумма $$845$$, то:
$$k500 = 845 \ div \ 500 = 1$$
$$k100 = (845 \ mod \ 500) \ div \ 100 = 345 \ div \ 100 = 3$$
$$k50 = (845 \ mod \ 100) \ div \ 50 = 45 \ div \ 50 = 0$$
$$k10 = (845 \ mod \ 50) \ div \ 10 = 45 \ div \ 10 = 4$$
program Ch;
var
k500, k100, k50, k10, s: integer;
begin
readln(s);
k500 := s div 500;
k100 := (s mod 500) div 100;
k50 := (s mod 100) div 50;
k10 := (s mod 50) div 10;
writeln(‘Следует сдать:’);
writeln(‘банкнот по 500 руб. — ‘, k500, ‘ шт.’);
writeln(‘банкнот по 100 руб. — ‘, k100, ‘ шт.’);
writeln(‘банкнот по 50 руб. — ‘, k50, ‘ шт.’);
writeln(‘банкнот по 10 руб. — ‘, k10, ‘ шт.’);
end.
Ответ
Для суммы $$845$$ рублей программа выведет: 1 банкноту по $$500$$ руб., 3 банкноты по $$100$$ руб., 0 банкнот по $$50$$ руб. и 4 банкноты по $$10$$ руб.