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

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

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

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

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

Ответ
 
Опции темы Поиск в этой теме
Старый 04.06.2010, 16:45   #1
Алена_=)))
Пользователь
 
Аватар для Алена_=)))
 
Регистрация: 13.05.2010
Сообщений: 42
Вопрос Двунаправленные списки-паскаль

Здравствуйте всем кто сюда зашел! задача в том чтобы создать двунаправлсписок из вещественных элементов и подсчитать среднее арифметическое этих элементов!
я набрасала формиование и вывод списка на экран,а с подсчетом не могу разобраться, результат в информационное поле должна заносить или нет?а подсчет кол-ва элементов тоже через указатели считать?.
пыталась искать по форуму что то похожее-никак!
Очень прошу о какой-нибудь подсказке или решении последний процедуры по подсчету ср. арифм!
Вот модуль:
Код:
unit Unit1;

interface
type int=^rec;
     rec=record
     last:int;
     next:int;
     data:real;
     end;

procedure form(out a,b:int; s:integer);
procedure vivod(a:int);
//function Sr_Arifm(a,b:int):real;

implementation

procedure form(out a,b:int; s:integer);
var i:integer; d:int;
begin
randomize;
new(a);
a^.data:= random(50)/5-random(20);
a^.last:=nil;
d:=a;
for i:=2 to s do
begin
new(d^.next);
d:=d^.next;
d^.data:=random(50)/5-random(20);
d^.next:=nil;
end;
b:=d;
end;

procedure vivod(a:int);
begin
while a<>nil do
begin
writeln(a^.data:0:2);
a:=a^.next;
end;
end;

Последний раз редактировалось Stilet; 04.06.2010 в 16:51.
Алена_=))) вне форума Ответить с цитированием
Старый 04.06.2010, 16:55   #2
Stilet
Белик Виталий :)
Старожил
 
Аватар для Stilet
 
Регистрация: 23.07.2007
Сообщений: 57,097
По умолчанию

Цитата:
формиование и вывод списка
Ну дык осталось шагнуть в пропасть...
Код:
function GoodBye(a:int);
var res:double;cnt;integer;
begin cnt:=1;
while a<>nil do
begin
 res:=a^.data+res
 a:=a^.next;
 inc(cnt);
end;
 res:=res/cnt;
 GoodBye:=res;
end;
...и полететь
I'm learning to live...
Stilet вне форума Ответить с цитированием
Старый 04.06.2010, 18:33   #3
Алена_=)))
Пользователь
 
Аватар для Алена_=)))
 
Регистрация: 13.05.2010
Сообщений: 42
По умолчанию

ААА спасибо огромное оказывается все так просто))))))))
Алена_=))) вне форума Ответить с цитированием
Ответ


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Паскаль. Списки Fatality Помощь студентам 6 28.05.2009 07:56
двунаправленные списки в С++ zven_ Общие вопросы C/C++ 22 29.10.2008 18:07
Двунаправленные списки в с++ Марсель059 Общие вопросы C/C++ 0 29.10.2008 15:32