본문 바로가기
프로그래밍/백준 문제 풀이(자바)

백준 자바 곱셈 문제 답/해설(2588번 문제)

by 리드민 2021. 6. 13.
반응형

[1] 백준 카테고리

단계별로 풀어보기

입출력과 사칙연산

9단계 2588번 문제

곱셈 문제

 

[2] 문제

(세 자리 수) × (세 자리 수)는 다음과 같은 과정을 통하여 이루어진다.

(1)과 (2)위치에 들어갈 세 자리 자연수가 주어질 때 (3), (4), (5), (6)위치에 들어갈 값을 구하는 프로그램을 작성하시오.

 

1. 입력값

첫째 줄에 (1)의 위치에 들어갈 세 자리 자연수가, 둘째 줄에 (2)의 위치에 들어갈 세자리 자연수가 주어진다.

2. 출력

첫째 줄부터 넷째 줄까지 차례대로 (3), (4), (5), (6)에 들어갈 값을 출력한다.

3. 예제 입력1

472

385

4. 예제 출력 1

2360

3776

1416

181720

 

[3] 정답

1. 해설 포함

import java.util.Scanner;
/* Scanner 메소드를 사용하기 위해서 java.util.Scanner class를 
import 한다.*/
public class Main {
// Main 클래스를 접근 제어자 public으로 선언
	public static void main(String[] args) {
	/* main 메소드를 접근제어자 public, 메모리에 상주하게
	반환값이 없게 선언 */
		Scanner sc = new Scanner(System.in);
		// 값을 입력 받기 위해 Scanner로 객체 sc를 선언
		int num1 = sc.nextInt();
		// 값을 입력 받아 정수형 변수 num1에 저장
		int num2 = sc.nextInt();
		// 값을 입력 받아 int형 변수 num2에 저장
		sc.close();
		// 객체 sc의 사용을 종료해서 메모리에 할당된 값을 반환 한다.
		int a3 = num2/100;
		/* 변수 num2에 저장된 값을 100으로 나누고 그 값을 int형
		변수 a3에 저장한다. */
		int a2 = (num2 - a3*100)/10;
		/* 변수 num2에 저장된 값을 변수 a3에 저장된 값에 100을 곱한 값으로
		뺀 후 그 값을 10으로 나눈 후 int 형 변수 a2에 저장한다. */
		int a1 = num2 - a3*100 - a2*10;
		/* 변수 num2에 저장된 값을 변수 a3에 100을 곱한 값으로 뺀 후
		그 값을 변수 a2에 10을 곱한 값을 뺀 후 그 값을 변수 a1에 저장한다. */
		
		int b1 = num1 * a1;
		// 변수 num1에 변수 a1를 곱한 후 그 값을 변수 b1에 저장한다.
		int b2 = num1 * a2;
		// 변수 num1에 변수 a2를 곱한 후 그 값을 변수 b2에 저장한다.
		int b3 = num1 * a3;
		// 변수 num1에 변수 a3를 곱한 후 그 값을 변수 b3에 저장한다.
				
		int num3 = num1*num2;
		/* 변수 num1에 저장된 값에 변수 num2에 저장된 값을 곱한 후
		그 값을 변수 num3에 저장한다. */
		
		System.out.println(b1);
		// 변수 b1에 저장된 값을 출력한다.
		System.out.println(b2);
		// 변수 b2에 저장된 값을 출력한다.
		System.out.println(b3);
		// 변수 b3에 저장된 값을 출력한다.
		System.out.println(num3);
		// 변수 num3에 저장된 값을 출력한다.
	}
}

 

2. 해설 미포함(답만)

import java.util.Scanner;
public class Main {
	public static void main(String[] args) {
		Scanner sc = new Scanner(System.in);
		int num1 = sc.nextInt();
		int num2 = sc.nextInt();
		sc.close();
		int a3 = num2/100;
		int a2 = (num2 - a3*100)/10;
		int a1 = num2 - a3*100 - a2*10;
				
		int b1 = num1 * a1;
		int b2 = num1 * a2;
		int b3 = num1 * a3;
				
		int num3 = num1*num2;
				
		System.out.println(b1);
		System.out.println(b2);
		System.out.println(b3);
		System.out.println(num3);
	}
}
반응형