Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Delphi программирование > Паскаль, Turbo Pascal, PascalABC.NET
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 17.09.2017, 20:50   #1
p1onerw0w
Новичок
Джуниор
 
Регистрация: 17.09.2017
Сообщений: 2
По умолчанию Сложение всех элементов массива

Помогите с использованием Function
Задача:
Написать программу обработки двумерного массива, а в ней функцию, вычисляющую сумму элементов массива.

Никак не могу понять как правильно пользоваться Function когда создал матрицу, не могу понять как правильно. Вот моя матрица. Если кто-нибудь может отредактировать ее с использованием Function вычисляющую сумму элементов, то буду очень благодарен

program as123;

uses
crt;

const
n=4;
m=4;
var a: array[1..n] of array [1..m] of integer;
i,j:integer;
BEGIN
for i:=1 to n do begin
for j:=1 to m do begin
begin
write('a[',i,',',j,']=');
readln(a[i,j]);
end;
end;
end;
ClrScr;
writeln('Matrica A:');
for i:=1 to n do begin
for j:=1 to m do
write(' ',a[i,j]);
writeln;
begin
end;

end
end.
p1onerw0w вне форума Ответить с цитированием
Старый 17.09.2017, 21:12   #2
Aleksandr H.
2 the Nation Glory
Старожил
 
Аватар для Aleksandr H.
 
Регистрация: 27.05.2014
Сообщений: 3,289
По умолчанию

С begin/end проблемы у тебя, вроде как не понимаешь когда использовать
Код:

program HelloWorld;
uses crt;
const
n=4;
m=4;
type mas = array[1..n] of array [1..m] of integer;
var a: mas ;
    i,j:integer;
function S(a:mas):integer;
var i,j:byte;
    ss:integer;
begin
    ss:=0;
    for i:= 1 to n do
        for j:=1 to m do
         ss:=ss+a[i,j];
     s:=ss
end;
BEGIN
randomize;
for i:=1 to n do 
for j:=1 to m do begin
    a[i,j]:=random(15);
    write(' a[',i,',',j,']=',a[i,j]);
end;
writeln('Matrica A:');
for i:=1 to n do begin
    for j:=1 to m do
     write(' ',a[i,j]);
     writeln;
    end;
Writeln('suma = ',s(a));
end.
Кто умер, но не забыт, тот бессмертен.
Лао-Цзы.
Aleksandr H. вне форума Ответить с цитированием
Старый 17.09.2017, 21:15   #3
type_Oleg
Старожил
 
Аватар для type_Oleg
 
Регистрация: 02.03.2008
Сообщений: 2,538
По умолчанию

Цитата:
Сообщение от p1onerw0w Посмотреть сообщение
а в ней функцию, вычисляющую сумму элементов массива.
Чтобы передавать функции массив в качестве аргумента, надо объявить тип:
Код:
type typArr2=array[1..n] of array [1..m] of integer;
var a: typArr2;
Сейчас можно описать функцию для суммы:
Код:
function sumMas(mas: typArr2):Integer;
// и т.д.
А в программе ее вызвать, например
Код:
 WriteLn(sumMas(a)); // вывод суммы
PS опередили ..
type_Oleg вне форума Ответить с цитированием
Старый 17.09.2017, 21:59   #4
p1onerw0w
Новичок
Джуниор
 
Регистрация: 17.09.2017
Сообщений: 2
По умолчанию

Цитата:
Сообщение от Aleksandr H. Посмотреть сообщение
С begin/end проблемы у тебя, вроде как не понимаешь когда использовать
Да, учусь, многого не вдупляю. Спасибо за помощь, очень выручили

Цитата:
Сообщение от type_Oleg Посмотреть сообщение
Чтобы передавать функции массив в качестве аргумента, надо объявить тип:
Код:
type typArr2=array[1..n] of array [1..m] of integer;
var a: typArr2;
Сейчас можно описать функцию для суммы:
Код:
function sumMas(mas: typArr2):Integer;
// и т.д.
А в программе ее вызвать, например
Код:
 WriteLn(sumMas(a)); // вывод суммы
PS опередили ..
Буду учиться, большое спасибо
p1onerw0w вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Сложение конкретных элементов массива С++ nelord Общие вопросы C/C++ 1 15.01.2016 19:09
Сложение элементов каждой строки массива bloodykz Assembler - Ассемблер (FASM, MASM, WASM, NASM, GoASM, Gas, RosAsm, HLA) и не рекомендуем TASM 1 08.03.2013 07:58
Дан массив X(N).Найти среднеквадратичное всех элементов массива и заменить этим значение нулевые элементы массива. sev48fire Паскаль, Turbo Pascal, PascalABC.NET 3 21.06.2012 23:44
сложение элементов массива KateMM Assembler - Ассемблер (FASM, MASM, WASM, NASM, GoASM, Gas, RosAsm, HLA) и не рекомендуем TASM 1 09.06.2012 14:55
Отладка программы на MASM. Сложение элементов массива. Ibanez Wizard Assembler - Ассемблер (FASM, MASM, WASM, NASM, GoASM, Gas, RosAsm, HLA) и не рекомендуем TASM 2 22.02.2011 22:06