알고리즘/백준

[백준/C] 2588번: 곱셈

이우열 2022. 6. 14. 19:40
728x90

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

 

2588번: 곱셈

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

www.acmicpc.net


 

 


 

문제 분석

세 자리 수 × 세 자리 수는 하나의 수에 나머지 수를 각 자리수마다 곱해주어 계산한 뒤 모두 더해준다.

 

코드 진행 방향

처음 입력받은 수에 두 번째로 입력받은 수를 각 자리마다 나누어 곱해준다.

두 번째 수를 나눌 때는 일의 자리부터 10으로 나눈 나머지를 구하고

십의 자리는 10으로 나눈 몫을 10으로 나누어 나머지를 구한다.

백의 자리는 100으로 나눈 몫을 구하면 된다.

 

그 후 자리에 맞게 곱하여 출력한 뒤 모두 더하여 출력하면 된다.

 


 

코드

더보기
#include <stdio.h>
int main(){
    int a, b, r1, r2, r3;
    scanf("%d", &a);
    scanf("%d", &b);
    r1 = a*(b%10);
    r2 = a*((b/10)%10);
    r3 = a*(b/100);
    printf("%d\n", r1);
    printf("%d\n", r2);
    printf("%d\n", r3);
    printf("%d", r1+(r2*10)+(r3*100));
}
728x90