function sov(n:integer):boolean; var i,s:integer; begin s:=0; for i:=1 to n div 2 do if n mod i = 0 then s:=s+i; sov:=(s=n) end;
var a:array[1..nn] of integer; i,n,k:integer; begin Write('Введите количество элементов в массиве (1-100): '); Read(n); Randomize; Writeln('*** Сформированный массив ***'); for i:=1 to n do begin a[i]:=Random(1000)+1; Write(a[i],' ') end; Writeln; Writeln('*** Найденные совершенные числа ***'); k:=0; for i:=1 to n do if sov(a[i]) then begin Write(a[i],' '); Inc(k) end; if k=0 then Writeln('... к сожалению, не нашли ни одного') end.
VBA Excel 2003 Function Sov(n As Integer) As Boolean Dim i As Integer, s As Integer s = 0 For i = 1 To n / 2 If n Mod i = 0 Then s = s + i Next i Sov = (s = n) End Function
Sub main() Dim n As Integer, i As Integer, k As Integer Cells.Clear n = Val(InputBox("Введите количество элементов в массиве: ")) ReDim a(1 To n) As Integer Randomize Timer Cells(1, 1).Value = "*** Сформированный массив ***" For i = 1 To n a(i) = Int(1000 * Rnd) + 1 Cells(i + 1, 1).Value = a(i) Next i k = 0 Cells(1, 5).Value = "*** Найденные совершенные числа ***" For i = 1 To n If Sov(a(i)) Then Cells(k + 2, 5) = a(i) k = k + 1 End If Next i If k = 0 Then Cells(1, 5).Value = "" MsgBox "Совершенных чисел не найдено" End If End Sub
Program z1; Var a: array [1..100,1..100] of integer; i,j,n,m,min,t:integer;Begin write('Введите кол-во столбцов - '); readln(n); write('Введите кол-во строк - '); readln(m); randomize; for j:=1 to m do begin for i:=1 to n do begin a[i][j]:=random(9)-0; write (a[i][j],' '); end; writeln; end; min:=a[1][4]; t:=1; for i:=2 to n do begin if (a[i][4]<min) then begin min:=a[i][4]; t:=i; end; end; writeln('Минимальный элемент - ',min); writeln('Столбец - ',t);End.
Поэтому точного ответа нет.
Могу дать только понравившуюся цифру.
Мне понравилась 10, но там ее нету, но поэтому 7.