Задано число n. требуется найти число от 1 до n, включительно, которое имеет максимальное число положительных целых делителей. например, если n = 20 то искомое число 12, у него делители 1 2 3 4 6 12.
// PascalABC.NET 3.1, сборка 1218 от 12.04.2016 begin var m,n:integer; Write('Количество строк и столбцов матрицы: '); Read(n,m); var a:=MatrixRandom(n,m,10,99); for var i:=0 to n-1 do begin for var j:=0 to m-1 do Print(a[i,j]); Writeln end; var p:=ReadInteger('Введите число Р:'); var b:array of integer; SetLength(b,4*m); var k:=0; for var i:=n-p to n-1 do for var j:=0 to m-1 do if a[i,j] mod 4=0 then begin b[k]:=a[i,j]; Inc(k) end; SetLength(b,k); b.Print end.
//PascalABC.NET (версия 3.1, сборка 1210 от 29.03.2016) const m = 10;
var t: array[1..m] of integer; i, n, nm, sm: integer;
begin //Заполняем массив сл.числами и подсчитываем //количество элементов и среднее арифметическое //согласно условию задачи for i := 1 to m do begin t[i] := random(-20, 20);write(t[i]:4); if (i > 1) and (i <= m) then if t[i] > t[i - 1] then n := n + 1 else if t[i] < t[i - 1] then begin sm := sm + t[i];nm := nm + 1; end; end; writeln; writeln('число элементов больших предыдущего = ', n); writeln('ср. арифметическое элементов меньших предыдущего = ', sm / nm);
program Delitel;
var
n, i, j, c, d: Integer;
a: array of Integer;
begin
Write ('Введите N: ');
ReadLn (n);
SetLength (a, n + 1);
for i := 1 to n do begin
c := 0;
for j := 1 to i do begin
if i mod j = 0 then
Inc (c);
end;
a [i] := c;
end;
c := 1;
for i := 1 to n do begin
if a [i] > a [c] then
c := i;
end;
WriteLn ('Число ', c, ' имеет ', a [c], ' делителей.');
ReadLn;
end.