На заданном числовом промежутке найти пары чисел, произведение которых содержит цифры большего множителя - Free Pascal
Формулировка задачи:
Помогите с задачек
На заданном числовом промежутке требуется найти пары чисел, произведение которых содержит цифры большего множителя, "раздвинутые вклинившимися" нулями, например, 111*91=10101, 480*85=40800(задача Рачинского)
Решение задачи: «На заданном числовом промежутке найти пары чисел, произведение которых содержит цифры большего множителя»
textual
Листинг программы
- function zero(m:integer):longint;
- var n,k:longint;
- begin
- n:=m mod 10;
- m:=m div 10;
- k:=10;
- while m>0 do
- begin
- n:=(m mod 10)*10*k+n;
- m:=m div 10;
- k:=k*100;
- end;
- zero:=n
- end;
- var a,b,i,j,k:longint;
- c,d:longint;
- begin
- writeln('Введите диапазон чисел');
- readln(a,b);
- k:=0;
- for i:=a to b-1 do
- for j:=i+1 to b do
- begin
- c:=i*j;
- d:=zero(j);
- if c=d then
- begin
- k:=1;
- writeln(i,'*',j,'=',c);
- end;
- end;
- if k=0 then write('Таких пар чисел нет');
- readln
- end.
Объяснение кода листинга программы
Этот код на языке Free Pascal выполняет поиск пар чисел на заданном числовом промежутке, произведение которых содержит цифры большего множителя. Список действий в коде:
- Функция zero(m: integer) принимает целое число m и возвращает наибольший общий делитель (НОД) чисел m и 10.
- В цикле while происходит деление числа m на 10 и обновление переменных n и k.
- В каждой итерации цикла пока переменная m больше 0 происходит умножение чисел m и n, обновление переменных n и k, а затем деление числа m на 10.
- В конце функции zero(m: integer) возвращается значение переменной n.
- В цикле for происходит перебор чисел в заданном диапазоне.
- Для каждой пары чисел i и j выполняется проверка на равенство произведения этих чисел значению переменной zero(j).
- Если условие выполняется, то переменной k присваивается значение 1 и выводится сообщение с числом i, числом j и их произведением.
- После завершения циклов выводится сообщение о наличии или отсутствии пар чисел, удовлетворяющих условию.
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д