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

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

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

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

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

Ответ
 
Опции темы Поиск в этой теме
Старый 04.01.2014, 18:12   #1
BumBum4ik
Пользователь
 
Регистрация: 16.12.2013
Сообщений: 40
По умолчанию Используя очередь, написать процедуру или функцию,для вычисления среднего геометрического элементов типизированного файла (Паскаль

Код:
Program Ochered;
uses
  crt,pidprog;
begin
  Stk:=nil;
  sr:=1;
  Input();
  i:=0;
  Sred(Stk,sr);
  write(sr:2:6);
  readln;
end.
подпрограмма
unit pidprog;
interface
uses crt;
type
  Tinf=integer;
  List=^TList;  {“Є*§*⥫м ** н«Ґ¬Ґ*в вЁЇ* TList}
  TList=record
    data:TInf;  {¤***лҐ, еа**Ё¬лҐ ў н«Ґ¬Ґ*вҐ}
    next:List;   {гЄ*§*⥫м ** б«Ґ¤гойЁ© н«Ґ¬Ґ*в}
  end;
var
  Stk, {ЇҐаҐ¬Ґ***п, Є®в®а*п ўбҐЈ¤* Ўг¤Ґв гЄ*§лў*вм ** "еў®бв" ®зҐаҐ¤Ё}
  tmpl:List; {а*Ў®з*п ЇҐаҐ¬Ґ***п}
  znach:Tinf; {¤***лҐ ўў®¤Ё¬лҐ Ї®«м§®ў*⥫Ґ¬}
  ch:char; {¤«п а*Ў®вл б ¬Ґ*о}
  mas:array[1..100] of Integer;
  i:integer;
  sr:real;
const max=100;
procedure AddElem(var stek1:List;znach1:TInf);
procedure Input();
procedure Sred(stek1:List;var sr:real);
 
 
implementation
procedure AddElem(var stek1:List;znach1:TInf);
var
  tmp:List;
begin
  GetMem(tmp,sizeof(TList)); {ўл¤Ґ«пҐ¬ ў Ї*¬пвЁ ¬Ґбв® ¤«п *®ў®Ј® н«Ґ¬Ґ*в*}
  tmp^.next:=stek1;  {гЄ*§*⥫м ** б«Ґ¤гойЁ© н«Ґ¬Ґ*в "**Їа*ў«пҐ¬" ** еў®бв ®зҐаҐ¤Ё}
  tmp^.data:=znach1; {¤®Ў*ў«пҐ¬ Є н«Ґ¬Ґ*вг ¤***лҐ}
  stek1:=tmp; {еў®бв ®зҐаҐ¤Ё Ё§¬Ґ*Ё«бп, **¤® ЇҐаҐ*ҐбвЁ Ё гЄ*§*⥫Ё ** *Ґс}
end;
procedure Input();
var f:file of Integer;
l,i:integer;
begin
Assign(f,'1.txt');
reset(f);
For i:=1 to filesize(f) do
begin
Read(f,mas[i]);
 AddElem(Stk,mas[i]);
end;
close(f);
 
end;
 
 
procedure Sred(stek1:List;var sr:real);
var
count:integer;
 
begin
  if stek1=nil then {Їа®ўҐаЄ* ** Їгбв®вг ®зҐаҐ¤Ё}
  begin
    writeln('ЋзҐаҐ¤м Їгбв*.');
    exit;
  end;
  while stek1<>nil do {Ї®Є* гЄ*§*⥫м stek1 *Ґ бв**Ґв гЄ*§лў*вм ў Їгбв®вг}
  begin   {* нв® Їа®Ё§®©¤св Є*Є в®«мЄ® ®* ЇҐаҐ©¤св Ї® ббл«ЄҐ Ї®б«Ґ¤*ҐЈ® н«Ґ¬Ґ*в*}
    sr:=sr*(stek1^.data);
    count:=count+1;
    stek1:=stek1^.next  {Ё ЇҐаҐ*®бЁвм гЄ*§*вҐ«м ў **з*«® ®зҐаҐ¤Ё}
  end;
  sr:=exp(ln(sr)/count);
 
end;
end.

задание:Используя очередь, написать процедуру или функцию, которая определяет среднее
геометрическое всех элементов типизированного файла
BumBum4ik вне форума Ответить с цитированием
Ответ


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Написать метод класса для удаления элементов массива больше среднего арифметического С++ Елена Н. Помощь студентам 2 28.11.2013 16:19
Считать запись из типизированного файла в динамическую очередь ( Delphi ) SeregaVili Помощь студентам 10 22.05.2013 11:20
Написать программу вычисления площади многоугольника используя формулу для вычисления площади треугольника в качестве подпрограммы сердце Паскаль, Turbo Pascal, PascalABC.NET 0 24.12.2012 18:21
Программа для вычисления среднего арифметического и геометрического массива чисел Defalliance Общие вопросы C/C++ 1 04.12.2012 21:57
Составить функцию для вычисления среднего арифметического в Delphi laventus Помощь студентам 2 15.06.2012 14:53