• Пожалуйста помогите. Очень надо срочно! Всего лишь нужно найти ошибку. Не пугайтесь объема вопроса. Составьте программы на языке
    Turbo Pascal с использованием цикла с предусловием, с постусловием,
    используя, условный оператор IF.
    . Вычислите значения функции У:(картинка).
    Решение:
    1 способ.
    program funk_F1;
    var x,t,y:real;
    begin
    t:=0;
    while t<=6 do begin
    if t<=1 then x:=2*t-6 else
    if t>=3 then x:=ln(1+t*t) else
    x:=sqrt(t)+ln(t);
    y:=2.2*exp(4*ln(x))+0.3*x;
    writeln('y(',t:2:1, ')=', y:6:2);
    t:=t+0.5;
    end;
    readln;
    end.
    2 способ.
    program funk_F2;
    var x,t,y:real;
    begin
    t:=0;
    repeat
    if t<=1 then x:=2*t-6 else
    if t>=3 then x:=ln(1+t*t)else
    x:=sqrt(t)+ln (t);
    y:=2.2*exp(4*ln(x))+0.3*x;
    writeln('y(',t:2:1, ')=', y:6:2);
    t:=t+0.5;
    until x>6;
    readln;
    end.
    Пишет что в 9 строчке ошибка. В чем она заключается не могу понять.

    question img

Ответы 1

  • Скорее всего, ошибка у Вас получается уже на этапе выполнения программы, потому что синтаксических ошибок нет. Вы напрасно использовали конструкцию exp(4*ln(x)) - в Вашем случае правильнее и эффективнее использовать sqr(sqr(x))В самом деле, при t=0 значение x=2t-6 будет равно -6, и попытка вычислить логарифм от -6 закончится печально. Полагаю, это и есть причина выдачи сообщения об ошибке, текст которого Вы почему-то не сочли нужным приложить.
  • Добавить свой ответ

Войти через Google

или

Забыли пароль?

У меня нет аккаунта, я хочу Зарегистрироваться

How much to ban the user?
1 hour 1 day 100 years