Javaプログラミング学習サイト ゆるゆるプログラミング

・Javaソースダウンロード(Heron.java)

三角形の3つの辺の長さを与えて、ヘロンの公式を使って三角形の面積を計算するJavaのソースコード例です。3つの辺はコマンドライン引数で渡しています。

このソースについての記事はこちら「三角形の面積(ヘロンの公式)」です。

Heron.javaをダウンロード

ダウンロードしたファイルはzip形式です。解凍して使ってください。Windowsの場合、ダウンロードしたzipファイルをマウスの右ボタンでクリックして表示されるポップアップメニューから「すべて展開(T)」で解凍できます。

public class Heron {
	public static void main( String[] args ) {
		// 変数の宣言
		double a, b, c;	// 3辺の長さ
		double t;	// 面積

		// 入力した引数が3つ以上かを調べる
		if ( 3 >args.length ) {
			// 入力した引数が3つ未満の場合、使用方法を表示する
			System.out.println( "Heron [辺長1]  [辺長2]  [辺長3]" );
			return;
		}

		// 引数をdouble型に変換し、長さに代入
		try {
			// args[0],args[1],args[2]を数値に変換
			a =  Double.valueOf( args[ 0 ] );
			b =  Double.valueOf( args[ 1 ] );
			c =  Double.valueOf( args[ 2 ] );
		}
		catch( NumberFormatException ne )
		{
			// args[0],args[1],args[2]のどれかが数字ではない
			System.out.println( "辺の長さの取得に失敗しました" );
			return;
		}
	

		// 面積を計算
		t = herons_formula( a, b, c );
		if ( 0.0 > t ) {
			System.out.println( "面積の計算に失敗しました" );
		}
		else {
			System.out.println( "辺1の長さ="+ a );
			System.out.println( "辺2の長さ="+ b );
			System.out.println( "辺3の長さ="+ c );
			System.out.println( "面積="+ t );
		}
	}


	// 3角形の3辺の長さa,b,cから面積を計算するメソッド
	private static double herons_formula( double a, double b, double c )
	{
		double s;	// s = ( a + b + c ) / 2
		double t;	// 面積
		double d;	// 作業用変数

		// 3辺のどれか1つでも0より小さければ-1.0を返す
		if ( ( 0.0 > a ) || ( 0.0 > b ) || ( 0.0 > c ) ) return -1.0;

		// sを計算
		s = ( a + b + c ) / 2.0;

		// s(s-a)(s-b)(s-c)を計算し、マイナスになれば-1.0を返す
		d = s * ( s - a ) * ( s - b ) * ( s - c );
		if ( 0.0 > d ) return -1.0;

		// 面積tを計算
		t = Math.sqrt( d );

		// 計算した面積tを返す
		return t;
	}
}

このソースについての記事はこちら「三角形の面積(ヘロンの公式)」です。

 

■新着情報

2022.07.06 完全数 6=1+2+3

■広告

 

 

 

 

Topへ