cubicEquation function 実行数: 18
cubicEquation function | |||
| |||
本ライブラリは会員の方が作成した作品です。 内容について当サイトは一切関知しません。
cubicEquation function
[1-1] /1件 | 表示件数 |
- 使用目的
- 関数を使ったサンプルとしてコードをアンケートとして投稿しました。
- ご意見・ご感想
- function cubicEquation(a, b, c, d, numeric x[]) {
a1 = b / (3 * a);
a2 = c / a;
a3 = d / a;
p = a1 * a1 - a2 / 3;
q = (a1 * (a2 - 2 * a1 * a1) - a3) / 2;
dis = p * p * p - q * q;
if (dis < 0.0) {
} elseif (dis == 0) {
r = cubicRoot(q);
x[0] = 2 * r - a1;
x[1] = x[2] = -r - a1;
} else {
r = sqrt(p);
t = acos(q / (p * r));
r = r*2;
x[0] = r * cos(t / 3) - a1;
x[1] = r * cos((t + 2 * pi) / 3) - a1;
x[2] = r * cos((t + 4 * pi) / 3) - a1;
}
}
function cubicRoot(x1)
{
if (x1 > 0.0) {
return x1^(1/3);
} else {
return -(-x1)^(1/3);
}
}
numeric x[] = {0,1,2};
cubicEquation(a, b, c, d, x);
print(x[0]);
print(x[1]);
print(x[2]);
[1] 2023/11/16 21:31 60歳以上 / その他 / 役に立った /
- 【cubicEquation function にリンクを張る方法】