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

Задача: 

Для каждого натурального числа в промежутке от 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 

Комментарии

Нужна помощь

Составить программу для проверки утверждения: “Результатами вычислений по формуле x2+ x +17 при 0 ≤ x ≤ 15 являются простые числа. Все результаты вывести на экран.

var x, i: byte; y:

var
    x, i: byte;
    y: word;
    f,h: boolean;
begin
    h := true;
    for x:=0 to 15 do begin
        y := x*x + x + 17;
        f:=true;
        for i:=2 to y div 2 do
            if y mod i = 0 then
                f:=false;
        if f = true then 
            writeln('x=',x,'; y=',y,'- простое число')
        else begin
            writeln('x=',x,'; y=',y,'- сложное число');
            h := false;
        end;
    end;
    if h = true then 
        writeln('Утверждение верно. Все числа простые')
    else
        writeln('Утверждение не верно. Есть сложные');
end.

Помогите кто сможет, заранее спасибо

Заданы два целых числа A и B, написать программу, которая вычисляет сумму целых чисел между A и B.

Первая строка содержит целое T, которое представляет количество тестов. В следующих T строках - одна строка на тест, содержится два целых A и B.

Вывод
Ваша программа должна печатать t целых, по одному в строке. i-целое есть ответ, который
Ваша программа вычисляет для случая i-го теста.

Только первая часть: var

Только первая часть:

var
    a,b,sum,i: integer;
 
begin
    sum := 0;
    readln(a, b);
    for i:=a to b do 
        sum := sum + i;
 
    writeln(sum);
end.