Задача 24 Урок 15
Primary tabs
Пользователь вводит целое число - сумму в некоторой валюте, требуется выдать эту сумму купюрами наибольшего достоинства.
Напишите программу, которая в качестве результата скажет как именно надо разменять указанную сумму купюрами наибольшего достоинства (укажет количество для купюры каждого типа)
type arr= array [1..5] of integer;
var b,z:arr; i,n:integer;
function schet(x:integer; a:arr; var y:arr):boolean;
var i:integer;
begin
if x mod 50=0 then
result:=true
else
result:=false;
for i:=1 to 5 do
if (x div a[i]>0)then
begin
y[i]:=x div a[i];
x:=x-y[i]*a[i];
if x mod a[i]=0 then
break;
end;
end;
begin
b[1]:=5000;
b[2]:=1000;
b[3]:=500;
b[4]:=100;
b[5]:=50;
writeln('summa:');
readln(n);
if not schet(n,b,z) then
writeln('net')
else
for i:=1 to 5 do
begin
if z[i]>0 then
write(z[i],' po ',b[i],' ');
end;
readln();
end. - Log in to post comments
- 362 reads