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

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

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

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

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

Ответ
 
Опции темы Поиск в этой теме
Старый 28.12.2010, 02:11   #1
Repac123456
Пользователь
 
Аватар для Repac123456
 
Регистрация: 24.10.2010
Сообщений: 27
По умолчанию ошибки в задании ф-и.

задание:
с помощью функции ряд найти сумму ряда заданного некоторой функцией
текст программы:

Код:
unit Unit1;

interface

uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, StdCtrls;

type
TForm1 = class(TForm)
Edit1: TEdit;
Edit2: TEdit;
Edit3: TEdit;
Edit4: TEdit;
Button1: TButton;

procedure Button1Click(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;

var
Form1: TForm1;


implementation

{$R *.dfm}
Type
fun=Function(j:integer):real;


procedure TForm1.Button1Click(Sender: TObject);
var x,p,e: real;
j: integer;

Function Ryad(F:fun;p,e: real): real;
var j: integer;
begin
result:=p;
For j:=2 to 100 do
begin
p:=p*F(j);
result:=p+result;
if Abs(p)<e then
Break end
end;
Function F(j:integer):real;
begin
F:=-x*(2*j*j+j-3)/(2*j*j+j)
end;
var
k,l: real;
begin
x:=StrToFloat(Edit1.Text);
k:=StrToFloat(Edit2.Text);
l:= x*x*(5/2);
Edit3.Text:=FloatToStr(Ryad(F'ошибк а',l,k));
end;

end.



Local procedure/function 'F' assigned to procedure variable

как исправить?
Repac123456 вне форума Ответить с цитированием
Старый 28.12.2010, 02:29   #2
vovk
!=
Участник клуба
 
Аватар для vovk
 
Регистрация: 08.09.2008
Сообщений: 1,751
По умолчанию

Чтото мне подсказывает что хотелось чегото подобного
implementation

Код:
{$R *.dfm}
//Type
//fun=Function(j:integer):real;


procedure TForm1.Button1Click(Sender: TObject);
var x,p,e: real;
j: integer;

    Function F(j:integer):real;
      begin
        F:=-x*(2*j*j+j-3)/(2*j*j+j)
     end;
  
   Function Ryad(p,e: real): real;
    var j: integer;
  begin
    result:=p;
   For j:=2 to 100 do
     begin
      p:=p*F(j);
      result:=p+result;
  if Abs(p)<e then Break; 
    end;
 end;

var
k,l: real;
begin
x:=StrToFloat(Edit1.Text);
k:=StrToFloat(Edit2.Text);
l:= x*x*(5/2);
Edit3.Text:=FloatToStr(Ryad(l,k));
end;

end.

Последний раз редактировалось vovk; 28.12.2010 в 02:32.
vovk вне форума Ответить с цитированием
Ответ


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
ошибки в задании ф-и. Repac123456 Помощь студентам 1 25.12.2010 09:20
Не могу разбрраться в задании по С Deshrefresh Помощь студентам 1 04.12.2010 07:55
Формула в задании.. CodeExpert Помощь студентам 2 19.03.2010 22:33
Пытаюсь разобраться в задании fs444 Microsoft Office Excel 12 12.01.2010 12:57
Помочь немного в задании prikolist Общие вопросы C/C++ 3 27.03.2009 23:48