IPB
ЛогинПароль:

> Прочтите прежде чем задавать вопрос!

1. Заголовок темы должен быть информативным. В противном случае тема удаляется ...
2. Все тексты программ должны помещаться в теги [code=pas] ... [/code], либо быть опубликованы на нашем PasteBin в режиме вечного хранения.
3. Прежде чем задавать вопрос, см. "FAQ", если там не нашли ответа, воспользуйтесь ПОИСКОМ, возможно такую задачу уже решали!
4. Не предлагайте свои решения на других языках, кроме Паскаля (исключение - только с согласия модератора).
5. НЕ используйте форум для личного общения, все что не относится к обсуждению темы - на PM!
6. Одна тема - один вопрос (задача)
7. Проверяйте программы перед тем, как разместить их на форуме!!!
8. Спрашивайте и отвечайте четко и по существу!!!

 
 Ответить  Открыть новую тему 
> Написать процедуру вычисляющую сумму элементов одномерного массива пригоддную для использование с любым массивом типа mas и с любым кол-вом элементов!
сообщение
Сообщение #1


Новичок
*

Группа: Пользователи
Сообщений: 11
Пол: Мужской
Реальное имя: format

Репутация: -  -2  +


Помогите мне с паскалем напишите вычисление суммы элементов одномерного массива через процедуру.Буду очень признателен!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
сообщение
Сообщение #2





Группа: Пользователи
Сообщений: 7
Пол: Мужской

Репутация: -  0  +


procedure(mas:ar);
var i,sum:integer;
begin
sum:=0;
for i:=1 to n do
sum:=sum+mas[i];
end;
тока через type нужно будет массив описать например type ar=array [1..n] of integer;

p.s Ну ваще я не шарю так что может не работать =))

Сообщение отредактировано: volvo -
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
сообщение
Сообщение #3





Группа: Пользователи
Сообщений: 4
Пол: Мужской
Реальное имя: Пётр

Репутация: -  0  +


Маленькая поправочка. "Массив типа мас", а у Зюзюка - переменная мас. Да и размер массива не передаётся.
procedure(A:mas);
var
I, Sum: Integer;
begin
Sum := 0;
For I := Low(A) to High(A) do
Sum := Sum + Mas[I];
end;

Данная п/п хранит значение суммы только в подпрограмме и не передаёт его в о/п

Сообщение отредактировано: savef5 -
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
сообщение
Сообщение #4


Гость






Не будет эта процедура работать по условию... Написано:
Цитата
с любым кол-вом элементов!
, чтобы этого добиться, надо использовать открытые массивы:

procedure(const A: array of mas_type; const size: integer);
var
I, Sum: Integer;
begin
Sum := 0;
For I := 0 to pred(size) do
Sum := Sum + A[I];
end;

Вот теперь процедуру можно использовать и на массиве из 10, и на массиве из 50 элементов...

Сообщение отредактировано: volvo -
 К началу страницы 
+ Ответить 
сообщение
Сообщение #5


Новичок
*

Группа: Пользователи
Сообщений: 11
Пол: Мужской
Реальное имя: format

Репутация: -  -2  +


Цитата(volvo @ 23.12.2007 12:11) *
Вот теперь процедуру можно использовать и на массиве из 10, и на массиве из 50 элементов...
а блок схему можещь нарисовать?!
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
сообщение
Сообщение #6


Гуру
*****

Группа: Пользователи
Сообщений: 1 220
Пол: Мужской

Репутация: -  16  +


Программа построения блок-схем
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 

 Ответить  Открыть новую тему 
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 





- Текстовая версия 28.03.2024 15:36
500Gb HDD, 6Gb RAM, 2 Cores, 7 EUR в месяц — такие хостинги правда бывают
Связь с администрацией: bu_gen в домене octagram.name