|
|
Регистрация | << Правила форума >> | FAQ | Пользователи | Календарь | Поиск | Сообщения за сегодня | Все разделы прочитаны |
|
Опции темы | Поиск в этой теме | Опции просмотра |
#1
|
|||
|
|||
(Delphi) Вычисление температуры электрического прибора охлаждаемого воздухом
День добрый, друзья. Пришел с проблемой.
Сразу оговорюсь что программировать на Делфи не умею вообще. но случилось так что поступив в институт, выдали такое задание. при чем не учили не чему- якобы компов нет, и вообще просто ищите учебник по делфи и делайте. Я нашел "делфи в задачах и примерах". из него скоротал как то интерфейс для ввода данных и начал собирать тело программы. (графики пока прикручивать не хочу, вроде это не сложно) пока надо сделать вывод просто числового значения. так вот появилась куча вопросов по ходу решения их я отметил комментариями. если не трудно, объясните что к чему. работу надо сдавать скоро((( Само задание прикрепил вложением! вот мои наработки. вроде программа должна быть не сложная, но я как то пока осилить не могу((( Код:
unit Unit1; interface uses Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, StdCtrls; type TForm1 = class(TForm) Label1: TLabel; Label2: TLabel; Label3: TLabel; Label4: TLabel; Label5: TLabel; Edit1: TEdit; Edit2: TEdit; Edit3: TEdit; Edit4: TEdit; Edit5: TEdit; Button1: TButton; Memo1: TMemo; procedure Button1Click(Sender: TObject); private { Private declarations } public { Public declarations } end; var Form1: TForm1; implementation {$R *.dfm} var c, N, aF, Tg, d, t, T0, tmax, dt: real ; i, j:integer; procedure TForm1.Button1Click; begin c:=StrToFloat(Form1.Edit1.Text); N:=strtofloat(Form1.edit2.Text); aF:=strtofloat(Form1.edit3.Text); Tg:=strtofloat(Form1.edit4.Text); tmax:=strtofloat(Form1.edit5.Text); {ограничил вычисления сверху} t:=0; {начальное время - условие задачи} {как-то надо определиться с параметрами интегрирования} {задать dt и вычислить j:=tmax/dt? добавить функцию перевода из real в integer?} ИЛИ {или задать j и вычислить dt:=tmax/j}??? T:=T0; for i:=1 to j do begin t:=t+dt; T:=T+(dt/C)*(N{если N(t) функция то здесь должно быть зчение этой функции при текущем значении t, но как она меняется из условия задачи не понятно(((}-aF*(T-Tg)); end; Label5.Caption:=FloatToStr(T) end; end. |
#2
|
|||
|
|||
Ну у тебя же все написано в задании. Вычислять методом Эйлера. И формула дана.
|
#3
|
|||
|
|||
ну вроде понятно. я и начинаю вписывать формулу. но сразу возникают вопросы, которые я отметил в комментариях. беда в том что и матан и программирование не очень к сожалению. к примеру каким должно быть условие выхода из цикла?
п.с. или то что я пытаюсь написать это вообще не то? |
#4
|
|||
|
|||
ну что ребят, выручайте! нет никаких мыслей?
|