반응형

 

문제

 

package kr.or.ddit.homework;

import java.util.Scanner;

public class HomeWork6 {
	Scanner sc = new Scanner(System.in);

	public static void main(String[] args) {
		HomeWork6 obj = new HomeWork6();
		obj.method1();
		obj.method2();
		obj.method3();
		obj.method4();
		obj.method5();
	} 

	private void method1() {
		/*
		 * 스캐너를 통해 숫자를 입력 받고 해당 숫자에 해당하는 구구단을 출력하시오
		 * 
		 *  3*1 =3	
			3*2 =6	
			3*3 =9	
			3*4 =12
			3*5 =15
			3*6 =18
			3*7 =21
			3*8 =24
			3*9 =27
		 */
		System.out.println("숫자를 입력하세요.");
		int num = sc.nextInt();
		for (int i = num) {
			for (int j = 1; j <=9 ; j++) {
				System.out.println(num*j);
			}
		}
	}
	
	private void method2() {
		/*
		 *  for 문 2개를 이용하여 구구단 전체를 출력하시오.
		 *  아래가 아니라 옆임
		 * 
		    2*1 =2	3*1 =3	..............	
			2*2 =4	3*2 =6	4*2 =8	5*2 =10	6*2 =12	7*2 =14	8*2 =16	9*2 =18	
			2*3 =6	3*3 =9	4*3 =12	5*3 =15	6*3 =18	7*3 =21	8*3 =24	9*3 =27	
			2*4 =8	3*4 =12	4*4 =16	5*4 =20	6*4 =24	7*4 =28	8*4 =32	9*4 =36	
			2*5 =10	3*5 =15	4*5 =20	5*5 =25	6*5 =30	7*5 =35	8*5 =40	9*5 =45	
			2*6 =12	3*6 =18	4*6 =24	5*6 =30	6*6 =36	7*6 =42	8*6 =48	9*6 =54	
			2*7 =14	3*7 =21	4*7 =28	5*7 =35	6*7 =42	7*7 =49	8*7 =56	9*7 =63	
			2*8 =16	3*8 =24	4*8 =32	5*8 =40	6*8 =48	7*8 =56	8*8 =64	9*8 =72	
			2*9 =18	3*9 =27	4*9 =36	5*9 =45	6*9 =54	7*9 =63	8*9 =72	9*9 =81	
		 */
		
	
	}
	
	private void method3() {
		/*
		 *  for 문 2개를 이용하여 구구단 전체를 출력하시오.
		 *  스캐너를 통해 숫자를 입력 받고 해당 숫자에 해당하는 구구단은 <제외>. 
		 *  컨티뉴
		 *  ex ) 입력 3 
   			2*1 =2	..............	
			2*2 =4	4*2 =8	5*2 =10	6*2 =12	7*2 =14	8*2 =16	9*2 =18	
			2*3 =6	4*3 =12	5*3 =15	6*3 =18	7*3 =21	8*3 =24	9*3 =27	
			2*4 =8	4*4 =16	5*4 =20	6*4 =24	7*4 =28	8*4 =32	9*4 =36	
			2*5 =10	4*5 =20	5*5 =25	6*5 =30	7*5 =35	8*5 =40	9*5 =45	
			2*6 =12	4*6 =24	5*6 =30	6*6 =36	7*6 =42	8*6 =48	9*6 =54	
			2*7 =14	4*7 =28	5*7 =35	6*7 =42	7*7 =49	8*7 =56	9*7 =63	
			2*8 =16	4*8 =32	5*8 =40	6*8 =48	7*8 =56	8*8 =64	9*8 =72	
			2*9 =18	4*9 =36	5*9 =45	6*9 =54	7*9 =63	8*9 =72	9*9 =81	
		 */
	}
	
	private void method4() {
		/*
		 * 양의 정수 n이 매개변수로 주어질때 
		 * n이 홀수라면 n 이하의 홀수인 모든 양의 정수 합
		 * n이 짝수라면 n 이하의 짝수인 모든 양의 정수제곱의 합
		 */
		int n = (int)(Math.random()*100)+1;
	}
	
