begin var a:=ReadInteger('Введите a от 1 до 30:'); if a<1 then begin Writeln('Неверно'); Exit end; var b:=ReadInteger('Введите b от '+a.ToString+' до 30:'); if (b<a) or (b>30) then begin Writeln('Неверно'); Exit end; var P:=ArrFill(30,0); for var i:=a-1 to b-1 do P[i]:=2; P.Println end.
Пример Введите a от 1 до 30: 2 Введите b от 2 до 30: 10 0 2 2 2 2 2 2 2 2 2 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
//PascalABC.Net 3.0, сборка 1064 type IntArray = array of integer;
var rows, cols: integer; M: array of IntArray;
begin Write('Количество строк и столбцов матрицы: '); Read(rows, cols); var Avg: array of double := new double[cols]; M := new IntArray[rows]; SetLength(Avg, cols); for var i := 0 to rows - 1 do begin M[i] := ArrRandom(cols, -25, 25); M[i].Println(#9) end; for var j := 0 to cols - 1 do Avg[j] := Range(0, rows - 1).Select(x -> M[x, j]).Average; Writeln('Наименьшее среднее по столбцам равно ', Avg.Min) end.
// Внимание! Если программа не работает, обновите версию!
1. Решение без проверки вводимых данных
begin
var a,b:integer;
Read(a,b);
var P:=ArrFill(30,0);
for var i:=a-1 to b-1 do P[i]:=2;
P.Println
end.
Пример
2 10
0 2 2 2 2 2 2 2 2 2 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
2. Решение с контролем ввода
begin
var a:=ReadInteger('Введите a от 1 до 30:');
if a<1 then begin Writeln('Неверно'); Exit end;
var b:=ReadInteger('Введите b от '+a.ToString+' до 30:');
if (b<a) or (b>30) then begin Writeln('Неверно'); Exit end;
var P:=ArrFill(30,0);
for var i:=a-1 to b-1 do P[i]:=2;
P.Println
end.
Пример
Введите a от 1 до 30: 2
Введите b от 2 до 30: 10
0 2 2 2 2 2 2 2 2 2 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
type
IntArray = array of integer;
var
rows, cols: integer;
M: array of IntArray;
begin
Write('Количество строк и столбцов матрицы: '); Read(rows, cols);
var Avg: array of double := new double[cols];
M := new IntArray[rows];
SetLength(Avg, cols);
for var i := 0 to rows - 1 do
begin
M[i] := ArrRandom(cols, -25, 25);
M[i].Println(#9)
end;
for var j := 0 to cols - 1 do
Avg[j] := Range(0, rows - 1).Select(x -> M[x, j]).Average;
Writeln('Наименьшее среднее по столбцам равно ', Avg.Min)
end.
Тестовое решение:
Количество строк и столбцов матрицы: 5 8
-22 -8 12 7 3 -18 8 22
2 -16 17 -13 -10 0 -19 2
20 -21 -6 13 2 -20 25 24
-7 -3 -2 -10 -2 8 18 23
4 -21 -8 8 23 -12 -13 -5
Наименьшее среднее по столбцам равно -13.8