program lol; 
var x,a,b,d,y,h1,h2,h3,h4,h5,h6,h7,h8,h9,h10,h11,h12,h13,h14,h15,h16:real; 
begin 
writeln('Введите значения'); 
readln(x,a,b,d); 
h1:=x*x*x*a*a; 
h3:=exp(ln(cos(h1))*x); 
h2:=3*h3; 
h4:=(x-exp(ln(b)*5)); 
h5:=exp(ln(sin(h4))*4); 
h6:=abs(5*a*h5); 
h7:=exp(ln(sin(h6))*(2*x)); 
h8:=h2+h7; 
h9:=(a-exp(ln(d)*4)); 
h10:=abs(h9); 
h11:=exp(ln(sin(x+6))*3); 
h12:=(7*a+h11); 
h13:=sqrt(h12); 
h14:=h10*h13+d; 
h15:=sqrt(h8/h14); 
h16:=exp(ln(sin(x))*3); 
y:=h15*h16; 
writeln('y= ',y); 
end. 
выдает ошибку в 7 строчке неверная вещественная операция(Program1 pas) переменные:x=2 a=1 b=3 d=3

Приложения:

Ответы

Ответ дал: archery
0

program lol;
var y,h1,h2,h3,h4,h5,h6:real;
x,a,b,d:integer;
function pow(x:real; n:integer):real;
var sign:integer;
begin
  if (x<0) and (n mod 2 <> 0) then sign := -1 else sign := 1;
  pow := sign * exp(ln(abs(x))*n);
end;

begin
  writeln('Введите значения');
  {readln(x,a,b,d); }
  x:=2;a:=1;b:=3;d:=3;
  h1:=x*x*x*a*a;
  h1:=3*pow(cos(h1),x);
  h2:=x-pow(b,5);
  h2:=pow(sin(h2),4);
  h2:=abs(5*a*h2);
  h2:=pow(sin(h2),2*x);
  h2:=h1+h2;
  h3:=a-pow(d,4);
  h4:=abs(h3);
  h5:=pow(sin(x+6),3);
  h5:=7*a+h5;
  h5:=sqrt(h5);
  h5:=h4*h5+d;
  h5:=sqrt(h2/h5);
  h6:=pow(sin(x),3);
  writeln(h1,h2,h3,h4,h5,h6);
  y:=h5*h6;
  writeln('y= ',y);
end.

 

накрутил ты там короче

а основная ошибка была в том что нельзя брать логорифм от отрицательного числа

Вас заинтересует