본문 바로가기
Develop/백준 (Cpp)

[백준] 2588번: 곱셈 (C++)

by Tarra 2022. 4. 10.

2588번: 곱셈


문제 )

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

 

 

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

 

 

 

입력 :

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

 

 

 

출력 :

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

 

 

 

 

 

 

풀이)

 

변수 b의 각 자리수 값을 연산을 통해 구해서 a에 곱해주었다.

 

배열로 풀어보고 싶었는데 생각이 잘 나지 않았다.

 

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
# include <iostream>
using namespace std;
 
int main(){
    
    int a, b;
    cin >> a;
    cin >> b;
 
    cout << a * (b % 10<< endl;
    cout << a * ((b % 100/ 10<< endl;
    cout << a * (b / 100<< endl;
    cout << a * b << endl;
 
    return 0;
}
cs

 

 

+ 배열을 이용한 풀이를 해보려고 b[3]을 선언한 후 

 

b[0]. b[1], b[2]를 불러오는 식으로 진행해보았으나 오답이었다.

 

그 이유는 입력을 받았을 때, 변수가 나누어져 0, 1, 2로 들어가는 것이 아니라,

 

b[0]에 모두 들어가기 때문이었다.

출처 : https://www.acmicpc.net/problem/2588

 

2588번: 곱셈

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

www.acmicpc.net