Технический форум
Вернуться   Технический форум > Программирование > Форум программистов > Delphi, Kylix and Pascal


Ответ
 
Опции темы Опции просмотра
Старый 14.05.2014, 11:33   #11 (permalink)
Vladimir_S
Специалист
 
Регистрация: 27.08.2008
Адрес: Санкт-Петербург
Сообщений: 27,807
Сказал(а) спасибо: 340
Поблагодарили 583 раз(а) в 208 сообщениях
Репутация: 113184
По умолчанию

Уф, ну, вроде, довел я это дело до ума. Получите:
Код:
program diplom;
const
 Nmax=200;
var
 f1,f2:text;
 t_k:Array[1..Nmax] of real;
 t_k0,t_g,dt_g,t_g0,dt_k,t_kk,w_0f,d,p_u,H_z,dH,dt,t_kn,
 t,c_k,c_g,k_v,H:real;
 i,j,k,it,n:integer;
begin
 assign(f1,'diplom.dat');
 assign(f2,'diplom_1.res');
 reset(f1);
 rewrite(f2);
 readln(f1,t_k0,t_g0,t_kk,w_0f,d,p_u,H_z,dH,dt);
 n:=round(H_z/dH);
 it:=5;
 for j:=1 to n do
  begin
   t_k[j]:=t_k0;
  end;
 i:=0;
 repeat
  i:=i+1;
  t:=dt*i;
  t_g:=t_g0;
  dt_g:=0;
  for j:=1 to n do
   begin
    c_k:=0.59+(3.43*1e-3)*t_k[j]-(2.57*1e-6)*sqr(t_k[j])+
                               (8.18*1e-10)*exp(ln(t_k[j])*3);
    c_g:=1.312+(2.93*1e-4)*t_g;
    for k:=1 to it do
     begin
      k_v:=0.025*exp(ln(w_0f)*0.9)*exp(ln(t_g+0.5*dt_g+273)*0.3)/
                                                     exp(ln(d)*0.75);
      dt_k:=k_v*(t_k[j]-t_g-0.5*dt_g)*dt/(p_u*c_k+0.5*k_v*dt);
      dt_g:=k_v*(t_k[j]-t_g-0.5*dt_k)*dH/(w_0f*c_g+0.5*k_v*dH);
     end;
    t_k[j]:=t_k[j]-dt_k;
    t_g:=t_g+dt_g;
   end;
 until t_k[n]<=t_kk;
 writeln(f2,'t= ',t:0:3);
 writeln(f2);
 for j:=1 to n do
  writeln(f2,'H= ' ,dH*j:7:5,'  t_k= ' ,t_k[j]:7:2);
 close(f1);
 close(f2);
end.
Результат:

Код:
t= 11880.000

H = 0.15       t_k = 180.000
H = 0.30       t_k = 180.000
H = 0.45       t_k = 180.000
H = 0.60       t_k = 180.001
H = 0.75       t_k = 180.002
H = 0.90       t_k = 180.003
H = 1.05       t_k = 180.005
H = 1.20       t_k = 180.008
H = 1.35       t_k = 180.012
H = 1.50       t_k = 180.017
H = 1.65       t_k = 180.025
H = 1.80       t_k = 180.036
H = 1.95       t_k = 180.050
H = 2.10       t_k = 180.069
H = 2.25       t_k = 180.093
H = 2.40       t_k = 180.125
H = 2.55       t_k = 180.165
H = 2.70       t_k = 180.216
H = 2.85       t_k = 180.279
H = 3.00       t_k = 180.358
H = 3.15       t_k = 180.455
H = 3.30       t_k = 180.574
H = 3.45       t_k = 180.719
H = 3.60       t_k = 180.894
H = 3.75       t_k = 181.104
H = 3.90       t_k = 181.356
H = 4.05       t_k = 181.655
H = 4.20       t_k = 182.009
H = 4.35       t_k = 182.426
H = 4.50       t_k = 182.915
H = 4.65       t_k = 183.486
H = 4.80       t_k = 184.150
H = 4.95       t_k = 184.919
H = 5.10       t_k = 185.805
H = 5.25       t_k = 186.824
H = 5.40       t_k = 187.990
H = 5.55       t_k = 189.319
H = 5.70       t_k = 190.828
H = 5.85       t_k = 192.536
H = 6.00       t_k = 194.461
H = 6.15       t_k = 196.623
H = 6.30       t_k = 199.041
H = 6.45       t_k = 201.736
H = 6.60       t_k = 204.728
H = 6.75       t_k = 208.036
H = 6.90       t_k = 211.679
H = 7.05       t_k = 215.676
H = 7.20       t_k = 220.044
H = 7.35       t_k = 224.798
H = 7.50       t_k = 229.951
H = 7.65       t_k = 235.514
H = 7.80       t_k = 241.497
H = 7.95       t_k = 247.905
Vladimir_S вне форума   Ответить с цитированием

Старый 14.05.2014, 11:33
Helpmaster
Member
 
Аватар для Helpmaster
 
Регистрация: 08.03.2016
Сообщений: 0

Посмотрите аналогичные темы на нашем форуме

Написание программы через процедуры и функции
Написание программы через процедуры и функции. Паскаль

Ads

Яндекс

Member
 
Регистрация: 31.10.2006
Сообщений: 40200
Записей в дневнике: 0
Сказал(а) спасибо: 0
Поблагодарили 0 раз(а) в 0 сообщениях
Репутация: 55070
Ответ


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

BB коды Вкл.
Смайлы Вкл.
[IMG] код Выкл.
HTML код Выкл.
Trackbacks are Вкл.
Pingbacks are Вкл.
Refbacks are Выкл.




Часовой пояс GMT +4, время: 22:55.

Powered by vBulletin® Version 6.2.5.
Copyright ©2000 - 2014, Jelsoft Enterprises Ltd.