Mail.ruПочтаМой МирОдноклассникиВКонтактеИгрыЗнакомстваНовостиПоискОблакоVK ComboВсе проекты

Переведите пожалуйста программу из питона в паскаль

Vlad Krut Ученик (151), на голосовании 2 месяца назад
T= [0]*21
A= [0]*21
t0=10 #начальная температура
d=0.005 # расстояние между центрами
r=0.002 #ширина ребра
c=0.2 #длина |||
e=0.9 #эпсилон
s=5.67*(10) **(-8)#сигма
h=200 #лямбда
p=2700 #плотность
m=p*r*d*c #масса
ce=900 #теплоемкость
f=r*c #площать соприкосновения
fp=c*d #верхняя площадь
o=0.01/(ce*m)
h=(h*f)/d
for _ in range(1,200):
A[1]=T[1]+o*((2*T[2]+(t0+273)-3*T[1])*(h/(2))-e*fp*s*((T[1]+273) **(4)))
print('A[1]',A[1],' ')
for i in range (2,19):
A[i]=T[i]+o*((T[i+1]+T[i-1]-2*T[i])*h-e*s*fp*((T[i]+273) **(4)))
print('a[i]',A[i],' ')
A[20]=T[20]+o*((2*T[19]+(t0+273)-3*T[20])*(h/2)-e*fp*s*((T[20]+273) **(4)))
print('a[20]',A[20],' ')
for i in range(1,20):
T[i]=A[i]
print (' ')
Голосование за лучший ответ
PROSTO_TEM4IK Профи (806) 3 месяца назад
Вот так ваш код будет выглядеть на языке Pascal:

var
T: array[1..21] of Real;
A: array[1..21] of Real;
t0: Real;
d: Real;
r: Real;
c: Real;
e: Real;
s: Real;
h: Real;
p: Real;
m: Real;
ce: Real;
f: Real;
fp: Real;
o: Real;
i: Integer;

begin
t0 := 10;
d := 0.005;
r := 0.002;
c := 0.2;
e := 0.9;
s := 5.67E-8;
h := 200;
p := 2700;
m := p*r*d*c;
ce := 900;
f := r*c;
fp := c*d;
o := 0.01/(ce*m);
h := (h*f)/d;
for i := 1 to 200 do
begin
A[1] := T[1] + o*((2*T[2]+(t0+273)-3*T[1])*(h/(2))-e*fp*s*Power(T[1]+273, 4));
Writeln('A[',1,']:', A[1]);

for i:= 2 to 19 do
begin
A[i] := T[i] + o*((T[i+1]+T[i-1]-2*T[i])*h-e*s*fp*Power(T[i]+273, 4));
Writeln('A[',i,']:', A[i])
end;

A[20] := T[20] + o*((2*T[19]+(t0+273)-3*T[20])*(h/2)-e*fp*s*Power(T[20]+273, 4));
Writeln('A[20]:', A[20]);

for i:=1 to 20 do
begin
T[i] := A[i];
end;

Writeln();
end;
end
КубленОракул (95936) 3 месяца назад
вот это действительно прикольно
t0: Real;
d: Real;
r: Real;
c: Real;
e: Real;
s: Real;
h: Real;
p: Real;
m: Real;
ce: Real;
f: Real;
fp: Real;
o: Real; а объединить нельзя было
Кублен, некоторым платят за строчки кода. Чатгпт учится именно на их говнокоде.
Александр Дзен Мыслитель (5009) 3 месяца назад
Вот перевод программы на язык Паскаль:

```pascal
program ThermalSimulation;

var
T: array[1..21] of Real;
A: array[1..21] of Real;
t0, d, r, c, e, s, h, p, m, ce, f, fp, o: Real;
i: Integer;

begin
t0 := 10; // начальная температура
d := 0.005; // расстояние между центрами
r := 0.002; // ширина ребра
c := 0.2; // длина |||
e := 0.9; // эпсилон
s := 5.67E-8; // сигма
h := 200; // лямбда
p := 2700; // плотность
m := p * r * d * c; // масса
ce := 900; // теплоемкость
f := r * c; // площадь соприкосновения
fp := c * d; // верхняя площадь
o := 0.01 / (ce * m);
h := (h * f) / d;

for i := 1 to 21 do
begin
A[i] := 0;
T[i] := 0;
end;

for i := 1 to 200 do
begin
A[1] := T[1] + o * ((2 * T[2] + (t0 + 273) - 3 * T[1]) * (h / 2) - e * fp * s * Power(T[1] + 273, 4));
Writeln('A[1]: ', A[1]);

for i := 2 to 19 do
begin
A[i] := T[i] + o * ((T[i + 1] + T[i - 1] - 2 * T[i]) * h - e * s * fp * Power(T[i] + 273, 4));
Writeln('A[', i, ']: ', A[i]);
end;

A[20] := T[20] + o * ((2 * T[19] + (t0 + 273) - 3 * T[20]) * (h / 2) - e * fp * s * Power(T[20] + 273, 4));
Writeln('A[20]: ', A[20]);

for i := 1 to 20 do
T[i] := A[i];

Writeln;
end;
end.
```

Примечание: Я не знаю, какая версия Паскаля вы используете, поэтому в данном переводе использован синтаксис Turbo Pascal. Если у вас используется другая версия Паскаля, вам может потребоваться внести некоторые изменения в синтаксис.
Dav Gasparyan Ученик (188) 3 месяца назад
 var T: array0..20 of real; 
A: array0..20 of real;
t0: real = 10; {начальная температура}
d: real = 0.005; {расстояние между центрами}
r: real = 0.002; {ширина ребра}
c: real = 0.2; {длина |||}
e: real = 0.9; {эпсилон}
s: real = 5.67e-8; {сигма}
h: real = 200; {лямбда}
p: real = 2700; {плотность}
m: real = p * r * d * c; {масса}
ce: real = 900; {теплоемкость}
f: real = r * c; {площадь соприкосновения}
fp: real = c * d; {верхняя площадь}
o: real = 0.01 / (ce * m);
begin
h := h * f / d;
for i := 0 to 20 do
begin
Ti := 0;
Ai := 0;
end;
for i := 1 to 200 do
begin
A1 := T1 + o * ((2 * T2 + (t0 + 273) - 3 * T1) * (h / 2) - e * fp * s * Power(T1 + 273, 4));
writeln('A1: ', A1, ' ');
for j := 2 to 19 do
begin
Aj := Tj + o * ((Tj+1 + Tj-1 - 2 * Tj) * h - e * s * fp * Power(Tj + 273, 4));
writeln('A', j, ': ', Aj, ' ');
end;
A20 := T20 + o * ((2 * T19 + (t0 + 273) - 3 * T20) * (h / 2) - e * fp * s * Power(T20 + 273, 4));
writeln('A20: ', A20, ' ');
for j := 1 to 20 do
begin
Tj := Aj;
end;
writeln(' ');
end;
end.
Oka Гуру (3411) 3 месяца назад
А сам не пробовал? И где пробелы?
Похожие вопросы