Информатика, опубликовано 2018-08-22 19:38:08 by Гость

1 задача :Массив Z(20) заполнить целыми случайными числами в диапазоне от -20 до 20. Вычислить CP- среднее арифметическое положительных элементов и CN- среднее арифметическое отрицательных элементов массива Z. Вычислить P как сумму CP+CN, если CP>CN, или как произведение CP*CN, если CP 2 задача: Матрицу А(15, 4) заполнить целыми случайными числами в диапазоне от 1 до 51. Составить матрицу В(?, 4) из таких строк массива А, чтобы для каждого элемента A(I,J) данной строки I выполнялось условие 10

Ответ оставил Гость

1.
uses
crt;
const n=20;
var i,cp1,cn1:integer;
p,cp,cn:real;
z:array[1..n] of integer;
begin
randomize;
for i:=1 to n do
begin
z[i]:=random(20,-20);
if z[i]>=0 then
begin
cp:=cp+z[i];
cp1:=cp1+1;
end
else
begin
cn:=cp+z[i];
cn1:=cn1+1;
end;
cp:=cp/cp1;
cn:=cn/cn1;
end;
if cp>cn then
p:=cp+cn
else
p:=cp*cn;
for i:=1 to n do
write(z[i], );
writeln(#13#10,cp:5:2, ,cn:5:2, ,p:5:2);
end.
2.
uses crt;
const n=15;m=4;
var i,j,k,flag,count:integer;
a:array[1..n,1..m] of integer;
temp:array[1..100] of integer;
b:array[1..100,1..m] of integer;
begin
randomize;
k:=1;
count:=0;
for i:=1 to n do
begin
flag:=1;
for j:=1 to m do
begin
a[i,j]:=random(51,1);
if (a[i,j]40) then
flag:=0
end;
if flag=1 then
begin
temp[k]:=i;
count:=count+1;
k:=k+1;
end;
end;
for i:=1 to count do
for j:=1 to m do
b[i,j]:=a[temp[i],j];
writeln(Массив A:);
for i:=1 to n do
begin
for j:=1 to m do
write(a[i,j], );
write(#13#10);
end;
if count=0 then
writeln(Нет подходящих строк.)
else
begin
writeln(#13#10,Массив B:);
for i:=1 to count do
begin
for j:=1 to m do
write(b[i,j], );
write(#13#10);
end;
end;
end.

Не нашли ответа?
Если вы не нашли ответа на свой вопрос, или сомневаетесь в его правильности, то можете воспользоваться формой ниже и уточнить решение. Или воспользуйтесь формой поиска и найдите похожие ответы по предмету Информатика.

Форма вопроса доступна на полной версии этой страницы.