Число с максимальным произведением цифр - Turbo Pascal
Формулировка задачи:
Найти на заданном отрезке [N;M] число с максимальным произведением цифр. Паскаль
Решение задачи: «Число с максимальным произведением цифр»
textual
Листинг программы
max:=0; for i:=n to m do begin j:=i; p:=1; while j>0 do begin p:=p*(j mod 10); j:=j div 10; end; if p>max then begin max:=p; imax:=i;//число с макс. произв. цифр end; end;
Объяснение кода листинга программы
- Переменная
maxинициализируется значением 0. Эта переменная будет использоваться для хранения максимального произведения цифр числа. - Переменная
nинициализируется значениемm. Это значение будет использоваться в циклеforдля перебора всех возможных чисел отnдоm. - Переменная
mинициализируется значениемn. Это значение будет использоваться в циклеforдля перебора всех возможных чисел отnдоm. - Переменная
iинициализируется значениемm. Это значение будет использоваться в циклеforдля перебора всех возможных чисел отnдоm. - Переменная
jинициализируется значениемi. Это значение будет использоваться в циклеwhileдля вычисления произведения цифр числа. - Переменная
pинициализируется значением 1. Это значение будет использоваться в циклеwhileдля вычисления произведения цифр числа. - Выражение
j mod 10используется для получения последней цифры числаj. - Выражение
j div 10используется для получения десятичной части числаj. - Если произведение цифр числа
pбольше текущего максимального значенияmax, то значениеmaxобновляется. - Если произведение цифр числа
pравно текущему максимальному значениюmax, то значениеimaxобновляется на текущее значениеi. - Цикл
whileзавершается, когда значениеjравно 0. - Цикл
forзавершается, когда значениеiравноm. - Код завершается без использования вложенных списков.