Loading [MathJax]/extensions/Safe.js
Образовательный форум - онлайн помощь в учебе
Помощь в решении задач => Программирование => Тема начата: Walker от 13 Апреля 2011, 00:28:40
-
Задание
1)составить алгоритм и программу вычисления функций
\( f(x)=\begin{cases}
& \text 2sin\frac{3x}{4} , \: if \: x\leq \frac{\pi }{2} \\
& \text (\frac{x}{2})\tan \frac{x+1}{3} , \: if\: x> \frac{\pi }{2}
\end{cases} \)
2)в тех случаях,когда тангенс не имеет значений, вывести сообщение "функции не существует".
меня интересует вопрос как выполнить вторую часть задания?
программа получилась следующая
Program T;
var
x,f:real;
begin {T}
write('vvedite zna4enie x=');
ReadLn(x);
if x<=Pi/2 then f:=2*sin((3*x)/4);
if x>Pi/2 then f:=(x/2)*(sin((x+1)/3)/cos((x+1)/3));
writeln('f=',f);
end. {T}
-
Задание
1)составить алгоритм и программу вычисления функций
\( f(x)=\begin{cases}
& \text 2sin\frac{3x}{4} , \: if \: x\leq \frac{\pi }{2} \\
& \text (\frac{x}{2})\tan \frac{x+1}{3} , \: if\: x> \frac{\pi }{2}
\end{cases} \)
2)в тех случаях,когда тангенс не имеет значений, вывести сообщение "функции не существует".
меня интересует вопрос как выполнить вторую часть задания?
программа получилась следующая
Program T;
var
x,f:real;
begin {T}
write('vvedite zna4enie x=');
ReadLn(x);
if x<=Pi/2 then f:=2*sin((3*x)/4);
if x>Pi/2 then f:=(x/2)*(sin((x+1)/3)/cos((x+1)/3));
writeln('f=',f);
end. {T}
if x<=Pi/2 then f:=2*sin((3*x)/4);
Вставь проверку кратности Х периоду тангенса - (Х-Pi/2)/Pi должно быть целым.
И его пропускай. Пробно проверь, чтобы проверка работала.
if x>Pi/2 then f:=(x/2)*(sin((x+1)/3)/cos((x+1)/3));
-
А можешь поподробнее объяснить каким образом проверку сделать? А то я мало в паскале понимаю :)
-
Там есть функции выделения целой и дробной части.
Период тангенса Pi, от нуля смещение Pi/2.
Надо проверять (Х-Pi/2)/Pi.
Выделяешь целую С=[(Х-Pi/2)/Pi], потом если C*Pi=(Х-Pi/2)/Pi обходишь
goto L
if x>Pi/2 then f:=(x/2)*(sin((x+1)/3)/cos((x+1)/3));
L:
Может на всякий случай стоит поставить проверку в виде
if abs(C*Pi=(Х-Pi/2)/Pi)<0.001
Попадание в точку может гулять немножко.
Разбери функции выделения целой и дробной частей действительных чисел.
Удачи!