Форум по Delphi программированию

Delphi Sources



Вернуться   Форум по Delphi программированию > Все о Delphi > [ "Начинающим" ]
Ник
Пароль
Регистрация <<         Правила форума         >> FAQ Пользователи Календарь Поиск Сообщения за сегодня Все разделы прочитаны

Ответ
 
Опции темы Поиск в этой теме Опции просмотра
  #1  
Старый 13.11.2016, 15:57
Tupiy Tupiy вне форума
Прохожий
 
Регистрация: 13.11.2016
Сообщения: 9
Версия Delphi: Delphi 2010
Репутация: 10
Печаль подключить модуль

Вечер добрый ребят, помогите пожалуйста подключить модуль функции чтобы работали функции S(x), Y(x) сижу мучаюсь не знаю как подключить и как прописать одно в другое...
Код программы:
Код:
unit Unit1;

interface

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

type
  TForm1 = class(TForm)
    Label1: TLabel;
    Edit1: TEdit;
    Label2: TLabel;
    Edit2: TEdit;
    Label3: TLabel;
    Edit3: TEdit;
    Label4: TLabel;
    Edit4: TEdit;
    Label5: TLabel;
    Button1: TButton;
    RadioGroup1: TRadioGroup;
    Memo1: TMemo;
    procedure Button1Click(Sender: TObject);
    procedure FormCreate(Sender: TObject);
  private
    { Private declarations }
  public
    { Public declarations }
  end;

var
  Form1: TForm1;
implementation
{$R *.dfm}


procedure TForm1.Button1Click(Sender: TObject);
const
  xn = 0.1;
  xk = 0.5;
  h = 0.1;
  e = 0.0001;
var
  x, y, t, s: real;
  n: Integer;
begin
  Memo1.Clear;
  Memo1.Lines.Add('Результаты ст. гр. 5В011100 Гулов Е.В.');
  Memo1.Lines.Add('xn=0.1');
  Memo1.Lines.Add('xk=0.5');
  Memo1.Lines.Add('h=0.1');
  Memo1.Lines.Add('e=0.0001');
  x := xn;
  while x <= xk do
  begin
    n := 0;
    t := x;
    s := t;
    while Abs(t) / (2 * n + 1) > e do
    begin
      n := n + 1;
      t := -t * x * x;
      s := s + t / (2 * n + 1);
    end;
    y := arctan(x);
    Memo1.Lines.Add('При х=' + formatfloat('0.0', x) + ' сумма=' + formatfloat
        ('0.0000', s) + ' y=' + formatfloat('0.0000', y) + ' N=' + inttostr
        (n + 1));
    x := x + h;
  end;
end;

procedure TForm1.FormCreate(Sender: TObject);
begin
memo1.Clear;
RadioGroup1.ItemIndex:=0;
end;

end.

код модуля
Код:
unit Unit2;
interface
uses StdCtrls, SysUtils;
   Type
       fun = function(x : extended):extended; // Объявление типа функция
             {Расчет таблицы функции f (табуляция функции)}
  procedure Tabl(f:fun;xn,xk:extended; m: word; Memo1 : TMemo);
implementation
  procedure Tabl;
     var x,y,h: extended;
         i : integer;
    begin
    x:=xn;  h:=(xn-xk)/m;
for i:=1 to m+1 do begin
     y:=f(x);
    Mem1.Lines.Add(' x='+FloatToStrf(x,fffixed,8,3)+
                                ' y='+FloatToStrf(y,fffixed,8,3));
        x:=x+h;
                               end;
     end;
end.
работа.rar
Ответить с цитированием
  #2  
Старый 13.11.2016, 21:57
lmikle lmikle вне форума
Модератор
 
Регистрация: 17.04.2008
Сообщения: 8,015
Версия Delphi: 7, XE3, 10.2
Репутация: 49089
По умолчанию

не вижу кода функций S(x) и Y(x)
Ответить с цитированием
  #3  
Старый 14.11.2016, 09:02
Tupiy Tupiy вне форума
Прохожий
 
Регистрация: 13.11.2016
Сообщения: 9
Версия Delphi: Delphi 2010
Репутация: 10
По умолчанию

Куда и как прописать их!?
Ответить с цитированием
  #4  
Старый 14.11.2016, 09:11
Аватар для Alegun
Alegun Alegun вне форума
LMD-DML
 
