Составьте функцию, которая будет проверять, является ли число симметричным - Pascal ABC

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

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

Помогите пж с такой задачкой, очень нужно к завтрашнему дню. Числа, запись которых состоит из двух одинаковых последовательностей цифр, называются симметричными. Например, 357 357 или 17 421 742 - симметричные числа. Составьте функцию, которая будет проверять, является ли число симметричным. Исходные данные - последовательность чисел, заканчивающаяся нулем. Используя эту функцию, выделить из этой последовательности симметричные числа. Спасибо

Решение задачи: «Составьте функцию, которая будет проверять, является ли число симметричным»

textual
Листинг программы
uses crt;
function simm(n:integer):boolean;
var k,m:integer;
begin
k:=trunc(ln(n)/ln(10))+1; //количество цифр в натуральном числе
m:=round(power(10,k div 2));//половина разряда числа
//если число разрядов четное и последовательность цифр в первой половине  = 2 половине
simm:=(k mod 2=0)and(n div m=n mod m)
end;
var n:integer;
begin
write('n=');
readln(n);
if simm(n)then write('Симметричное')
else write('Не симметричное')
end.

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

  1. Входные данные: число n (считается с клавиатуры).
  2. Выходные данные: булево значение true, если число n симметричное, иначе false.
  3. Используемая библиотека: crt (для ввода/вывода).
  4. Объявление функции: simm(n: integer): boolean.
  5. Локальные переменные:
    • k (количество цифр в числе n).
    • m (половина разряда числа n).
  6. Вычисление k и m:
    • k := trunc(ln(n) / ln(10)) + 1 (количество цифр в натуральном числе).
    • m := round(power(10, k div 2)) (половина разряда числа n).
  7. Проверка симметричности числа n:
    • (k mod 2 = 0) (количество цифр в числе n четное).
    • (n div m = n mod m) (последовательность цифр в первой половине числа равна 2 половине).
  8. Возвращаемое значение функции:
    • true, если условие в п.7 выполняется, иначе false.
  9. Ввод значения переменной n с клавиатуры.
  10. Вывод на экран результата проверки симметричности числа n.

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


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

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

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