Показать сообщение отдельно

  #10  
Старый 29.05.2007, 01:46
valiko
Участник форума
Регистрация: 28.01.2007
Сообщений: 153
С нами: 10149547

Репутация: 452
По умолчанию

Цитата:
Сообщение от _-[A.M.D]HiM@S-_  
2. Вычислить Z = (X1 + Y1) / (Х2 - Y2), где Х1 и Х2 - корни уравнения 2x2 +x – 4=0;Y1 и Y2 – корни уравнения ay2 + 2у - 1 = 0. (Все корни действительные).
Код:
uses crt;
const
  eps = 10E-9;
procedure sqr_urav(a,b,c:double;var x1,x2:double);
var
d,t,y,u:double;
r:real;
begin

  if abs(a) < eps then
     begin
      if abs(b) < eps then
         begin
          if abs(c) < eps then
             writeln('infinitnoye mnojestvo')
          else
             writeln('korney net');
          end
      else
       begin
          x1:=-c/b;
          writeln('koren ',x1);
       end;
     end
  else
   begin
    d:=(sqr(b)-4*a*c);
    t:=sqrt(d);
    if (d<0) then writeln('deystvitelnyh korney net')
     else
      begin
       x1:=(-b-t)/(2*a);
       x2:=(-b+t)/(2*a);
      end;
  end;
end;

var a,b,c,x1,x2,y1,y2,z:double;

begin
  clrscr;
{2x2+x-4=0}
  sqr_urav(2,1,-4,x1,x2);
  writeln('x1= ',x1);
  writeln('x2= ',x2);
  writeln;
{ay2+2y-1=0}
  write('a= '); readln( a );
  sqr_urav(a,2,-1,y1,y2);
  writeln('y1= ',y1);
  writeln('y2= ',y2);
{z=(x1+y1)/(x2-y2)}
  z:=(x1+y1)/(x2-y2);
  writeln;
  writeln('z=(x1+y1)/(x2-y2)=',z);
  readln;
end.
 
Ответить с цитированием