\[\frac{\tan \left(\frac{x}{y \cdot 2}\right)}{\sin \left(\frac{x}{y \cdot 2}\right)}
\]
↓
\[\begin{array}{l}
t_0 := \frac{x}{y \cdot 2}\\
\mathbf{if}\;\frac{\tan t_0}{\sin t_0} \leq 1.5:\\
\;\;\;\;\mathsf{log1p}\left(\mathsf{expm1}\left(\frac{1}{\cos \left({\left(\frac{\sqrt[3]{x \cdot 0.5}}{\sqrt[3]{y}}\right)}^{2} \cdot \sqrt[3]{x \cdot \frac{0.5}{y}}\right)}\right)\right)\\
\mathbf{else}:\\
\;\;\;\;1\\
\end{array}
\]
(FPCore (x y)
:precision binary64
(/ (tan (/ x (* y 2.0))) (sin (/ x (* y 2.0)))))
↓
(FPCore (x y)
:precision binary64
(let* ((t_0 (/ x (* y 2.0))))
(if (<= (/ (tan t_0) (sin t_0)) 1.5)
(log1p
(expm1
(/
1.0
(cos
(* (pow (/ (cbrt (* x 0.5)) (cbrt y)) 2.0) (cbrt (* x (/ 0.5 y))))))))
1.0)))double code(double x, double y) {
return tan((x / (y * 2.0))) / sin((x / (y * 2.0)));
}
↓
double code(double x, double y) {
double t_0 = x / (y * 2.0);
double tmp;
if ((tan(t_0) / sin(t_0)) <= 1.5) {
tmp = log1p(expm1((1.0 / cos((pow((cbrt((x * 0.5)) / cbrt(y)), 2.0) * cbrt((x * (0.5 / y))))))));
} else {
tmp = 1.0;
}
return tmp;
}
public static double code(double x, double y) {
return Math.tan((x / (y * 2.0))) / Math.sin((x / (y * 2.0)));
}
↓
public static double code(double x, double y) {
double t_0 = x / (y * 2.0);
double tmp;
if ((Math.tan(t_0) / Math.sin(t_0)) <= 1.5) {
tmp = Math.log1p(Math.expm1((1.0 / Math.cos((Math.pow((Math.cbrt((x * 0.5)) / Math.cbrt(y)), 2.0) * Math.cbrt((x * (0.5 / y))))))));
} else {
tmp = 1.0;
}
return tmp;
}
function code(x, y)
return Float64(tan(Float64(x / Float64(y * 2.0))) / sin(Float64(x / Float64(y * 2.0))))
end
↓
function code(x, y)
t_0 = Float64(x / Float64(y * 2.0))
tmp = 0.0
if (Float64(tan(t_0) / sin(t_0)) <= 1.5)
tmp = log1p(expm1(Float64(1.0 / cos(Float64((Float64(cbrt(Float64(x * 0.5)) / cbrt(y)) ^ 2.0) * cbrt(Float64(x * Float64(0.5 / y))))))));
else
tmp = 1.0;
end
return tmp
end
code[x_, y_] := N[(N[Tan[N[(x / N[(y * 2.0), $MachinePrecision]), $MachinePrecision]], $MachinePrecision] / N[Sin[N[(x / N[(y * 2.0), $MachinePrecision]), $MachinePrecision]], $MachinePrecision]), $MachinePrecision]
↓
code[x_, y_] := Block[{t$95$0 = N[(x / N[(y * 2.0), $MachinePrecision]), $MachinePrecision]}, If[LessEqual[N[(N[Tan[t$95$0], $MachinePrecision] / N[Sin[t$95$0], $MachinePrecision]), $MachinePrecision], 1.5], N[Log[1 + N[(Exp[N[(1.0 / N[Cos[N[(N[Power[N[(N[Power[N[(x * 0.5), $MachinePrecision], 1/3], $MachinePrecision] / N[Power[y, 1/3], $MachinePrecision]), $MachinePrecision], 2.0], $MachinePrecision] * N[Power[N[(x * N[(0.5 / y), $MachinePrecision]), $MachinePrecision], 1/3], $MachinePrecision]), $MachinePrecision]], $MachinePrecision]), $MachinePrecision]] - 1), $MachinePrecision]], $MachinePrecision], 1.0]]
\frac{\tan \left(\frac{x}{y \cdot 2}\right)}{\sin \left(\frac{x}{y \cdot 2}\right)}
↓
\begin{array}{l}
t_0 := \frac{x}{y \cdot 2}\\
\mathbf{if}\;\frac{\tan t_0}{\sin t_0} \leq 1.5:\\
\;\;\;\;\mathsf{log1p}\left(\mathsf{expm1}\left(\frac{1}{\cos \left({\left(\frac{\sqrt[3]{x \cdot 0.5}}{\sqrt[3]{y}}\right)}^{2} \cdot \sqrt[3]{x \cdot \frac{0.5}{y}}\right)}\right)\right)\\
\mathbf{else}:\\
\;\;\;\;1\\
\end{array}