Помощь - Поиск - Пользователи - Календарь
Полная версия: Как переделать вычисления значения
Форум «Всё о Паскале» > Pascal, Object Pascal > Задачи
Lamerok
Вообщем вот такая программа
Program Lab4;
const
N=0;
M=80;
Var
K,l:integer;
i:real;
x1:integer;
x2:integer;
Res:integer;
P1,P2,P3:real;
mem:text;
y:real;
x:array[1..2,1..M] of real;
Begin
x1:=0;
x2:=0;
writeln('Program started');
i:=N-35;
while i<=(N+5) do
begin
if(i>0) then
x[1,x1]:=(i-7)/(4*i-5)
else
x[1,x1]:=exp(ln((-1)*i)*2/3)/(i-1);
writeln('1 x= ', x[1,x1]:2 :2, ' i= ', i:2 :0);
write(' ');
i:=i+1.5;
x1:=x1+1;
end;
i:=N-30;
while i<=(N+10) do
begin
if(i>=0) then
x[2,x2]:=(i-7)/(4*i-5)
else
x[2,x2]:=exp(ln((-1)*i)*2/3)/(i-1);
writeln('2 x= ', x[2,x2]:2 :2, ' i= ', i:2 :0);
write(' ');
x2:= x2+1;
i:=i+0.5;
end;
P2:=1;
P3:=1;
for K:=0 to x1 do
if(x[1,K]>0) then
begin
P1:=x[1,K];
P3:=P3*x[1,K];
end
else
begin
P2:=P2+1;
if(x[2,K]<>0) then
P3:=P3*x[2,K];
end;
for K:=0 to x1 do
if(x[1,K]>0) then
if(x[1,k]>P1) then
P1:=x[1,K];
for K:=0 to x2 do
if(x[2,K]>0) then
if(x[2,K]>P1) then
P1:=x[2,K];
writeln(' ');
writeln('P1 = ', P1:2 :2);
writeln('P2 = ', P2:2 :2);
writeln('P3 = ', P3:5:5);
y:= (P1*P2)/(P1+P2)+P3;
writeln('y = ', y:5:5);
assign(mem,'mas.txt');
rewrite (mem);
writeln (mem,'First part');
for K:=0 to x1 do
begin
write(mem, x[1,K]:3 :5);
writeln(mem,'');
end;
writeln(mem,'second part');
for K:=0 to x2 do
begin
write(mem, x[2,k]:3 :5);
writeln(mem,'');
end;
write(mem,'P1 = ');
writeln(mem, P1:5 :5);
write(mem,'P2 = ');
writeln(mem, P2:5:5);
write(mem,'P3 = ');
writeln(mem, P3:5:5);
write(mem,'y = ');
writeln(mem, y:5:5);
close(mem);
readln;
end.

Вычисление значения Y выполнить в виде процедуры,а вычисление элементов таблицы с помощью функций.Незнаю как ето сделатьsad.gif
Rian
это только мне программа не умещающаяся не только в высоту экрана, но и в ширину кажется трудно читаемой?
при полном отсутствии коментариев
и все таки что же она должна делать? и какой частью кода?
TarasBer
Думаю, что это из-за табов, и что у автора на экране отступы нормальные.
Это текстовая версия — только основной контент. Для просмотра полной версии этой страницы, пожалуйста, нажмите сюда.