Помогите, надо написать программу на паскале
1. Дан одномерный массив, заполненный по правилу: каждый элемент равен удвоенному порядковому номеру. Заменить элементы, стояшие на четных местах на нули. Распечатать полученный массив.
2. Двумерный массив задан с клавиатуры. Найти произведение элементов, выше главной диагонали.
Ответы на вопрос
Ответил Crazzyone
0
первая часть
Program TZ5;
const
n=10;
var
a:array [1..n] of integer;
i,b:integer;
begin
for i:=1 to n do begin
a[i]:=i*2;
writeln(i,' ',a[i]);
end;
for i:=1 to n do
if (i mod 2)=0 then
a[i]:=0;
writeln('novuy massiv');
for i:=1 to n do
writeln(i,' ',a[i]);
readln;
end.
Ответил Crazzyone
0
По 2й части ответов на вопрос нет, так что вот решение для случайно формирующегося массива размерностью 10. Надеюсь заменить на самостоятельный ввод навыков хватит.
Ответил Crazzyone
0
Program sector;
const
n=10;
type
myarray = array [1..n,1..n] of integer;
var
a: myarray;
i,j,x,y,z: byte;
proizv: real;
begin
randomize;
for i:=1 to n do begin
for j:=1 to n do begin
a[i,j]:=random (40);
a[i,j]:=a[i,j]-20;
write(a[i,j]:4);
end;
writeln;
end;
proizv:=0;
for i:=1 to n do
for j:=1 to i do
proizv:=proizv*a[i,j];
writeln('PROIZVEDENIE=',proizv);
readln;
end.
const
n=10;
type
myarray = array [1..n,1..n] of integer;
var
a: myarray;
i,j,x,y,z: byte;
proizv: real;
begin
randomize;
for i:=1 to n do begin
for j:=1 to n do begin
a[i,j]:=random (40);
a[i,j]:=a[i,j]-20;
write(a[i,j]:4);
end;
writeln;
end;
proizv:=0;
for i:=1 to n do
for j:=1 to i do
proizv:=proizv*a[i,j];
writeln('PROIZVEDENIE=',proizv);
readln;
end.
Новые вопросы