	private void method5() {
		/*
		 *   키보드로 돈을 입력 받아 화폐단위별로 개수를 구하시오.
		 *   ex ) 77550 -> 10000 7장 5000 1장 1000원 2장 500원 한개 50원 한개
		 */
		
		int[] coin = {10000, 5000, 1000, 500, 100, 50, 10};
		
	}
}

 

 

 

1번 문제

 

package kr.or.ddit.homework;

import java.util.Scanner;

public class HomeWork6 {
	Scanner sc = new Scanner(System.in);

	public static void main(String[] args) {
		HomeWork6 obj = new HomeWork6();
		obj.method1();
	} 

	private void method1() {
		/*
		 * 스캐너를 통해 숫자를 입력 받고 해당 숫자에 해당하는 구구단을 출력하시오
		 * 
		 *  3*1 =3	
			3*2 =6	
			3*3 =9	
			3*4 =12
			3*5 =15
			3*6 =18
			3*7 =21
			3*8 =24
			3*9 =27
		 */
		System.out.print("몇 단을 출력하시겠습니까? ");
		int num = sc.nextInt();
		
		for(int i = 1; i < 10; i++) {
			System.out.println(num + " * " + i +" = " + num*i);
		}
	}
}

 

결과 화면1

 

 

 

2번 문제

 

package kr.or.ddit.homework;

import java.util.Scanner;

public class HomeWork6 {
	Scanner sc = new Scanner(System.in);

	public static void main(String[] args) {
		HomeWork6 obj = new HomeWork6();
		obj.method2();
	} 
	
	private void method2() {
		/*
		 *  for 문 2개를 이용하여 구구단 전체를 출력하시오.
		 *  아래가 아니라 옆임
		 * 
		    2*1 =2	3*1 =3	..............	
			2*2 =4	3*2 =6	4*2 =8	5*2 =10	6*2 =12	7*2 =14	8*2 =16	9*2 =18	
			2*3 =6	3*3 =9	4*3 =12	5*3 =15	6*3 =18	7*3 =21	8*3 =24	9*3 =27	
			2*4 =8	3*4 =12	4*4 =16	5*4 =20	6*4 =24	7*4 =28	8*4 =32	9*4 =36	
			2*5 =10	3*5 =15	4*5 =20	5*5 =25	6*5 =30	7*5 =35	8*5 =40	9*5 =45	
			2*6 =12	3*6 =18	4*6 =24	5*6 =30	6*6 =36	7*6 =42	8*6 =48	9*6 =54	
			2*7 =14	3*7 =21	4*7 =28	5*7 =35	6*7 =42	7*7 =49	8*7 =56	9*7 =63	
			2*8 =16	3*8 =24	4*8 =32	5*8 =40	6*8 =48	7*8 =56	8*8 =64	9*8 =72	
			2*9 =18	3*9 =27	4*9 =36	5*9 =45	6*9 =54	7*9 =63	8*9 =72	9*9 =81	
		 */
		
		for (int i = 1; i < 10; i++) {
			for (int j = 2; j < 10; j++) {
				System.out.print(j + " * " + i + " = " + j*i + "\t");
			}
			System.out.println();
		}
	}
}

 

결과 화면2

 

 

 

3번 문제

 

package kr.or.ddit.homework;

import java.util.Scanner;

public class HomeWork6 {
	Scanner sc = new Scanner(System.in);

