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

Delphi Sources



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

Ответ
 
Опции темы Поиск в этой теме Опции просмотра
  #1  
Старый 25.05.2010, 03:09
Falkone Falkone вне форума
Прохожий
 
Регистрация: 17.05.2010
Сообщения: 5
Репутация: 10
Радость нужна маленькая поправка!

Код:
unit Unit1;

interface

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

type
  TForm1 = class(TForm)
    Button1: TButton;
    StringGrid1: TStringGrid;
    Button2: TButton;
    Edit1: TEdit;
    Edit2: TEdit;
    procedure Button1Click(Sender: TObject);
    procedure Button2Click(Sender: TObject);
  private
    { Private declarations }
  public
    { Public declarations }
  end;

var
  Form1: TForm1;
 i:integer;
  x,a:real;
  b:string;
  h: array [1..5] of real = (1, 0.2, 0.1, 0.01, 0.001);
  p1,p2,p3: array [1..5] of real;

implementation

{$R *.dfm}

Function y(x:real):real;
begin
y:=ln((2*x*x+x-3)/(3*x*x+15*x+12));
end;

procedure TForm1.Button1Click(Sender: TObject);
begin
x:=strtoint(edit1.Text);
  for i:= 1 to 5 do
   begin
    p1[i]:=(y(x+h[i])-y(x))/h[i];
    p2[i]:=(y(x)-y(x-h[i]))/h[i];
    p3[i]:=(y(x+h[i])-y(x-h[i]))/(2*h[i]);
   end;
  for i:=1 to 5 do
   begin
   a:=p1[i];
   str(a:4:4,b);
   StringGrid1.Cells[i,1]:=b;
   a:=p2[i];
   str(a:4:4,b);
   StringGrid1.Cells[i,2]:=b;
   a:=p3[i];
   str(a:4:4,b);
   StringGrid1.Cells[i,3]:=b;
begin
 StringGrid1.Cells[0,0]:='h';
 StringGrid1.Cells[0,1]:='p1';
 StringGrid1.Cells[0,2]:='p2';
 StringGrid1.Cells[0,3]:='p3';
 StringGrid1.Cells[1,0]:='1';
 StringGrid1.Cells[2,0]:='0.2';
 StringGrid1.Cells[3,0]:='0.1';
 StringGrid1.Cells[4,0]:='0.01';
 StringGrid1.Cells[5,0]:='0.001';
 end;
 end;
end;



procedure TForm1.Button2Click(Sender: TObject);
begin
close;
end;



end.

есть такой код, как сделать что бы h задавалось с клавиатуры(h это шаг)

Последний раз редактировалось Falkone, 25.05.2010 в 03:12.
Ответить с цитированием
  #2  
Старый 25.05.2010, 04:52
lmikle lmikle вне форума
Модератор
 
Регистрация: 17.04.2008
Сообщения: 8,035
Версия Delphi: 7, XE3, 10.2
Репутация: 49089
По умолчанию

Добавить TEdit на форму и в обработчике клика по кнопке дописать:

Код:
procedure TForm1.Button1Click(Sender: TObject);
begin
  h:=strtoint(edit3.Text);
  ...
Ответить с цитированием
  #3  
Старый 25.05.2010, 12:05
Falkone Falkone вне форума
Прохожий
 
Регистрация: 17.05.2010
Сообщения: 5
Репутация: 10
По умолчанию

писал такое, выдает ошибку на h:=strtoint(edit2.Text); (ошибка incompatible types array integer)
Ответить с цитированием
  #4  
Старый 25.05.2010, 12:34
Аватар для Страдалецъ
Страдалецъ Страдалецъ вне форума
Гуру
 
Регистрация: 09.03.2009
Адрес: На курорте, из окна вижу теплое Баренцево море. Бррр.
Сообщения: 4,721
Репутация: 52347
По умолчанию

Было-бы странно если не выдавал. У вас описание h:
Код:
h: array [1..5] of real = (1, 0.2, 0.1, 0.01, 0.001);
Вводить надо соответственно 5 переменных. Можно конечно и как одну, но тогда надо делать примерно так:
Код:
Var
 hh: TStringList;
 i: Integer;
begin
 hh := TStringList.Create;
 hh.Delimiter := ' ';
 hh.DelimitedText := Edit1.Text;
 for i := 0 to hh.Count - 1
 do h[i] := StrToFloat(hh.Strings[i]);
__________________
Жизнь такова какова она есть и больше никакова.
Помогаю за спасибо.
Ответить с цитированием
  #5  
Старый 25.05.2010, 15:26
Falkone Falkone вне форума
Прохожий
 
Регистрация: 17.05.2010
Сообщения: 5
Репутация: 10
По умолчанию

ничего у меня толком не вышло, может кто то поправить мне сам код?
мне нужно что бы я мог задавать шаг(h), все что мне нужно!
Ответить с цитированием
Ответ


Delphi Sources

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

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

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

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


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


 

Сайт

Форум

FAQ

RSS лента

Прочее

 

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

ВКонтакте   Facebook   Twitter