Получить цифры, составляющие сумму заданных чисел - 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.
Объяснение кода листинга программы
- В первой части кода запрашиваются три числа от пользователя: a1, a2 и a3. Значения этих переменных ограничиваются диапазоном от 0 до 9.
- Во второй части кода запрашиваются три числа от пользователя: b1, b2 и b3. Значения этих переменных ограничиваются диапазоном от 0 до 9.
- В третьей части кода происходит проверка полученных значений и определяются значения переменных c1 и pr. Если сумма a1 и b1 находится в диапазоне от 0 до 9, то c1 присваивается их сумма, а pr сбрасывается в 0. В противном случае, c1 присваивается остаток от деления суммы a1 и b1 на 10, а pr присваивается целая часть от деления суммы a1 и b1 на 10.
- В четвертой части кода происходит проверка значения переменной pr и определяются значения переменных c2 и pr. Если pr находится в диапазоне от 0 до 9, то c2 присваивается их сумма, а pr сбрасывается в 0. В противном случае, c2 присваивается остаток от деления pr на 10, а pr присваивается целая часть от деления pr на 10.
- В пятой части кода происходит проверка значения переменной pr. Если pr равно 1, то пользователю предлагается ввести число от 1 до 8 для переменной a3. В противном случае, пользователю предлагается ввести число от 1 до 9 для переменной a3.
- Значение переменной pr дополняется значением переменной a3.
- Выводятся значения переменных a3, a2 и a1.
- Выводится символ
+
и значения переменных b2, b1. - Выводится символ
---
. - Выводятся значения переменных c3, c2 и c1.
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д