Перевод кода из Delphi в PascalABC.net
Формулировка задачи:
Кто может перевести этот код? Заранее спасибо
Решение задачи: «Перевод кода из Delphi в PascalABC.net»
textual
Листинг программы
const many: array [1 .. 6] of Integer = (5000, 1000, 500, 100, 50, 10); // наименование купюр var in_kol: array [1 .. 6] of Integer; // количество заданных купюр out_kol: array [1 .. 6] of Integer;// количество потраченных купюр sum, tmp: Integer; s: string; begin // Очищаем массивы for var i:=1 to 6 do begin in_kol[i]:=0; out_kol[i]:=0; end; // Сумма для выдачи write('Введите сумму для выдачи sum='); readln(sum); // Ввод количества купюр в порядке их наименования for var i := 1 to 6 do begin write('Купюр достоинством ',many[i],'='); readln(in_kol[i]); end; tmp := 0; // for var i := 1 to 6 do begin // Если таких купюр нет или Купюра больше суммы - пропускаем if (many[i] > sum) or (in_kol[i] <= 0) then continue; tmp := sum div many[i]; // Проверка на количество купюр и их выдача if tmp <= in_kol[i] then out_kol[i] := tmp else out_kol[i] := in_kol[i]; // Устанавливаем новое значения заданных купюр dec(in_kol[i], out_kol[i]); // Уменьшаем сумму на число выданных купюр dec(sum, out_kol[i] * many[i]); // Еслии раньше времени цикла закончили выдачу -выход if sum = 0 then break; end; // Справка s := ' Выдано: '#13#10; for var i := 1 to 6 do if out_kol[i] <> 0 then s := s + 'Купюры по ' + inttostr(many[i]) + ' в количестве ' + inttostr(out_kol[i]) + ' шт.' + #13#10; if sum <> 0 then writeln('Не возможно выдать заданную сумму. Только так '+ #13#10 + s) else writeln(s); end.
Объяснение кода листинга программы
- Переводим код из Delphi в PascalABC.Net
- Задаем массив купюр и их количество в порядке убывания номинала
- Вводим сумму для выдачи
- Вводим количество купюр в порядке их номинала
- Проверяем возможность выдачи купюры (если купюра больше суммы или количество купюр меньше нуля, пропускаем)
- Вычисляем количество купюр, которые можно выдать
- Уменьшаем количество заданных купюр и сумму на количество выданных купюр
- Проверяем, можно ли выдать заданную сумму
- Выводим информацию о выданных купюрах
- Если сумма не равна нулю, выводим сообщение о невозможности выдать заданную сумму
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д