Технический форум

Технический форум (http://www.tehnari.ru/)
-   Delphi, Kylix and Pascal (http://www.tehnari.ru/f43/)
-   -   Уравнение с двумя аргументами (http://www.tehnari.ru/f43/t250685/)

Alexey123 11.12.2016 16:57

Уравнение с двумя аргументами
 
Вложений: 2
Нужна запись кода(на языке Pascal) к данному уравнению. Мне оно оказалось не по зубам, надеюсь кто - нибудь поможет.

P.S.: Извините за перевернутое изображение, мне оно такое досталосьtehno036

AlexZir 11.12.2016 17:06

И в чем трудность? Как изображение перевернуть, что ли?

Откуда берутся a и b?

Для начала определите ОДЗ функции, потом проверьте по условию, попадают ли введённые значения a и b в ОДЗ, затем вычисляйте.

Alexey123 11.12.2016 18:21

С одз все нормально.
 
Надо написать программу, которая находит значение данного выражения

Vladimir_S 11.12.2016 18:42

Цитата:

Сообщение от Alexey123 (Сообщение 2443082)
Надо написать программу, которая находит значение данного выражения

Детский сад прямо какой-то... И кто мешает? Ладно, изображение я перевернул, но возникает вопрос: что за закорючка в числителе первой дроби между |a+b|и (a+b)? Умножение? Но тогда почему нельзя сократить (a+b) в числителе и знаменателе? И вообще, исходное выражение можно существенно упростить. Или запрещено?

Alexey123 11.12.2016 19:21

Исходное выражение нельзя упрощать.

Vladimir_S 11.12.2016 20:58

Цитата:

Сообщение от Alexey123 (Сообщение 2443098)
Исходное выражение нельзя упрощать.

Понятно.
Ладно, получите:
Код:

Var
 a,b,y:Real;
 c:boolean;

Begin
 Repeat
  c:=true;
  Write('a = ');
  Readln(a);
  Write('b = ');
  Readln(b);
  if a=b then
  begin
    c:=false;
    Writeln('Error: a can not be equal to b!');
  end
  else
  if a=-b then
  begin
    c:=false;
    Writeln('Error: a can not be equal to -b!');
  end
  else
  if a=0 then
  begin
    c:=false;
    Writeln('Error: a can not be equal to 0!');
  end
  else
  if b=0 then
  begin
    c:=false;
    Writeln('Error: b can not be equal to 0!');
  end
  else
  if a=-1 then
  begin
    c:=false;
    Writeln('Error: a can not be equal to -1!');
  end
  else
  if b=1 then
  begin
    c:=false;
    Writeln('Error: b can not be equal to 1!');
  end
  else
  if b=2 then
  begin
    c:=false;
    Writeln('Error: b can not be equal to 2!');
  end;
 Until c;

 y:=Abs(a+b)*(a+b)/((a+b)/(a-b))+(1.0+1.0/(1.0+1.0/a))/Sqr(2.0-2.0/(2.0-2.0/b));
 Writeln('y = ',y:0:5);
 Readln
End.


Alexey123 11.12.2016 22:21

Спасибо! Это как раз то, что надо!


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

Powered by vBulletin® Version 4.5.3
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.