Регистрация: 12.07.2009
Адрес: Богородское
Сообщения: 3,025
Версия Delphi: D7E
Репутация: 1834
По умолчанию

Код:
unit Unit1;
...
{$R *.dfm}
uses
   Unit2;
...
Ответить с цитированием
  #5  
Старый 14.11.2016, 11:04
Tupiy Tupiy вне форума
Прохожий
 
Регистрация: 13.11.2016
Сообщения: 9
Версия Delphi: Delphi 2010
Репутация: 10
По умолчанию

как прописать функции
Безымянный.jpg

Последний раз редактировалось Tupiy, 14.11.2016 в 12:41.
Ответить с цитированием
  #6  
Старый 14.11.2016, 12:43
Tupiy Tupiy вне форума
Прохожий
 
Регистрация: 13.11.2016
Сообщения: 9
Версия Delphi: Delphi 2010
Репутация: 10
По умолчанию

как прописать его их?*
Безымянный.png
Ответить с цитированием
  #7  
Старый 14.11.2016, 12:51
Аватар для Alegun
Alegun Alegun вне форума
LMD-DML
 
Регистрация: 12.07.2009
Адрес: Богородское
Сообщения: 3,025
Версия Delphi: D7E
Репутация: 1834
По умолчанию

Примерно так, но поскольку кроме объявы нет самого тела функции типа fun, работать полностью (в положении Y(x)) это не будет
Вложения
Тип файла: zip срс5.zip (2.9 Кбайт, 1 просмотров)
Ответить с цитированием
  #8  
Старый 15.11.2016, 09:51
Tupiy Tupiy вне форума
Прохожий
 
Регистрация: 13.11.2016
Сообщения: 9
Версия Delphi: Delphi 2010
Репутация: 10
По умолчанию

а можешь кодом просто написать?
Ответить с цитированием
  #9  
Старый 15.11.2016, 10:05
Аватар для Alegun
Alegun Alegun вне форума
LMD-DML
 
Регистрация: 12.07.2009
Адрес: Богородское
Сообщения: 3,025
Версия Delphi: D7E
Репутация: 1834
По умолчанию

Код:
...
uses Unit2;

procedure TForm1.Button1Click(Sender: TObject);
var
  xn, xk, h, e, x, y, t, s: real;
  n: Integer;
  begin
  xn:= StrToFloat(Edit1.Text);//  0.1;
  xk:= StrToFloat(Edit2.Text);//0.5;
  h := StrToFloat(Edit3.Text);//0.1;
  e := StrToFloat(Edit4.Text);//0.0001;

  Memo1.Clear;
  Memo1.Lines.Add('Результаты ст. гр. 5В011100 Гулов Е.В.');
  Memo1.Lines.Add('xn='+ Edit1.Text);
  Memo1.Lines.Add('xk='+ Edit2.Text);
  Memo1.Lines.Add('h=' + Edit3.Text);
  Memo1.Lines.Add('e=' + Edit4.Text);

  if RadioGroup1.ItemIndex = 0 then
  begin
  x := xn;
  while x <= xk do
  begin
    n := 0;
    t := x;
    s := t;
    while Abs(t) / (2 * n + 1) > e do
    begin
      n := n + 1;
      t := -t * x * x;
      s := s + t / (2 * n + 1);
    end;
    y := arctan(x);
    Memo1.Lines.Add('При х=' + formatfloat('0.0', x) + ' сумма=' + formatfloat
        ('0.0000', s) + ' y=' + formatfloat('0.0000', y) + ' N=' + inttostr
        (n + 1));
    x := x + h;
  end;

  end else

    Tabl(nil {должна быть типа fun}  , xn, xk, 10 {для примера}, Memo1);

  end;
Определитесь, что должна делать подставляемая функция, какое матдействие и результат
Ответить с цитированием
Ответ


Delphi Sources

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск
Опции просмотра
Комбинированный вид Комбинированный вид

Ваши права в разделе
Вы не можете создавать темы
Вы не можете отвечать на сообщения
Вы не можете прикреплять файлы
Вы не можете редактировать сообщения

BB-коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.
Быстрый переход


Часовой пояс GMT +3, время: 01:34.


 

Сайт

Форум

FAQ

RSS лента

Прочее

 

Copyright © Форум "Delphi Sources" by BrokenByte Software, 2004-2023

ВКонтакте   Facebook   Twitter