ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • JAVA_02_실습_연산자
    1. JAVA/1.2 실습 2022. 3. 14. 13:43

    문제1 ] 
      두개의 숫자를 입력 받은 후(가로, 세로) 
      그 숫자를 이용해서 사각형의 넓이와 삼각형의 넓이를 구해서 
      사각형의 넓이 : 가로 X 세로
      삼각형의 넓이 : 가로 X 세로 X(1/2)
      결과를 출력하세요
     
      출력 형식 ]
      가로 : XXXX
      세로 : XXXX
      사각형 넓이 : XXXX
      삼각형 넓이 : XXXX.X;
     

    import java.util.*;
    // 	참고 ] 자바에서 *기호의 의미는, 
    // 	연산자로서 곱하기의 의미
    // 	모든것을 의미.
     		
    public class Ex01 {
    	public static void main(String[] args) {
    	
    	Scanner sc = new Scanner(System.in);
    	System.out.print("가로 길이 입력 : ");
    	int width = sc.nextInt();
    	System.out.print("세로 길이 입력 : ");
    	int height = sc.nextInt();
    	System.out.println("세로 : "+height);
    	
    	int sagak = width*height;
    	System.out.println("사각형의 넓이 : "+sagak);
    	double samgak  = (width*height)/2f;
    	System.out.println("삼각형의 넓이 : "+samgak);
    	}
      }


     문제2 ]
       하나의 숫자를 입력받은 후 (원의 반지름)
       그 숫자를 이용해서 원의 넓이와 둘레를 계산하고 출력하세요
      
      참고 ] 
       원의 넓이 : 반지름X반지름X3.14
       원의 둘레 : 2* 반지름X3.14

     

    public static void main(String[] args) {
    		// 할 일 ) 입력도구를 준비한다.
    		// System.in : 외부장치에 연결된 통로...(회선..?빨대..?)
    		// 내가 입력하는 순간 지나감....한번이라도 읽으면 사라짐
    			Scanner sc = new Scanner(System.in);
    		// 입력받기 전에 메세지 출력
    			System.out.print("반지름 : ");
    		// 입력받는다. 변수에 기억
    			int rad = sc.nextInt();
    		// 계산한다.
    			double pi = 3.14;
    		// 원의 넓이 계산 : 숫자데이터의 연산은 항상 큰 데이터 타입 쪽으로 결과가 나온다.
    			double area = rad*rad*pi;
    			
    		// 원의 둘레 계산
    			double arround = 2*rad*pi;
    			
    		//출력한다.
    			
    			System.out.println("반지름 : "+rad);
    			System.out.println("넓	이 : "+area);
    			System.out.println("둘	레 : "+arround);
    			
    		/*
    		 	참고 ] 
    		 		형변환에서 큰 타입의 데이터를 작은타입으로 변환하면 
    		 		남는 부분은 버린다.
    		 */
    			int intArea = (int)area;
    			System.out.println(intArea);
    			
    			int intDulae = (int)arround;
    			System.out.println(intDulae);
    	}}


    문제 3]

    84232원을 지불하려고 한다. 
    우리나라 화폐단위별로 이 금액을 지불하려면 각 단위가 몇개씩 필요한지 계산해서 출력하세요.
    화폐단위 : 50000원 , 10000원, 5000원, 1000원, 500원, 100원, 50원, 10원,1원 (필요없는것은 0개로 출력)

     

    	public static void main(String[] args) {
    		int total = 84232;
    		int tmp = total;
    		
    		
    		int money_50000 = (int)total/50000;
    		tmp %= 50000;
    		int money_10000 = (int)tmp/10000;
    		tmp %= 10000;
    		int money_5000 = (int)tmp/5000;
    		tmp %= 5000;
    		int money_1000 = (int)tmp/1000;
    		tmp %= 1000;
    		int money_500 = (int)tmp/500;
    		tmp %= 500;
    		int money_100 = (int)tmp/100;
    		tmp %= 100;
    		int money_50 = (int)tmp/50;
    		tmp %= 50;
    		int money_10 = (int)tmp/10;
    		tmp %= 10;
    		
    		System.out.printf("오만원권 : %s장\n",money_50000);
    		System.out.printf("만원권 : %s장\n",money_10000);
    		System.out.printf("오천원권 : %s장\n",money_5000);
    		System.out.printf("천원권 : %s장\n",money_1000);
    		System.out.printf("오백원 : %s개\n",money_500);
    		System.out.printf("백원 : %s개\n",money_100);
    		System.out.printf("오십원 : %s개\n",money_50);
    		System.out.printf("십원 : %s개\n",money_10);
    		System.out.printf("일원 : %s개\n",tmp);
    		/*
    		 
    		int total = 84232;
    		int tmp = total;
    		
    		int oman = tmp / 50000;
    		tmp %= 50000;  //tmp를 50000으로 나눈 나머지를 tmp에 대입
    		
    		int man = tmp/10000;
    		tmp %= 10000;
    		
    		int ochun = tmp/5000;
    		tmp %= 5000;
    		
    		int chun = tmp/1000;
    		tmp %= 1000;
    		
    		int obeak = tmp/500;
    		tmp  %= 500;
    		
    		int back = tmp/100;
    		tmp %= 100;
    		
    		int oship = tmp/50;
    		tmp = tmp%50;
    		
    		int ship = tmp/10;
    		tmp = tmp%10;
    		
    		//1
    		int il = tmp%10;
    		System.out.println("==========================");
    		System.out.println("총금액 : "+total+"원은");
    		System.out.println("오만원권 : "+oman+"장");
    		System.out.println("만원권 : "+man+"장");
    		System.out.println("오천원권 : "+ochun+"장");
    		System.out.println("천원권 : "+chun+"장");
    		System.out.println("오백원권 : "+obeak+"개");
    		System.out.println("백원권 : "+back+"개");
    		System.out.println("오십원권 : "+oship+"개");
    		System.out.println("십원권 : "+ship+"개");
    		System.out.println("일원권 : "+il+"개");
    		
    		
    		*/
    		
    	}
    }


    문제4 ] 1년은 365.2426 일이다. 이것은 과연 몇일 , 몇시간 , 몇분, 몇초인지 계산하고 출력하시오
     
      힌트 ] 
      365.2426일은 단위가 일 단위이다.
      하루는 24시간이다.
      따라서 0.5일은 12시간을 의미한다.

    public static void main(String[]args) {
    		// 할 일
    		// 데이터 변수에 기록시키기
    			double total = 365.2426;
    		// 누적 계산될 변수 만들기
    			double tmp = total;
    		// 날 수 구하고 -> 누적 변수에 계산해서 업데이트
    			int day = (int)tmp;
    			tmp -= day;
    			
    			//0.2426을 초로 변환.
    			//1 * 24 * 60 * 60
    			//0.5*24 => 하루의 절반시간
    			//0.1*24 => 0.1일의 시간
    			
    			int tsec = (int)(0.2426*24*60*60);
    		
    			
    		// 시간 구하고 -> 누적 변수에 계산해서 업데이트
    			int hour = tsec/(60*60);
    			//몫이 시간이고 남은 나머지가 초, 분
    			tsec %=3600;
    			
    		// 분 구하고 -> 누적 변수에 계산해서 업데이트
    			int minute = tsec/60;
    			tsec %= 60;
    		// 초 구한다.(초는 분 구한 나머지를 쓴다)
    			int sec = tsec;
    			
    			System.out.println("  1 년은   "+ total + "일 이고");
    			System.out.println(" 이 것은   "+ day + "일");
    			System.out.println("	   "+ hour + "시간");
    			System.out.println("	   "+ minute + "분");
    			System.out.println("	   "+ sec+ " 초 이다.");
    		
    		//출력함

    '1. JAVA > 1.2 실습' 카테고리의 다른 글

    JAVA_05_실습_반복문과 조건문3  (0) 2022.03.16
    JAVA_05_실습_반복문과 조건문2  (0) 2022.03.14
    JAVA_04_실습_반복문과 조건문  (0) 2022.03.14
    JAVA_03_실습_연산자2  (0) 2022.03.14
    JAVA_01_실습_데이터종류  (0) 2022.03.14
Designed by Tistory.