Получить цифры, составляющие сумму заданных чисел - PascalABC.NET

Узнай цену своей работы

Формулировка задачи:

Помогите пожалуйста решить данную задачу с оператором выбора case. Даны цифры двух десятичных целых чисел: трехзначного а3а2а1 и двухзначного b2b1, где а1 и b1 - число единиц; а2 и b2 - число десятков; а3 - число сотен. Получить цифры, составляющие сумму этих чисел (известно, что это число трехзначное). Число-уменьшаемое, число-вычитаемое и число-разность не определять.

Решение задачи: «Получить цифры, составляющие сумму заданных чисел»

textual
Листинг программы
var a3,a2,a1,b2,b1,c3,c2,c1,pr:byte;
begin
repeat
write('Число единиц 1 числа от 0 до 9 a1=');
readln(a1);
until a1 in [0..9];
repeat
write('Число десятков 1 числа от 0 до 9 a2=');
readln(a2);
until a2 in [0..9];
repeat
write('Число единиц 2 числа от 0 до 9 b1=');
readln(b1);
until b1 in [0..9];
repeat
write('Число десятков 2 числа от 1 до 9 b2=');
readln(b2);
until b2 in [1..9];
case a1+b1 of
0..9:begin
     c1:=a1+b1;
     pr:=0;
     end;
else
    begin
    c1:=(a1+b1)mod 10;
    pr:=(a1+b1)div 10;
    end;
end;
case pr+a2+b2 of
0..9:begin
     c2:=pr+a2+b2;
     pr:=0;
     end;
else
    begin
    c2:=(pr+a2+b2)mod 10;
    pr:=(pr+a2+b2)div 10;
    end;
end;
case pr of
1:begin
  repeat
  write('Число сотен 1 числа от 1 до 8 a3=');
  readln(a3);
  until a3 in [1..8];
 end
else
 begin
  repeat
  write('Число сотен 1 числа от 1 до 9 a3=');
  readln(a3);
  until a3 in [1..9];
 end;
end;
c3:=pr+a3;
writeln(' ',a3,a2,a1);
writeln('+');
writeln('  ',b2,b1);
writeln(' ---');
write(' ',c3,c2,c1);
end.

Объяснение кода листинга программы

  1. В первой части кода запрашиваются три числа от пользователя: a1, a2 и a3. Значения этих переменных ограничиваются диапазоном от 0 до 9.
  2. Во второй части кода запрашиваются три числа от пользователя: b1, b2 и b3. Значения этих переменных ограничиваются диапазоном от 0 до 9.
  3. В третьей части кода происходит проверка полученных значений и определяются значения переменных c1 и pr. Если сумма a1 и b1 находится в диапазоне от 0 до 9, то c1 присваивается их сумма, а pr сбрасывается в 0. В противном случае, c1 присваивается остаток от деления суммы a1 и b1 на 10, а pr присваивается целая часть от деления суммы a1 и b1 на 10.
  4. В четвертой части кода происходит проверка значения переменной pr и определяются значения переменных c2 и pr. Если pr находится в диапазоне от 0 до 9, то c2 присваивается их сумма, а pr сбрасывается в 0. В противном случае, c2 присваивается остаток от деления pr на 10, а pr присваивается целая часть от деления pr на 10.
  5. В пятой части кода происходит проверка значения переменной pr. Если pr равно 1, то пользователю предлагается ввести число от 1 до 8 для переменной a3. В противном случае, пользователю предлагается ввести число от 1 до 9 для переменной a3.
  6. Значение переменной pr дополняется значением переменной a3.
  7. Выводятся значения переменных a3, a2 и a1.
  8. Выводится символ + и значения переменных b2, b1.
  9. Выводится символ ---.
  10. Выводятся значения переменных c3, c2 и c1.

ИИ поможет Вам:


  • решить любую задачу по программированию
  • объяснить код
  • расставить комментарии в коде
  • и т.д
Попробуйте бесплатно

Оцени полезность:

7   голосов , оценка 4 из 5
Похожие ответы