Определить, равны ли суммы первой и последней цифр чисел - Pascal ABC
Формулировка задачи:
заданы два целых числа. Определить используя функции и процедуры.
-равны ли суммы их первой и последней цифр.
-выстроить количество цифр <1> в каждом числе по возрастанию.
-попадает ли сумма цифр каждого числа в интервал(10,20).
-равны ли произведение чётных цифр каждого числа.
Pascal
Решение задачи: «Определить, равны ли суммы первой и последней цифр чисел»
textual
Листинг программы
function Zad1(const x, y: Integer): Boolean; function SumFirstAndLast(x: Integer): Byte; var Result: Byte; begin x := Abs(x); Result := x mod 10; while (x > 9) do x := x div 10; Inc(Result, x); SumFirstAndLast := Result; end; begin Zad1 := (SumFirstAndLast(x) = SumFirstAndLast(y)); end; function Zad3(const x, y: Integer): Boolean; function From10To20(x: Integer): Boolean; var temp: Byte; begin x := Abs(x); temp := 0; repeat Inc(temp, x mod 10); x := x div 10; until ((x = 0) And (temp > 20)); From10To20 := ((temp > 9) And (temp < 21)); end; begin Zad3 := (From10To20(x) And From10To20(y)); end; function Zad4(const x, y: Integer): Boolean; function MultEven(x: Integer): LongWord; var Result: LongWord; temp: Byte; begin Result := 1; repeat temp := x mod 10; x := x div 10; if (Not Odd(temp)) then Result := Result * temp; until (x = 0); MultEven := Result; end; begin Zad4 := (MultEven(x) = MultEven(y)); end;
Объяснение кода листинга программы
- Функция
Zad1
принимает два целых числаx
иy
в качестве параметров и возвращает логическое значениеTrue
, если сумма первой и последней цифры чисел равна, иFalse
в противном случае. В этой функции используется вспомогательная функцияSumFirstAndLast
, которая принимает целое числоx
и возвращает его первую цифру (x mod 10
) и сумму всех цифр (x div 10
), а затем увеличивает сумму первой цифры на единицу. - Функция
SumFirstAndLast
используется в функцииZad1
для вычисления суммы первой и последней цифры числаx
. Эта функция принимает целое числоx
и возвращает его первую цифру и сумму всех цифр. Для этого она делит число на 10, пока оно не станет однозначным, и затем увеличивает сумму первой цифры на единицу. - Функция
Zad3
принимает два целых числаx
иy
в качестве параметров и возвращает логическое значениеTrue
, если сумма цифр чисел от 10 до 20 равна, иFalse
в противном случае. Эта функция использует вспомогательную функциюFrom10To20
, которая принимает целое числоx
и возвращаетTrue
, если сумма цифр чисел от 10 до 20 больше или равна 10, иFalse
в противном случае. ФункцияFrom10To20
вычисляет сумму цифр чисел от 10 до 20, используя цикл повторения, который увеличивает сумму на единицу при каждом проходе. - Функция
Zad4
принимает два целых числаx
иy
в качестве параметров и возвращает логическое значениеTrue
, если произведение четных чисел равно, иFalse
в противном случае. Эта функция использует вспомогательную функциюMultEven
, которая принимает целые числаx
иy
и возвращает произведение четных чисел. ФункцияMultEven
вычисляет произведение четных чисел, используя цикл повторения, который умножает текущую цифру на предыдущую, пока не будет достигнуто основание числа.
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д