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

Технический форум (http://www.tehnari.ru/)
-   Помощь студентам (http://www.tehnari.ru/f41/)
-   -   Разветвляющийся алгоритм в Паскале (http://www.tehnari.ru/f41/t33813/)

tema001 06.03.2010 17:39

Разветвляющийся алгоритм в Паскале
 
Вычислить значение Y:=Y1+sqr(Y2), где Y1:=(sqr(x)-sin(x)/cos(x))/3,если (0<X<5), или Y1:=exp(0.5*ln(sqr(x)+5)), если (X≥5), или «Нет решений» в противном случае, а Y2:=ln(X)+1.

AlexZir 06.03.2010 18:34

Примерно так:
Код:

program calc;
var y, y1, y2, x:real;
begin
  writeln('Input x');
  readln(x);
  if x<=0
  then writeln('Нет решений')
  else
    begin
    y2:=...;
    if x>=5
        then y1:=...
        else y1:=...;
    y:=y1+sqr(y2);
    writeln('y=',y);
    end;
readln;
end.

Формулы не прописывал намеренно, сами напишите, сделал только логические связки. Должны ведь и вы внести свой вклад в выполнение задания.

Vladimir_S 06.03.2010 18:48

Цитата:

Сообщение от tema001 (Сообщение 303856)
Вычислить значение Y:=Y1+sqr(Y2), где Y1:=(sqr(x)-sin(x)/cos(x))/3,если (0<X<5), или Y1:=exp(0.5*ln(sqr(x)+5)), если (X≥5), или «Нет решений» в противном случае, а Y2:=ln(X)+1.

И Вам здравствуйте, дорогой Тёма, самый первый из тысячи Тём. Столь вежливо изложенная просьба, разумеется, не может остаться без ответа.
Код:

VAR
 x,Y,Y1,Y2:REAL;
BEGIN
 Write('x= ');
 ReadLn(x);
 If x<=0 then WriteLn('No solution')
 else
 begin
  Y2:=ln(x)+1;
  if x>=5.0 then Y1:=exp(0.5*ln(sqr(x)+5))
  else
  Y1:=(sqr(x)-sin(x)/cos(x))/3;
  Y:=Y1+sqr(Y2);
  WriteLn(Y);
 end;
 ReadLn;
END.

Больше никаких распоряжений не будет? Обращайтесь, если что.

P.S. Ну вот видите - сразу два программиста откликнулись! Можем еще привлечь, если надо!

tema001 14.04.2010 21:54

Большое спасибо!!!


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

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