개발자/C or C++

[백준] 2588번

Mosser 2021. 10. 3.
728x90
반응형

문제

해결 방법

이번 문제는 세 자리수의 곱셈 과정중에 나온 중간 답들을 출력하는 문제라고 생각하시면 됩니다. 문제를 보시면 3번~5번까지는 A*(B의 각 자리수)의 값이 각각 3, 4, 5번에 들어가게 됩니다.

우선 A와 B의 곱한 결과 값을 변수에 저장해둡니다.(마지막에 출력을 하기 위해서 저장)

1. B의 각 자리수를 우선 구해야한다.

2.반복문으로 B의 각 자리수를 구한다.

3. A와 B의 각 자리 수를 곱한 값을 출력한다.

위 순서로 for문 안에서 반복합니다.

#include <stdio.h>

void getAnswer(int A, int B){
	int lastPrint=A*B;  //A와 B의 곱을 변수에 저장해둔다 -> 마지막 출력을 위해서
	while(B!=0){
		printf("%d\n",A*(B%10));       //A*(B의 각 자리수) 출력
		B/=10;  //B의 다음 자리 수를 위해서 B를 10으로 나눈다.
	}

	printf("%d\n",lastPrint);  //반복문이 끝난 후, 저장해두었던 머자먹 결과값 출력
}


int main(){
	int A,B;
	scanf("%d %d",&A,&B);
	
	getAnswer(A,B);
}
반응형

'개발자 > C or C++' 카테고리의 다른 글

[백준] 9498번  (0) 2021.10.03
[백준] 1330번  (0) 2021.10.03
[백준] 10430번  (0) 2021.10.03
[백준] 10869번  (0) 2021.10.03
[백준] 1008번  (0) 2021.10.03

댓글