ответственность за разрешение любых спорных моментов, касающихся самих материалов и их содержания, берут на себя пользователи, разместившие материал на сайте. Однако администрация сайта готова оказать всяческую поддержку в решении любых вопросов, связанных с работой и содержанием сайта. Если Вы заметили, что на данном сайте незаконно используются материалы, сообщите об этом администрации сайта через форму обратной связи.
Все материалы, размещенные на сайте, созданы авторами сайта либо размещены пользователями сайта и представлены на сайте исключительно для ознакомления. Авторские права на материалы принадлежат их законным авторам. Частичное или полное копирование материалов сайта без письменного разрешения администрации сайта запрещено! Мнение администрации может не совпадать с точкой зрения авторов.
Объяснение:
const nmax=15;
var a:array[1..nmax,1..nmax] of integer;
m,n,i,j,k,x,y:integer;
begin
randomize;
repeat
write('Количество строк до ',nmax,' n=');
readln(n);
until n in [1..nmax];
repeat
write('Количество столбцов до ',nmax,' m=');
readln(m);
until m in [1..nmax];
k:=-1;
for j:=1 to m do
begin
y:=1;
x:=j;
while(x>0) and(y<=n) do
begin
k:=k+1;
a[y,x]:=k;
x:=x-1;
y:=y+1;
end;
end;
for j:=2 to n do
begin
y:=j;
x:=m;
while(x>0)and(y<=n) do
begin
k:=k+1;
a[y,x]:=k;
x:=x-1;
y:=y+1
end;
end;
for i:=1 to n do
begin
for j:=1 to m do
write(a[i,j]:4);
writeln
end;
readln
end.
Переведите на Питон, в Паскале давно не работал
объяснение:
функциональное возвращает значение, процедурное – нет.
заголовок функционального обязательно содержит тип результата.
в теле функцианального обязательно наличие оператора, присваивающего значение имени функции.
вызов процедурного требует отдельного оператора, вызов функционального возможен в составе выражений.
имя процедурного необходимо для вызова, имя функционального – для присвоения значения.
на схемах алгоритмов вызов процедурного изображается в отдельном блоке, вызов функционального– в блоке процесса или вывода