Вот задача. Выводит номер элемента массива и само значение.
<em>// PascalABC.NET 3.2, сборка 1437 от 03.05.2017</em>
<em>// Внимание! Если программа не работает, обновите версию!</em>
begin
var n:=ReadInteger('Количество строк/столбцов в матрице:');
var a:=MatrRandom(n,n,-99,99);
a.Println(4); Writeln(4*a.ColCount*'-');
var ijv:=a.ElementsWithIndexes.Select(x->(x[0],x[1],abs(x[2])))
.MaxBy(x->x[2]);
for var i:=ijv[0] to n-2 do a.SwapRows(i,i+1);
for var j:=ijv[1] to n-2 do a.SwapCols(j,j+1);
SetLength(a,n-1,n-1); a.Println(4)
end.
<u>Пример</u>
Количество строк/столбцов в матрице: 5
87 -5 -38 -9 57
31 66 57 -25 40
11 66 99 -79 91
12 95 93 27 -97
33 -94 14 19 39
--------------------
87 -5 -9 57
31 66 -25 40
12 95 27 -97
33 -94 19 39
Ответ:
Объяснение:
1) Без составных условий.
program abc;
var x,y,v:real;
begin
readln(x,y);
if (x>1) then
begin
if (y>1) then
v:=x+y
else
v:=x-y;
end
else begin
if (y>1) then
v:=-x+y
else
v:=-x-y;
end;
writeln(v);
end.
2) С составным.
program abc;
var x,y,v:real;
begin
readln(x,y);
if (x>1) and (y>1) then
v:=x+y;
if (x>1) and (y<=1) then
v:=x-y;
if (x<=1) and (y<=1) then
v:=-x-y;
if (x<=1) and (y>1) then
v:=-x+y;
writeln(v);
end.
Чтобы обойтись без калькулятора, будем пользоваться степенями двойки (все равно переводить потом в килобайты или мегабайты).
1. Определим количество символов на странице
40×64 = 4×10×2⁶ = 2²×10×2⁶ = 10×2⁸
2. Определим количество символов в статье
32×10×2⁸ = 2⁵×10×2⁸ = 10×2¹³
3. В КОИ-8 каждый символ кодируется 8 битами, т.е. 1 байтом.
Объем статьи будет равен 10×2¹³ байт.
4. Переведем в килобайты, зная что 1 Кбайт = 2¹⁰ байт.
10×2¹³/2¹⁰ = 10×2³ = 10×8 = 80 Кбайт