// PascalABC.NET 3.2, сборка 1399 от 08.03.2017 // Внимание! Если программа не работает, обновите версию!
procedure Cheburek(s:string); begin var n:=ReadInteger('Количество строк в матрице:'); var m:=ReadInteger('Количество столбцов в массиве:'); Writeln('*** ',s,' матрица [',n,',',m,'] ***'); var a:=MatrRandom(n,m,-99,99); a.Println(4); Writeln(4*a.ColCount*'-'); var s1:='сортированный вектор ср.значений нечетных столбцов'; Writeln(s1); a.Cols.Select(x->x.Average).Where((x,i)->i.IsEven).Sorted.Println; Writeln(s1.Length*'-'); end;
begin Cheburek('первая'); Cheburek('вторая'); end.
Пример Количество строк в матрице: 4 Количество столбцов в массиве: 8 *** первая матрица [4,8] *** 98 -64 -30 84 -6 11 4 7 -45 23 55 47 67 87 70 -64 40 20 91 -27 -12 42 -49 10 -59 -79 5 -77 -59 -44 -4 -10
// Внимание! Если программа не работает, обновите версию!
procedure Cheburek(s:string);
begin
var n:=ReadInteger('Количество строк в матрице:');
var m:=ReadInteger('Количество столбцов в массиве:');
Writeln('*** ',s,' матрица [',n,',',m,'] ***');
var a:=MatrRandom(n,m,-99,99);
a.Println(4); Writeln(4*a.ColCount*'-');
var s1:='сортированный вектор ср.значений нечетных столбцов';
Writeln(s1);
a.Cols.Select(x->x.Average).Where((x,i)->i.IsEven).Sorted.Println;
Writeln(s1.Length*'-');
end;
begin
Cheburek('первая');
Cheburek('вторая');
end.
Пример
Количество строк в матрице: 4
Количество столбцов в массиве: 8
*** первая матрица [4,8] ***
98 -64 -30 84 -6 11 4 7
-45 23 55 47 67 87 70 -64
40 20 91 -27 -12 42 -49 10
-59 -79 5 -77 -59 -44 -4 -10
сортированный вектор ср.значений нечетных столбцов
-2.5 5.25 8.5 30.25
Количество строк в матрице: 6
Количество столбцов в массиве: 11
*** вторая матрица [6,11] ***
-98 -40 -42 81 39 28 -3 -24 -33 79 13
22 26 -79 90 93 46 94 83 -1 -13 -18
-21 -44 85 60 43 -26 -94 -19 -34 99 -72
-35 46 8 30 88 -4 -87 -76 15 -94 9
-70 29 83 -79 -69 12 -24 -53 -27 96 -97
19 80 -98 96 79 84 -76 -29 85 14 14
сортированный вектор ср.значений нечетных столбцов
-31.6666666666667 -30.5 -25.1666666666667 -7.16666666666667 0.833333333333333 45.5
var
s: string[6];
n: integer;
begin
s := 'отлично';
n := length(s);
writeln(length('отлично'));
writeln(n);
end.
Изначально выставлен тип string[6], значит если присвоить строку больше, то ее обрежет по 6 символов, вот и весь прикол
ответ 6
2) рисунок
3)var
s, s1: string;
n: integer;
begin
s := 'информатика';
s1 := copy(s, 3, 5);
n := pos(s, s1);
writeln('s=', s);
writeln('s1=', s1);
writeln('n=', n);
end.
Вывод
s=информатика
s1=форма
n=0
Все верно, в s1 не содержится s, а наоборот