Составить алгоритм, написать программу, которая заполняет массив из 20 данных случайными числами и делят его на два массива, в один помещает четные числа в другой нечетные. вывести исходный массив, массив четных чисел и нечетных чисел.
1. Первый интервал 21-30, в него входят 10 чисел (21,22,23,24,25,26,27,28,29,30) = а вероятность будет равна количеству чисел этого интервала к общему интервалу [1;100]. Таким образом для первого интервала 10/100 = 10% = 0,1. 2.Идем по аналогии с предыдущим интервалом : [31;55] - это 25 чисел,следовательно 25/100=25% = 0,25. 3.Интервал [25;100] - это 75 чисел. 75/100=75%=0,75. 4. Ровно 25, это единственное число,а как вы уже успели заметить - каждое число является 1 процентом. Таким образом можно сразу сказать что вероятность для этого случая 1% или 0,01.
type mas100_100 = array[1..100, 1..100] of integer;
var a1, a2, a3: mas100_100; i, j, m, n: integer;
procedure InitializeMatrix(var a: mas100_100; m, n: integer); var i, j: integer; begin writeln('Данные матрицы'); for i := 1 to m do begin for j := 1 to n do if handsfree then begin a[i, j] := random(30); write(a[i, j]:2, ' ') end else read(a[i, j]); writeln; end; end;
begin writeln('Введите размер матриц'); readln(m, n);
InitializeMatrix(a1, m, n); InitializeMatrix(a2, m, n);
writeln('Вывод результата'); for i := 1 to m do begin for j := 1 to n do begin a3[i, j] := a1[i, j] * a2[m + 1 - i, n + 1 - j]; write(a3[i, j], ' '); end; writeln; end;
var
a,b,c:array [1..20] of integer;
i,k,l:integer;
begin
randomize;
k:=1;
l:=1;
writeln ('Исходный массив: ');
for i:=1 to 20 do
begin
a[i]:=random(9)+1;
if a[i] mod 2 = 0 then
begin
b[k]:=a[i];
inc(k);
end else
begin
c[l]:=a[i];
inc(l);
end;
write (a[i],' ');
end;
k:=k-1;
l:=l-1;
writeln;
writeln ('Массив четных чисел');
for i:=1 to k do write (b[i],' ');
writeln;
writeln ('Массив нечетных чисел');
for i:=1 to l do write (c[i],' ');
writeln;
readln;
end.