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

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

Вернуться   Форум программистов > IT форум > Помощь студентам
Регистрация

Восстановить пароль

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

Ответ
 
Опции темы Поиск в этой теме
Старый 20.12.2011, 14:14   #1
Борис Д.
Новичок
Джуниор
 
Регистрация: 20.12.2011
Сообщений: 1
По умолчанию Процедура на паскале

Дана задача по вычислению средних значений (арифметическое, квадратичное, гармоническое,геометрическое). Даны значения: Нечетные числа от 3 до 75 и от 501 до 601.
Цитата:
var
a1:array[3..75] of integer;
a2:array[501..601] of integer;
i:integer;
procedure fill_array(var a:array of integer;start:integer);
var i:byte;
begin
for i:= low(a) to high(a) do
a[i]:=(i+2)+(i+start);
end;

function arith (var a:array of integer):real;
var
sum:longint;
i:integer;
begin
sum:=0;
for i:=low(a) to high (a) Do
sum :=sum +a[i];
arith:=sum/(high(a)-low(a)+1)
end;

function quadr( var a:array of integer):real;
var
sum:real;
i:integer;
begin
sum:=0;
for i:=low(a) to high (a) do
sum:=sum + sqr (longint (a[i]));
quadr :=sqrt (sum/(high(a) - low(a)+1))
end;

function sredgeom (var a: array of integer):real;
var
sum : real;
i : word;
begin
sum := 0;
for i :=low(a) to high(a) do
sum := sum + ln(a[i]);
sredgeom := exp(sum/(high(a)-low(a)+1));
end;

function sredgorm (var a: array of integer):real;
var
sum : real;
i : word;
begin
sum := 0;
for i := low(a) to high(a) do
sum := sum + 1/(a[i]);
sredgorm := (high(a)-low(a)+1)/sum;
end;

begin
fill_array(a1,3);
writeln('srednee arith 1=', arith(a1):0:2);
writeln('srednee quadr 2=', quadr(a1):0:2);
writeln('srednee geom 3=', sredgeom(a1):0:2);
writeln('srednee gorm 4=', sredgorm(a1):0:2);
fill_array(a2,501);
writeln('srednee arith 1=', arith(a2):0:2);
writeln('srednee quadr 2=', quadr(a2):0:2);
writeln('srednee geom 3=', sredgeom(a2):0:2);
writeln('srednee gorm 4=', sredgorm(a2):0:2);
end.
end.
Помогите пожалуйста написать правильно процедуру заполнения. Совсем запутался. Кто поможет кину 50 на вмр или на телефон.
Борис Д. вне форума Ответить с цитированием
Старый 20.12.2011, 14:41   #2
Mad_Cat
Made In USSR!
Старожил
 
Аватар для Mad_Cat
 
Регистрация: 01.09.2010
Сообщений: 3,657
По умолчанию

Код:
var
a1:array[1..37] of integer;
a2:array[250..300] of integer;
i:integer;
procedure fill_array(var a:array of integer);
var i:byte;
begin
for i:= low(a) to high(a) do
a:=2*i+1;
end;
"...В жизни я встречал друзей и врагов.В жизни много всего перевидал.Солнце тело мое жгло, ветер волосы трепал,но я смысла жизни так и не узнал..."
(c) Юрий Клинских aka "Хой"

Последний раз редактировалось Mad_Cat; 20.12.2011 в 15:40.
Mad_Cat вне форума Ответить с цитированием
Ответ


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Процедура в паскале Yalovick Помощь студентам 1 03.04.2011 16:26
Процедура в паскале! wrmarw Паскаль, Turbo Pascal, PascalABC.NET 10 20.04.2010 20:30
Процедура в паскале! wrmarw Помощь студентам 2 16.04.2010 19:59
Процедура в Паскале maziLa Помощь студентам 1 05.01.2009 12:03