• Добро пожаловать на компьютерный форум Tehnari.ru. Здесь разбираемся с проблемами ПК и ноутбуков: Windows, драйверы, «железо», сборка и апгрейд, софт и безопасность. Форум работает много лет, сейчас он переехал на новый движок, но старые темы и аккаунты мы постарались сохранить максимально аккуратно.

    Форум не связан с магазинами и сервисами – мы ничего не продаём и не даём «рекламу под видом совета». Отвечают обычные участники и модераторы, которые следят за порядком и качеством подсказок.

    Если вы у нас впервые, загляните на страницу о форуме и правила – там коротко описано, как задать вопрос так, чтобы быстро получить ответ. Чтобы создавать темы и писать сообщения, сначала зарегистрируйтесь, а затем войдите под своим логином.

    Не знаете, с чего начать? Создайте тему с описанием проблемы – подскажем и при необходимости перенесём её в подходящий раздел.
    Задать вопрос Новые сообщения Как правильно спросить
    Если пришли по старой ссылке со старого Tehnari.ru – вы на нужном месте, просто продолжайте обсуждение.

Разветвляющийся алгоритм в Паскале

  • Автор темы Автор темы tema001
  • Дата начала Дата начала

tema001

Ученик
Регистрация
14 Янв 2010
Сообщения
4
Реакции
0
Баллы
0
Разветвляющийся алгоритм в Паскале

Вычислить значение 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.
 
Примерно так:
Код:
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.
Формулы не прописывал намеренно, сами напишите, сделал только логические связки. Должны ведь и вы внести свой вклад в выполнение задания.
 
Вычислить значение 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. Ну вот видите - сразу два программиста откликнулись! Можем еще привлечь, если надо!
 
Большое спасибо!!!
 
Назад
Сверху