Определить, равны ли суммы первой и последней цифр чисел - 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
вычисляет произведение четных чисел, используя цикл повторения, который умножает текущую цифру на предыдущую, пока не будет достигнуто основание числа.
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д