Экспертная система Delphi.int.ru

Сообщество программистов
Общение, помощь, обмен опытом

Логин:
Пароль:
Регистрация | Забыли пароль?

Delphi.int.ru Expert

Другие разделы портала

Переход к вопросу:

#   

Статистика за сегодня:  


Лучшие эксперты

Подробнее »



Вопрос # 2 240

Раздел: Delphi » Прочее
/ вопрос открыт /

Здравствуйте, уважаемые эксперты!
Помогите пожалуйста разобраться в программе,опешите её действия по шагово,очень прошу!

Приложение:
  1. unit Unit1;
  2.  
  3. interface
  4.  
  5. uses
  6. Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  7. Dialogs, Math, StdCtrls;
  8.  
  9. type
  10. TForm1 = class(TForm)
  11. Edit1: TEdit;
  12. Edit2: TEdit;
  13. Button1: TButton;
  14. procedure Button1Click(Sender: TObject);
  15. private
  16. { Private declarations }
  17. public
  18. { Public declarations }
  19. end;
  20.  
  21. var
  22. Form1: TForm1;
  23.  
  24. implementation
  25.  
  26. {$R *.dfm}
  27.  
  28. procedure TForm1.Button1Click(Sender: TObject);
  29. var
  30. x0, x2, x, f, g, M:real;
  31. i:integer;
  32.  
  33. begin
  34.  
  35. i:=0;
  36. x0:=0;
  37. f:=1-power(exp(x0), 1/5)+(1/((x0+5)+1/exp(x0)))*ln(x0+1);
  38. M:=f;
  39. repeat
  40. i:=i+1;
  41. x:=x0+i*0.1;
  42. x2:=x+0.1;
  43.  
  44.  
  45.  
  46.  
  47.  
  48.  
  49. if M*f<0 then edit1.text:=floattostr(x);
  50. if (f-M>0) and (g-f<0) then edit2.Text:=floattostr(x);
  51.  
  52. M:=f;
  53.  
  54. until i=19;
  55.  
  56.  
  57. end;
  58. end.
  59.  


Якакутов Евгений Михайлович Вопрос ожидает решения (принимаются ответы, доступен мини-форум)

Вопрос задал: Якакутов Евгений Михайлович (статус: Посетитель)
Вопрос отправлен: 27 декабря 2008, 19:23
Состояние вопроса: открыт, ответов: 1.

Ответ #1. Отвечает эксперт: min@y™

procedure TForm1.Button1Click(Sender: TObject);
var
  x0, x2, x, f, g, M: real;
  i: integer;
begin
  i:= 0;
  x0:= 0;
  f:= 1 - power(exp(x0), 1 / 5) + (1 / ((x0 + 5) + 1 / exp(x0))) * ln(x0 + 1);
  // Я чото не догоняю? Если X0 = 0.0, то f:= 0.0, если не ошибаюсь
  M:= f; // M:= 0.0;
 
  // Цыкл i:= 1, ..., 19
  repeat
    i:= i + 1;  // инкремент индекса
    x:= x0 + i * 0.1; // x:= 0.1, 0.2, ..., 1.9
    x2:= x + 0.1; // x2:= 0.2, 0.3, ..., 2.0
    f:= 1 - power(exp(x), 1/5) + (1 / (x + 5) + 1 / exp(x)) * ln(x + 1); //f от x (жуть)
    g:= 1 - power(exp(x2), 1/5) + (1 / ((x2 + 5) + 1 / exp(x2))) * ln(x2 + 1);// g от x + 0.1 (ужос)
 
    if M * f < 0
      then edit1.text:= floattostr(x); // Вывод. Хрен знает, сколько раз. Считать не стал
 
    if (f - M > 0) and (g - f < 0)
      then edit2.Text:= floattostr(x); // и это тоже
 
    M:= f;  // реккурентность? или как это там называется, не знаю... забыл
  until i = 19;
end;

Ответ отправил: min@y™ (статус: Доктор наук)
Время отправки: 27 декабря 2008, 20:26
Оценка за ответ: 5


Мини-форум вопроса

Всего сообщений: 9; последнее сообщение — 27 декабря 2008, 20:30; участников в обсуждении: 3.
Ученый

Ученый (статус: 8-ой класс), 27 декабря 2008, 19:34 [#1]:

Якакутов Евгений Михайлович, Приложение для того и есть, что бы не загромождать форум большими фрагментами кода, а вы получается делаете двойную работу, размещая код и в приложении и в вопросе...
Якакутов Евгений Михайлович

Якакутов Евгений Михайлович (статус: Посетитель), 27 декабря 2008, 19:47 [#2]:

Понял!извиняюсь!больше не повторится!
min@y™

min@y™ (статус: Доктор наук), 27 декабря 2008, 19:49 [#3]:

Ты чо, издеваешься? Я уже один кусок откомментировал, а ты тут второй уже вывалил. Сколько их у тебя там?
Делаю лабы и курсачи по Delphi и Turbo Pascal. За ПИВО! Пишите в личку, а лучше в аську. А ещё лучше - звоните в скайп!
Якакутов Евгений Михайлович

Якакутов Евгений Михайлович (статус: Посетитель), 27 декабря 2008, 19:52 [#4]:

)))Ещё один имеется!Я просто готовлюсь к сдаче зачёта,вот только щас понял что надо было учиться!мне надо сдать пять лаб,три есть,но нужно объяснение,а две ещё писать нужно,вот и сижу,мучаюсь!
min@y™

min@y™ (статус: Доктор наук), 27 декабря 2008, 20:08 [#5]:

Цитата:


только щас понял что надо было учиться

Пробухал весь семестр?! Молодец! Прямо, как я в молодости! Думаю, что я стал айтишником только благодаря своему раздолбайству и пьянству. Ты представляешь, ко мне на консультацию ЗАПИСЫВАЮТСЯ люди, которым в 2 - 2.5 раза больше ЛЕТ.

ТАК ДЕРЖАТЬ! СНГ!
Делаю лабы и курсачи по Delphi и Turbo Pascal. За ПИВО! Пишите в личку, а лучше в аську. А ещё лучше - звоните в скайп!
Якакутов Евгений Михайлович

Якакутов Евгений Михайлович (статус: Посетитель), 27 декабря 2008, 20:13 [#6]:

)))ого!да вот ме бы сдать этот послежний зачёт,следующий семестр планирую взяться за голову и всё время отдавать учёб,а то так не дело!
min@y™

min@y™ (статус: Доктор наук), 27 декабря 2008, 20:22 [#7]:

Цитата:


вот ме бы сдать этот послежний зачёт,следующий семестр планирую взяться за голову и всё время отдавать учёб,а то так не дело!


Вово, я тоже так себе говорил во время каждой сессии!
Делаю лабы и курсачи по Delphi и Turbo Pascal. За ПИВО! Пишите в личку, а лучше в аську. А ещё лучше - звоните в скайп!
Якакутов Евгений Михайлович

Якакутов Евгений Михайлович (статус: Посетитель), 27 декабря 2008, 20:26 [#8]:

Ну так не дело тоже,щас сижу,и ничего толком не разберу как и что!
Якакутов Евгений Михайлович

Якакутов Евгений Михайлович (статус: Посетитель), 27 декабря 2008, 20:30 [#9]:

Большое спасибо!

Чтобы оставлять сообщения в мини-форумах, Вы должны авторизироваться на сайте.

Версия движка: 2.6+ (26.01.2011)
Текущее время: 22 февраля 2025, 11:37
Выполнено за 0.03 сек.