СБ
Сергей Боровый

вычисления значение функции с использованием операторов case и if.. почему ошибка?

Program Phunkciya;
Uses crt;
var b,n,x : integer;
Begin
Clrscr;
write('Vvedite n,x :');
readln(n,x);
case n of
1 : b:=x+1;
2 : b:=ln(x+n);
3 : if n<>3 then b:=cos(x-1);
else if not b in [1,2,3] then b:=cos(x-1);
end;
writeln('b= ',b);
readln;

end.

ИГ
Ирина Гончаренко

b := ln(x+n);

ln(x+n) - real
b - integer

вот в чем ошибка

Истеричка
Истеричка

нельзя присвоить результат функции ln целой переменной b
нельзя присвоить результат функции cos целой переменной b
в выражении not b in [1,2,3] не хватает скобок вокруг b in [1,2,3], да и сама эта проверка лишняя, потому что она уже в ветке else

ТТ
Татьяна Татьяна

Все индусские кодеры так начинали 🙂

if (flag = false) then
begin
if (false = true) then exit; //на всякий случай
...
end;

Похожие вопросы
Как работает оператор case?
Вычисление значений функции для нескольких значений аргументов и параметров. turbo pascal
C++Выполнить задания двумя способами: с использованием оператора if и с использованием условного оператора ?.
Составить схему алгоритма и программу для вычисления значения функции.
pascal ABC (оператор case)
Почему не работает оператор If.
javascript:(ошибка оператора прерывания функции)
Составить алгоритм вычисления значений функции
помогите с языком программирования (if case)
составить алгоритм вычисления значения следующей функции