Напишите программу pascal abc складывающую многозначное число с однозначным в десятичной системе счисления:А) При помощи цикла с постусловием.Б) При помощи цикла с предусловием.В) При помощи цикла «Повтори N раз».Г) Без цикла. (при помощи возврата на метку)Числа:1)9111019+7, 2)9999999998+5, 3)7000000008+2, 4)10063+8.

13 Сен 2019 в 19:42
271 +1
0
Ответы
1

Program ABC;

Var
firstNum, secondNum, result, remainder: integer;

Begin
// При помощи цикла с постусловием
writeln('A) При помощи цикла с постусловием:');
firstNum := 9111019;
secondNum := 7;
result := 0;
remainder := 0;

repeat
result := (firstNum mod 10) + secondNum + remainder;
remainder := result div 10;

firstNum := firstNum div 10;

until firstNum = 0;

writeln('Результат: ', result);

// При помощи цикла с предусловием
writeln('B) При помощи цикла с предусловием:');
firstNum := 9999999998;
secondNum := 5;
result := 0;
remainder := 0;

while firstNum > 0 do
begin
result := (firstNum mod 10) + secondNum + remainder;
remainder := result div 10;

firstNum := firstNum div 10;

end;

writeln('Результат: ', result);

// При помощи цикла «Повтори N раз»
writeln('C) При помощи цикла «Повтори N раз»:');
firstNum := 7000000008;
secondNum := 2;
result := 0;
remainder := 0;

for firstNum := firstNum downto 0 do
begin
result := (firstNum mod 10) + secondNum + remainder;
remainder := result div 10;

firstNum := firstNum div 10;

end;

writeln('Результат: ', result);

// Без цикла (при помощи возврата на метку)
writeln('D) Без цикла (при помощи возврата на метку):');
firstNum := 10063;
secondNum := 8;
result := (firstNum mod 10) + secondNum;
remainder := result div 10;

firstNum := firstNum div 10;
result := (firstNum mod 10) + remainder;

writeln('Результат: ', result);

End.

20 Апр 2024 в 01:14
Не можешь разобраться в этой теме?
Обратись за помощью к экспертам
Гарантированные бесплатные доработки в течение 1 года
Быстрое выполнение от 2 часов
Проверка работы на плагиат
Поможем написать учебную работу
Прямой эфир