![見出し画像](https://assets.st-note.com/production/uploads/images/145778663/rectangle_large_type_2_a87f06b1c04d7aeb0551b29c2ecdccbe.jpeg?width=1200)
高校数学10分プログラミング(30日目、2024年7月12日)
おはようございます。
今日は、高校数学10分プログラミングの30日目です。
本日の課題は、与えられた3辺の長さをもつ三角形が存在するかどうかを判定するプログラムを作成することです。
三角形の3辺の長さの性質
与えられた3辺の長さをもつ三角形が存在するとき、以下のいずれかの条件を満たします。
① 1つの三角形において、2辺の長さの和は、他の1辺の長さより大きい。
② 1つの三角形において、2辺の長さの差は、他の1辺の長さより小さい。
課題
次の長さの線分を3辺とする三角形が存在するかどうかを判定するプログラムを作成してください。
(1) 3, 4, 6
(2) 2, 3, 6
ヒント
今回は、三角形の3辺の長さの性質①を利用して、三角形の存在を判定してみてください。
三角形の成立条件
三角形の3辺の長さの性質①を式で表してみます。3つの線分の長さを$${a,b,c}$$とします。
![](https://assets.st-note.com/img/1719775606635-1PsWUfH66v.jpg)
このとき、
$$
a < b+c \\
b < c+a \\
c < a+b
$$
が成り立つならば、$${a,b,c}$$を3辺にもつ三角形を作ることができます。つまり、この3つの条件を満たすことが三角形の成立条件となります。
プログラム
以下のソースコード1は、課題(1)について三角形が存在するかどうかを判定するプログラムになります。ただし、このままでは動きません。
// 三角形の存在判定プログラム
void setup(){
// 三角形の3つの辺の長さa,b,c
float a, b, c;
a = 3.0;
b = 4.0;
c = 6.0;
// 辺の長さがa,b,cとなる三角形が存在するか
if( ){
println("三角形が存在する");
} else {
println("三角形が存在しない");
}
}
ソースコード1 三角形が存在するかどうかを判定するプログラム(未完成)
上記の三角形の成立条件で示した三角形の3辺の長さの性質①の3つの条件式を利用して、ソースコード1の if 文の括弧 ( と ) との間
if( ){
に条件式を入れてプログラムを完成させてください。
なお、if 文や条件式については、記事『高校数学をプログラミングで解く(準備編)「1-4 条件分岐、繰り返し処理」』の条件分岐の節で解説していますので、こちらも見てみてください。
それでは、よろしくお願いします。
MK's papa
この記事が気に入ったらサポートをしてみませんか?