Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл: Источник:
Скачиваний:
300
Добавлен:
04.03.2014
Размер:
1.67 Кб
Скачать
Задача:
В двумерном массиве случайных чисел [1..10,1..10] вычислить сумму элементов побочной диагонали.

(Побочная диагональ проходит из нижнего левого угла в верхний правый.)

Решить задачу двумя способами:
• Используя подпрограмму-функцию.
• Используя подпрограмму-процедуру.

Программа на языке Паскаль:
С помощью функции
type
type_arr = array[1..10, 1..10] of byte;

var
arr: type_arr;
i, j: byte;
sum: byte;

function diagonal (arr1: type_arr): byte;
var
sum1: byte;
i, j: byte;
begin
sum1 := 0;
j:= 10;
for i:=1 to 10 do begin
sum1 := sum1 + arr1[i][j];
j := j-1;
end;
diagonal := sum1;
end;

begin
randomize;
for i:=1 to 10 do begin
for j:=1 to 10 do begin
arr[i,j] := random(10);
write(arr[i,j], ' ');
end;
writeln;
end;

sum := diagonal(arr);
writeln(sum);

readln;
end.
С помощью процедуры:
type
type_arr = array[1..10, 1..10] of byte;

var
arr: type_arr;
i, j: byte;
sum: byte;

procedure diagonal (var arr1: type_arr; var sum1: byte);
var
i, j: byte;
begin
sum1 := 0;
j:= 10;
for i:=1 to 10 do begin
sum1 := sum1 + arr1[i][j];
j := j-1;
end;
end;

begin
randomize;
for i:=1 to 10 do begin
for j:=1 to 10 do begin
arr[i,j] := random(10);
write(arr[i,j], ' ');
end;
writeln;
end;

diagonal(arr, sum);
writeln(sum);

readln;
end.
Соседние файлы в папке Процедуры. Функции