Program divisors;//вообще ничего не делает(аля название программы) var num,divisor,i,sum:longint;//описываем переменные типа longintbegin//начало программы write('Vvedite chislo:');//выводим текст readln(num);//считываем число write('Vvedite delitel:');//выводим текст read(divisor);//считываем заданное число(будем использовать при поиске делителей больше заданного) sum:=0;//зануляем переменную(изначально равна нулю, но на всякий случай ;) привет от с++) for i:=1 to num do //цикл от 1 до числа(можно оптимизировать идя до корня из num) begin//начало цикла if num mod i = 0 then//если на очередном шаге остаток от деления числа на i равен нулю begin//начало условия write(i,' ');//выводим делитель sum:=sum+i;//суммируем end;//конец условия end;//конец цикла writeln();//переходим на следующую строку writeln(sum);//выводим сумму for i:=1 to num do//аналогично выше begin if (num mod i = 0) and (i mod 2 = 0) then // если число делитель и делится на 2 begin write(i,' '); end; end; writeln(); for i:=1 to num do begin if (num mod i = 0) and (i mod 2 = 1) then // не делится на 2 begin write(i,' '); end; end; writeln(); for i:=1 to num do begin if (num mod i = 0) and (i>divisor) then // больше заданного числа begin write(i,' '); end; end;end.//конец программы
// PascalABC.NET 3.2, сборка 1370 от 24.12.2016 // Внимание! Если программа не работает, обновите версию!
function MyNum(a:array of integer;lim:integer):=a.Where(x->x<lim).Count;
begin var p:=ArrRandom(ReadInteger('n='),-99,99); p.Println; var k:=ReadInteger('Введите границу отсечения элементов:'); Writeln('Количество элементов, меньших ',k,', равно ',MyNum(p,k)) end.
Пример n= 17 -50 -52 -98 1 99 27 -44 70 -65 -22 -64 48 91 3 -69 -69 52 Введите границу отсечения элементов: 23 Количество элементов, меньших 23, равно 11
var num,divisor,i,sum:longint;//описываем переменные типа longintbegin//начало программы write('Vvedite chislo:');//выводим текст readln(num);//считываем число write('Vvedite delitel:');//выводим текст read(divisor);//считываем заданное число(будем использовать при поиске делителей больше заданного) sum:=0;//зануляем переменную(изначально равна нулю, но на всякий случай ;) привет от с++) for i:=1 to num do //цикл от 1 до числа(можно оптимизировать идя до корня из num) begin//начало цикла if num mod i = 0 then//если на очередном шаге остаток от деления числа на i равен нулю begin//начало условия write(i,' ');//выводим делитель sum:=sum+i;//суммируем end;//конец условия end;//конец цикла writeln();//переходим на следующую строку writeln(sum);//выводим сумму for i:=1 to num do//аналогично выше begin if (num mod i = 0) and (i mod 2 = 0) then // если число делитель и делится на 2 begin write(i,' '); end; end; writeln(); for i:=1 to num do begin if (num mod i = 0) and (i mod 2 = 1) then // не делится на 2 begin write(i,' '); end; end; writeln(); for i:=1 to num do begin if (num mod i = 0) and (i>divisor) then // больше заданного числа begin write(i,' '); end; end;end.//конец программы
// Внимание! Если программа не работает, обновите версию!
function MyNum(a:array of integer;lim:integer):=a.Where(x->x<lim).Count;
begin
var p:=ArrRandom(ReadInteger('n='),-99,99); p.Println;
var k:=ReadInteger('Введите границу отсечения элементов:');
Writeln('Количество элементов, меньших ',k,', равно ',MyNum(p,k))
end.
Пример
n= 17
-50 -52 -98 1 99 27 -44 70 -65 -22 -64 48 91 3 -69 -69 52
Введите границу отсечения элементов: 23
Количество элементов, меньших 23, равно 11