キーボードから三角形の3辺の長さを入力、面積を表示する

キーボードから三角形の3辺の長さを入力、面積を表示する

練習問題18

キーボードから三角形の3辺の長さを入力させ、面積を表示するプログラムを作成する。

 

三角形の3辺の長さをa, b, cとすると、三角形の面積Sはヘロンの公式を用いて以下のように計算できます。
s = (a+b+c)/2とすると、S = √{s×(s-a)×(s-b)×(s-c)}

 

 ただし、s-a, s-b, s-cのいずれかが0以下の場合は三角形ができないので、「三角形はできません。」と表示してください。

 

実行画面

3辺の長さを入力してください

辺1の長さ > 3 【enterキー】
辺2の長さ > 4 【enterキー】
辺3の長さ > 5 【enterキー】
三角形の面積は6.0

3辺の長さを入力してください

辺1の長さ > 2【enterキー】
辺2の長さ > 2【enterキー】
辺3の長さ > 8【enterキー】
三角形はできません。

解答例

import java.io.*;

public class ren12_18 {
public static void main(String[] args) throws IOException {
double a, b, c, s;
BufferedReader br
= new BufferedReader(new InputStreamReader(System.in));
System.out.println("3辺の長さを入力してください");
System.out.print("辺1の長さ > ");
a = Double.parseDouble(br.readLine());
System.out.print("辺2の長さ > ");
b = Double.parseDouble(br.readLine());
System.out.print("辺3の長さ > ");
c = Double.parseDouble(br.readLine());
s = (a+b+c) / 2;
if(s>a && s>b && s>c) {
System.out.println("三角形の面積は" + Math.sqrt(s*(s-a)*(s-b)*(s-c)) );
}else {

System.out.println("三角形はできません。");
}
}
}

 

キーボードから三角形の3辺の長さを入力、面積を表示する関連ページ

2つの英単語を入力 すると、文字数の多い方を表示 if else文
英単語の主語と形容詞を入力し、文を表示する
文字列と検索文字を 入力し、文字列の中に含まれている 検索文字の個数を表示
検索 文字を複数入力する と、それぞれの文字数を表示する
同じ検索文字 が複数回入力されても、何度もその文 字に対して結果を出力しない
名前を入力すると、その情報が表示される
文字列を入力、文字列が整数かどうか判定する
キーボードから文字列を入力、その中央の1文字(または2文字)を表示する
キーボードから文字列を入力、その先頭と末尾の文字を除いた文字列を表示する
キーボードから文字列と検索する文字(または文字列)を入力、検索された位置をすべて表示するプログラムを作成
キーボードから文字列と削除する文字(または文字列)を入力、指定した文字(列)をすべて削除した文字列を表示する
キーボードから文字列を入力、半角空白文字を区切りとして分割した結果を表示する
キーボードから円の半径を入力、円周の長さと円の面積を表示する
キーボードから定価を入力、消費税込みの価格を表示する
キーボードから実数を入力、その小数第2位を切り上げた値を表示する
キーボードから実数を入力、その10の位を切り捨てた値を表示する
キーボードから三角形の2辺の長さとその間の角度[°]を入力、面積を表示する
キーボードからサイコロの出る目を予想して入力、乱数を用いてサイコロの目(1〜6)を発生させて「当たり」か「はずれ」かを表示する
キーボードから文字列を入力、それが回文(文字の順序を逆にしても元と同じ文字列)であるかどうかを判定して表示する