romworld

Chapter 02. 변수와 타입 문제 (직사각형, 프록시마 센타우리, 원기둥, 저금통)-입출력 본문

JAVA/문제풀이

Chapter 02. 변수와 타입 문제 (직사각형, 프록시마 센타우리, 원기둥, 저금통)-입출력

inderrom 2022. 9. 10. 23:32

문제 1


package sec03.exam01;

import java.util.Scanner;

public class every {

	public static void main(String[] args) {
	
	Scanner sc = new Scanner(System.in);
	System.out.println("가로의 길이는?(단위:m)");
	double width = sc.nextDouble();
	System.out.println("세로의 길이는?(단위:m)");
	double height = sc.nextDouble();
	
	double area = width * height;
	double perimeter = (width * 2) + ( height * 2 );
	
	System.out.printf("직사각형의 넓이: %.2f\n직사각형의 둘레: %.2f", area, perimeter);
	
  }
}

 

* 실수형 자료이니 int 가 아닌 double 타입을 주고

출력시에도 printf 로 하기!


 

 

문제 2


package sec03.exam01;

import java.util.Scanner;

public class every {

	public static void main(String[] args) {
	
	double lightyear = 946080000000d;
	double distance = 40 * Math.pow(10, 12) / lightyear;
	
	System.out.println("빛의 속도로 프록시마 센타우리 별까지 가는데 걸리는 시간은 " + distance + "광년이다." );
		
}
}

*lightyear 는 1광년을 구해준 것이다

즉 60 * 60 * 24 * 365 * 30000 ( 초 분 시간 일수 속력) 을 곱해준 것!

 

* 10^12는 제곱함수이다. 실수형함수 Math.pow(a,b) 를 써주면 된다.

 


 

문제 3


Scanner sq = new Scanner(System.in);
		System.out.println("원기둥 밑변의 반지름을 입력하시오.(단위: cm) : ");
		double r = sq.nextDouble();
		System.out.println("원기둥 밑변의 높이를 입력하시오(단위: cm) : ");
		double height = sq.nextDouble();
		double area = (r * r * Math.PI);
		double volume = area * height;
			
		System.out.printf("원기둥 밑변의 넓이는 %.14fcm²이고, 원기둥의 부피는 %.14fcm²이다.", area, volume );
     	sq.close();
 }
 }

실수형 double을 써준다

원의 밑변 넓이는 반지름 * 반지금 * 원주율

원기둥 부피는 밑변 * 높이이다

 


문제 4


package sec03.exam01;

import java.util.Scanner;

public class hello {

	public static void main(String[] args) {
	
		Scanner sc = new Scanner(System.in);
		System.out.println("500원짜리 동전의 갯수: ");
		double obek = sc.nextDouble();
		System.out.println("100원짜리 동전의 갯수: ");
		double bek = sc.nextDouble();
		System.out.println("50원짜리 동전의 갯수: ");
		double osip = sc.nextDouble();
		System.out.println("10짜리 동전의 갯수: ");
		double sip = sc.nextDouble();
		double sum = (obek * 500)+ (bek * 100) + (osip * 50) + (sip * 10);
		
		System.out.printf("저금통 안의 동전의 총 액수 : %.0f " , sum );
}
}

 

Comments