Записать ** языке «Паскаль» программу, реализующую алгоритм работы кассира, выдающего...

0 голосов
215 просмотров
Записать на языке «Паскаль»
программу, реализующую алгоритм работы кассира, выдающего покупателю сдачу
сумма «S
» наименьшим кол-вом банкнот по 1000 , 500, 100, 50, 10 рублей.

Срочно, помогите!

Информатика | 215 просмотров
0

а если сдача 5 руб 20 коп?

0

или хотя бы 25 руб?

0

Попробуйте получить её в банкомате. Так и тут.

0

)))

Дан 1 ответ
0 голосов
Правильный ответ

Var
  s: longint;
  n: array[1..5] of integer;
  c, i: integer;

begin
  n[1] := 1000;
  n[2] := 500;
  n[3] := 100;
  n[4] := 50;
  n[5] := 10;
  Write('Введите сумму, кратную 10: ');
  Readln(s);
  if (s mod 10) <> 0 then s := 10 * (s div 10);
  i := 1;
  while s > 0 do
  begin
    c := s div n[i];
    if c > 0 then begin Write(n[i], 'x', c, ' '); s := s mod n[i] end;
    i := i + 1
  end
end.

Тестовое решение:

Введите сумму, кратную 10: 52380
1000x52 100x3 50x1 10x3


(142k баллов)