Задача банкомат Написать программу: На вход подаётся число s. Выразить данную сумму денег минимальным количеством банкнот по 500, 100, 10, 5, 2,1.
Answers & Comments
ilka1998
Program abc; var a:array[1..6] of integer; var i,s: integer; begin i:=0;a[1]:=500;a[2]:=100;a[3]:=10;a[4]:=5;a[5]:=2;a[6]:=1; writeln('Введите целое число,сумму денег:'); readln(s); while s<>0 do begin if s>=a[1] then begin s:=s-a[1]; i:=i+1; end; if (s>=a[2]) and (s<a[1]) then begin s:=s-a[2]; i:=i+1; end; if (s>=a[3]) and (s<a[2]) then begin s:=s-a[3]; i:=i+1; end; if (s>=a[4]) and (s<a[3]) then begin s:=s-a[4]; i:=i+1; end; if (s>=a[5]) and (s<a[4]) then begin s:=s-a[5]; i:=i+1; end; if (s>=a[6]) and (s<a[5]) then begin s:=s-a[6]; i:=i+1; end; end; Writeln('Наименьшее число купюр =',i); end.
Answers & Comments
var a:array[1..6] of integer;
var i,s: integer;
begin
i:=0;a[1]:=500;a[2]:=100;a[3]:=10;a[4]:=5;a[5]:=2;a[6]:=1;
writeln('Введите целое число,сумму денег:');
readln(s);
while s<>0 do
begin
if s>=a[1] then begin
s:=s-a[1]; i:=i+1; end;
if (s>=a[2]) and (s<a[1]) then begin s:=s-a[2]; i:=i+1; end;
if (s>=a[3]) and (s<a[2]) then begin s:=s-a[3]; i:=i+1; end;
if (s>=a[4]) and (s<a[3]) then begin s:=s-a[4]; i:=i+1; end;
if (s>=a[5]) and (s<a[4]) then begin s:=s-a[5]; i:=i+1; end;
if (s>=a[6]) and (s<a[5]) then begin s:=s-a[6]; i:=i+1; end;
end;
Writeln('Наименьшее число купюр =',i);
end.