Вывести делители чисел

Задача

Для каждого натурального числа в промежутке от m до n вывести все делители, кроме единицы и самого числа. m и n вводятся с клавиатуры.

Решение

В цикле перебирать числа от m до n и проверять делимость каждого на натуральные числа от 2 до m-1. Если число делится нацело на текущий делитель, то выводить делитель на экран. В конце каждой итерации цикла увеличивать m на единицу.

Программа на языке Паскаль: 

 

var
    m,n,i: word;
 
begin
    readln(m,n);
    while m <= n do begin
        write(m,': ');
        for i:=2 to m-1 do begin
            if m mod i = 0 then write(i,' ');
        end;
        writeln;
        m := m + 1;
    end;
end.

Пример работы программы:

100
121
100: 2 4 5 10 20 25 50 
101: 
102: 2 3 6 17 34 51 
103: 
104: 2 4 8 13 26 52 
105: 3 5 7 15 21 35 
106: 2 53 
107: 
108: 2 3 4 6 9 12 18 27 36 54 
109: 
110: 2 5 10 11 22 55 
111: 3 37 
112: 2 4 7 8 14 16 28 56 
113: 
114: 2 3 6 19 38 57 
115: 5 23 
116: 2 4 29 58 
117: 3 9 13 39 
118: 2 59 
119: 7 17 
120: 2 3 4 5 6 8 10 12 15 20 24 30 40 60 
121: 11 

Тема

Циклы

Уровень

Комбинированные задачи

Теги

Добавить комментарий