Жукова_Петрович1281
?>

Покупатель должен заплатить в кассу 5 руб. у него купюры по 1, 5, 10, 50, 100, 500, 1000, 5000 и 10000 руб. сколько купюр разного достоинства отдаст продавец, если он начинает платить с самых крупных купюр? (программа желательно в си, через for)

Информатика

Ответы

superniki87
Решение, что называется, "в лоб" (далеко, очень далеко, не самое лучшее):
var s,k1,k5,k10,k50,k100,k500,k1000,k10000:integer;
begin
write('s = '); readln(s);
k1:=0; k5:=0; k10:=0; k50:=0; 
k100:=0; k500:=0; k1000:=0; k10000:=0;
while s>=10000 do begin s:=s-10000; k10000:=k10000+1; end;
while s>=1000 do begin s:=s-1000; k1000:=k1000+1; end;
while s>=500 do begin s:=s-500; k500:=k500+1; end;
while s>=100 do begin s:=s-100; k100:=k100+1; end;
while s>=50 do begin s:=s-50; k50:=k50+1; end;
while s>=10 do begin s:=s-10; k10:=k10+1; end;
while s>=5 do begin s:=s-5; k5:=k5+1; end;
while s>=1 do begin s:=s-1; k1:=k1+1; end;
writeln('k10000=',k10000,' k1000=',k1000,' k500=',k500,' k100=',k100,' k50=',k50,' k10=',k10,' k5=',k5,' k1=',k1);
writeln(' Всего купюр = ',k1+k5+k10+k50+k100+k500+k1000+k10000);
end.

Пример:
s = 27879
k10000=2 k1000=7 k500=1 k100=3 k50=1 k10=2 k5=1 k1=4
 Всего купюр = 21
igraparkGP51
//PascalABC.NET 3.1 сборка 1219
procedure PrintMatrix(a: array[,] of integer);
begin
    for var i := a.GetLowerBound(0) to a.GetUpperBound(0) do
    begin
        writeln;
        for var j := a.GetLowerBound(1) to a.GetUpperBound(1) do
            write(a[i, j], ' ');
    end;
    writeln;
end;

begin
    var a := MatrixRandom(9, 9, 10, 99);
    PrintMatrix(a);
    var i := (a.GetLowerBound(0) + a.GetUpperBound(0)) div 2 + (a.GetLowerBound(0) + a.GetUpperBound(0)) mod 2;
    var j := (a.GetLowerBound(1) + a.GetUpperBound(1)) div 2 + (a.GetLowerBound(1) + a.GetUpperBound(1)) mod 2;
    writeln('A[', i, ', ', j, '] = ', a[i, j]);
end.
filternovo
Вывод на печать вещь довольно простая Ctrl+P и сразу идет отправка на печать на принтер по умолчанию
Но часто может выйти не то что хотелось бы, потому перед печатью надо настроить какой результат мы хотим видеть на листе. Самое обычное это отступы, альбомная или портретная, размер бумаги, двусторонняя печать или нет, сколько листов на листе
обычно у каждой программы из которой идет печать есть некоторые настройки перед печатью и еще отдельно есть свойства принтера. Если во всем этом покопаться то часто можно достигнуть желаемого результата

Если же речь идет о профессиональной подготовке к печати то используются программы типа Publisher, Аdobe Illustrator и тп

Ответить на вопрос

Поделитесь своими знаниями, ответьте на вопрос:

Покупатель должен заплатить в кассу 5 руб. у него купюры по 1, 5, 10, 50, 100, 500, 1000, 5000 и 10000 руб. сколько купюр разного достоинства отдаст продавец, если он начинает платить с самых крупных купюр? (программа желательно в си, через for)
Ваше имя (никнейм)*
Email*
Комментарий*