<em>// PascalABC.NET 3.2, сборка 1383 от 09.02.2017</em>
<em>// Внимание! Если программа не работает, обновите версию!</em>
begin
var n:=ReadInteger('Количество строк в массиве:');
var m:=ReadInteger('Количество столбцов в массиве:');
Writeln('*** Исходный массив [',n,',',m,'] ***');
var a:=MatrRandom(n,m,0,1);
a.Println(4); Writeln(4*a.ColCount*'-');
Writeln(a.Rows.Any(x->x.All(x->x=0))?'Да':'Нет')
end.
<u>Примеры</u>
Количество строк в массиве: 10
Количество столбцов в массиве: 4
*** Исходный массив [10,4] ***
0 1 1 1
1 0 0 1
1 0 0 1
1 0 1 1
1 1 0 1
1 0 1 1
1 0 1 0
0 0 0 0
1 1 1 1
1 0 0 1
----------------
Да
Количество строк в массиве: 8
Количество столбцов в массиве: 5
*** Исходный массив [8,5] ***
1 1 0 0 1
1 1 0 1 0
1 0 0 0 0
0 0 0 1 1
1 0 1 1 1
1 0 0 1 1
1 1 0 1 1
0 1 1 1 0
--------------------
Нет
Один бит информации уменьшает неопределенность в два раза.
32 * 1024 * 768 бит = 32 * 1024 * 768 / 8 байт = 32 * 1024 * 768 * 8 / 1024 / 1024 = 3 Mb
1)
var a,c:real; b:integer;
begin
for b:=2 to 7 do
begin
c:=cos((2*b+1)/2-1);
a:=0.4*c*c;
writeln('b = ',b,', a = ',a:5:3);
end;
end.
2)
var a,c:real; b:integer;
begin
b:=1;
while b<7 do
begin
b:=b+1;
c:=cos((2*b+1)/2-1);
a:=0.4*c*c;
writeln('b = ',b,', a = ',a:5:3);
end;
end.
3)
var a,c:real; b:integer;
begin
b:=1;
repeat
b:=b+1;
c:=cos((2*b+1)/2-1);
a:=0.4*c*c;
writeln('b = ',b,', a = ',a:5:3);
until b=7;
end.
Результат:
b = 2, a = 0.002
b = 3, a = 0.257
b = 4, a = 0.351
b = 5, a = 0.018
b = 6, a = 0.201
b = 7, a = 0.381