見出し画像

高校数学10分プログラミング(数学Ⅱ編 1.複素数と方程式)7日目「解と係数の関係の問題3」解説

マガジンリスト > 数学Ⅱ編 1.複素数と方程式 > 7日目 解説

本日の課題、おつかれさまでした。

解と係数の関係を利用する問題を解くプログラムを作成できたでしょうか。


解答例

課題の方程式から

$$
\begin{array}{ll}
f(x) &= (x-1)(x-2)+(x-2)(x-3)+(x-3)(x-1) \\
&=3 (x-\alpha)(x-\beta)
\end{array}
$$

とおくと、各課題の式は
(1) $${\alpha \beta = (0-\alpha)(0-\beta) = f(0)/3}$$
(2) $${(1-\alpha)(1-\beta) = f(1)/3}$$
(3) $${(\alpha-2)(\beta-2) = (2-\alpha)(2-\beta) = f(2)/3}$$
で計算することができます。

これらの関係式を利用して課題の式の値を求めるプログラムを次のように書くことができます(ソースコード1)。


// 解と係数の関係3
void setup(){

  // (1) αβ
  float f1 = quadraticfunction(0.0)/3.0;
  println("(1) αβ=", f1 );
  
  // (2) (1-α)(1-β)
  float f2 = quadraticfunction(1.0)/3.0;
  println("(2) (1-α)(1-β)=", f2 );
  
  // (3) (α-2)(β-2)
  float f3 = quadraticfunction(2.0)/3.0;
  println("(3) (α-2)(β-2)=", f3 );
}

// 2次関数f(x)=(x-1)(x-2)+(x-2)(x-3)+(x-3)(x-1)
float quadraticfunction(
  float x
){
  return (x-1.0)*(x-2.0)+(x-2.0)*(x-3.0)+(x-3.0)*(x-1.0);
}

ソースコード1 問題3の式の値を求めるプログラム

このソースコード1を、Processingの開発環境ウィンドウを開いて(スケッチ名を「Vietas_formulas3」としています)、テキストエディタ部分に書いて実行すると、図1のように、

(1) αβ= 3.6666667
(2) (1-α)(1-β)= 0.6666667
(3) (α-2)(β-2)= -0.33333334

とコンソールに表示されます。

図1 課題の式の値が出力される


本日は以上です。
明日は、剰余の定理に関する問題を考えます。

明日もよろしくお願いします。

※今回の課題とその解答例について質問や疑問がある方は、本記事の下部にあるコメント欄からお願いします。

MK’s papa

この記事が気に入ったらサポートをしてみませんか?