На заданном числовом промежутке найти пары чисел, произведение которых содержит цифры большего множителя - Free Pascal

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

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

Помогите с задачек На заданном числовом промежутке требуется найти пары чисел, произведение которых содержит цифры большего множителя, "раздвинутые вклинившимися" нулями, например, 111*91=10101, 480*85=40800(задача Рачинского)

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

textual
Листинг программы
  1. function zero(m:integer):longint;
  2. var n,k:longint;
  3. begin
  4. n:=m mod 10;
  5. m:=m div 10;
  6. k:=10;
  7. while m>0 do
  8.  begin
  9.   n:=(m mod 10)*10*k+n;
  10.   m:=m div 10;
  11.   k:=k*100;
  12.  end;
  13. zero:=n
  14. end;
  15.  
  16. var a,b,i,j,k:longint;
  17.     c,d:longint;
  18. begin
  19. writeln('Введите диапазон чисел');
  20. readln(a,b);
  21. k:=0;
  22. for i:=a to b-1 do
  23. for j:=i+1 to b do
  24.  begin
  25.   c:=i*j;
  26.   d:=zero(j);
  27.   if c=d then
  28.    begin
  29.     k:=1;
  30.     writeln(i,'*',j,'=',c);
  31.    end;
  32.  end;
  33. if k=0 then write('Таких пар чисел нет');
  34. readln
  35. end.

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

Этот код на языке Free Pascal выполняет поиск пар чисел на заданном числовом промежутке, произведение которых содержит цифры большего множителя. Список действий в коде:

  1. Функция zero(m: integer) принимает целое число m и возвращает наибольший общий делитель (НОД) чисел m и 10.
  2. В цикле while происходит деление числа m на 10 и обновление переменных n и k.
  3. В каждой итерации цикла пока переменная m больше 0 происходит умножение чисел m и n, обновление переменных n и k, а затем деление числа m на 10.
  4. В конце функции zero(m: integer) возвращается значение переменной n.
  5. В цикле for происходит перебор чисел в заданном диапазоне.
  6. Для каждой пары чисел i и j выполняется проверка на равенство произведения этих чисел значению переменной zero(j).
  7. Если условие выполняется, то переменной k присваивается значение 1 и выводится сообщение с числом i, числом j и их произведением.
  8. После завершения циклов выводится сообщение о наличии или отсутствии пар чисел, удовлетворяющих условию.

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


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

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

14   голосов , оценка 4.214 из 5

Нужна аналогичная работа?

Оформи быстрый заказ и узнай стоимость

Бесплатно
Оформите заказ и авторы начнут откликаться уже через 10 минут
Похожие ответы