Напишите программу формирования и вывода массива размером 6*3, каждые три...

0 голосов

Напишите программу формирования и вывода массива размером 6*3, каждые три последовательных элемента в строке которого составлены по следующему правилу:
1-й равен 500
2-й равен целой части квадратного корня из предыдущего элемента
3-й равен целой части от деления суммы индексов текущего элемента на 3 ( если она равна 0, то соответствующий элемент массива делать равным 1).
в Pascal


спросил от (62 баллов) в категории Информатика
оставил комментарий от Начинающий (672 баллов)

"2-й равен целой части квадратного корня из предыдущего элемента" - предыдущий по строке или по столбцу?

оставил комментарий от Начинающий (262 баллов)

Что считать за 'суммы индексов текущего элемента"?

оставил комментарий от (62 баллов)

по строке

оставил комментарий от (62 баллов)

ну наверное сумма столбца и строки

оставил комментарий от (62 баллов)

хотя не знаю

оставил комментарий от Начинающий (262 баллов)

Ну так как решать если толком условия нету?

оставил комментарий от (62 баллов)

такое задание

оставил комментарий от (62 баллов)

не я ведь составляла)

оставил комментарий от Начинающий (672 баллов)

есть какие-нибудь данные для проверки?

оставил комментарий от (62 баллов)

нет, я написала то что было на листочке, больше никаких условий нету:)

2 Ответы
0 голосов
ответил от Начинающий (262 баллов)
 
Лучший ответ

Var a:array[1..3,1..6] of integer;x,y:integer;
begin
for y:=1 to 6 do begin
for x:=1 to 3 do begin
if x=1 then a[x,y]:=500;
if x=2 then a[x,y]:=trunc(sqrt(a[x-1,y]));
if x=3 then a[x,y]:=trunc((x+y)3);
if x<>3 then write(a[x,y],' ');
end;
writeln(a[x,y]);
end;
end.

оставил комментарий от (62 баллов)

спасибо:)

0 голосов
ответил от Начинающий (672 баллов)

Как-то так)

const n=6; m=3;
var a:array[1..n,1..m] of integer;
i,j:integer;
begin
for i:=1 to n do
for j:=1 to m do a[i,j]:=random(50);
for i:=1 to n do
for j:=1 to m do begin
if j=1 then a[i,j]:=500;
if j=2 then a[i,j]:=trunc(sqrt(a[i,j-1]));
if j=3 then a[i,j]:=(i+j) div 3;
end;
for i:=1 to n do begin
for j:=1 to m do write(a[i,j]:5);
writeln;
end;
end.
оставил комментарий от (62 баллов)

спасибо:)

...