	public static void main(String[] args) {
		HomeWork6 obj = new HomeWork6();
		obj.method3();
	} 
	private void method3() {
		/*
		 *  for 문 2개를 이용하여 구구단 전체를 출력하시오.
		 *  스캐너를 통해 숫자를 입력 받고 해당 숫자에 해당하는 구구단은 <제외>. 
		 *  컨티뉴
		 *  ex ) 입력 3 
   			2*1 =2	..............	
			2*2 =4	4*2 =8	5*2 =10	6*2 =12	7*2 =14	8*2 =16	9*2 =18	
			2*3 =6	4*3 =12	5*3 =15	6*3 =18	7*3 =21	8*3 =24	9*3 =27	
			2*4 =8	4*4 =16	5*4 =20	6*4 =24	7*4 =28	8*4 =32	9*4 =36	
			2*5 =10	4*5 =20	5*5 =25	6*5 =30	7*5 =35	8*5 =40	9*5 =45	
			2*6 =12	4*6 =24	5*6 =30	6*6 =36	7*6 =42	8*6 =48	9*6 =54	
			2*7 =14	4*7 =28	5*7 =35	6*7 =42	7*7 =49	8*7 =56	9*7 =63	
			2*8 =16	4*8 =32	5*8 =40	6*8 =48	7*8 =56	8*8 =64	9*8 =72	
			2*9 =18	4*9 =36	5*9 =45	6*9 =54	7*9 =63	8*9 =72	9*9 =81	
		 */
		System.out.print("몇 단을 제외해서 출력하시겠습니까? ");
		int num = sc.nextInt();
		
		for (int i = 1; i < 10; i++) {
			for (int j = 2; j < 10; j++) {
				if(j == num) continue;
				System.out.print(j + " * " + i + " = " + j*i + "\t");
			}
			System.out.println();
		}
	}
}

 

결과 화면3

 

 

 

4번 문제

 

package kr.or.ddit.homework;

import java.util.Scanner;

public class HomeWork6 {
	Scanner sc = new Scanner(System.in);

	public static void main(String[] args) {
		HomeWork6 obj = new HomeWork6();
		obj.method4();
	} 
	
	private void method4() {
		/*
		 * 양의 정수 n이 매개변수로 주어질때 
		 * n이 홀수라면 n 이하의 홀수인 모든 양의 정수 합
		 * n이 짝수라면 n 이하의 짝수인 모든 양의 정수제곱의 합
		 */
		int n = (int)(Math.random()*100)+1;
		int sum_h = 0;
		long sum_j = 0l;
		
		for (int i = 1; i <= n; i++) {
			if(n%2 == 1 && i%2 == 1) {
				sum_h += i;
			} else if(n%2 == 0 && i%2 == 0) {
				sum_j += (i*i);
			}
		}
		
//		if(n%2 == 0) {
//			for (int i = 2; i <= n; i = i+2) {
//				sum_j += i*i;
//			}
//		} else {
//			for (int i = 1; i <= n; i = i+2) {
//				sum_h += i;
//			}
//		}
		
		System.out.println("정수 n의 값은 " + n);
		if(n%2 == 1) {
			System.out.printf("홀수 n의 값은 %d",sum_h);
		} else {
			System.out.printf("짝수 n의 값은 %d",sum_j);
		}
	}
}

 

결과 화면4

 

 

 

5번 문제

 

package kr.or.ddit.homework;

import java.util.Scanner;

public class HomeWork6 {
	Scanner sc = new Scanner(System.in);

	public static void main(String[] args) {
		HomeWork6 obj = new HomeWork6();
		obj.method5();
	} 
	
	private void method5() {
		/*
		 *   키보드로 돈을 입력 받아 화폐단위별로 개수를 구하시오.
		 *   ex ) 77550 -> 10000원 7장 5000원 1장 1000원 2장 500원 1개 50원 1개
		 */
		System.out.print("가지고 있는 값은 : ");
		int mon = sc.nextInt();
		
		int[] coin = {10000, 5000, 1000, 500, 100, 50, 10};
		int[] coin_mon = new int[7];
		
		for (int i = 0; i < coin.length; i++) {
			coin_mon[i] = mon / coin[i];
			mon = mon - ( coin_mon[i]*coin[i] );
		}
		
//		for(int i=0; i<coin.length; i++) {
//			int result = mon/coin[i];
//			mon%=coin[i];
//			if(result != 0) { // 0장인 경우 제외 되어서 출력함
//				System.out.println(coin[i] + " : " + result + "개");
//			}
//		}
		
		for (int i = 0; i < coin.length; i++) {
			if(coin[i] < 500) {
				System.out.print(coin[i] + "원 " + coin_mon[i] + "개   ");
			} else {
				System.out.print(coin[i] + "원 " + coin_mon[i] + "장   ");
			}
		}
	}
}

 

결과 화면5

 

 

반응형