본문 바로가기
웹 프로그래밍 기초/자바기반의 웹&앱 응용SW 개발자

코로나 휴강 대체할 t형의 복습문제9.

by oncerun 2020. 3. 8.
반응형

3. 세 개의 자연수 A, B, C가 주어질 때 A x B x C의 결과에
각 자리의 숫자가 몇 번씩 쓰였는지 구하시오
150 266 247을 입력받는다면 세 수를 곱한 값은 17037300이다.
0이 세 번, 1이 한 번, 3이 두 번, 7이 두 번 쓰였다.
입력 예제
150 266 427
출력 예제
3 1 0 2 0 0 0 2 0 0

import java.util.Scanner;

public class corona9 {

	public static void main(String[] args) {
		// 숫자는 0부터9까지있다.
		int indexZero = 0, indexOne = 0, intdexTwo = 0, indexThree = 0, indexFour = 0, indexFive = 0, indexSix = 0,
				indexSeven = 0, indexEight = 0, indexNine = 0;

		Scanner scan = new Scanner(System.in);
		System.out.println("첫번째숫자입력");
		int a = scan.nextInt();
		System.out.println("두번째숫자입력");
		int b = scan.nextInt();
		System.out.println("세번째숫자입력");
		int c = scan.nextInt();

		int[] num = new int[10];
		int result = (a * b * c);
		String result_str = String.valueOf(result);

		for (int k = 0; k < 10; k++)
			num[k] = k;

		for (int i = 0; i < result_str.length(); i++) {
			int value = result_str.charAt(i)-'0';
				if (num[0] == value) {
					indexZero++;
				} else if (num[1] == value) {
					indexOne++;
				} else if (num[2] == value) {
					intdexTwo++;
				} else if (num[3] == value) {
					indexThree++;
				} else if (num[4] == value) {
					indexFour++;
				} else if (num[5] == value) {
					indexFive++;
				} else if (num[6] == value) {
					indexSix++;
				} else if (num[7] == value) {
					indexSeven++;
				} else if (num[8] == value) {
					indexEight++;
				} else if (num[9] == value) {
					indexNine++;
				}
		}
		System.out.println(result);
		System.out.printf("0은 %d번 \n", indexZero);
		System.out.printf("1은 %d번 \n", indexOne);
		System.out.printf("2은 %d번 \n", intdexTwo);
		System.out.printf("3은 %d번 \n", indexThree);
		System.out.printf("4은 %d번 \n", indexFour);
		System.out.printf("5은 %d번 \n", indexFive);
		System.out.printf("6은 %d번 \n", indexSix);
		System.out.printf("7은 %d번 \n", indexSeven);
		System.out.printf("8은 %d번 \n", indexEight);
		System.out.printf("9은 %d번 \n", indexNine);

	}
}
반응형

댓글