C언어/C언어 문제
[C언어] 백준 1110번: 더하기 사이클
renne
2022. 7. 10. 10:15
https://www.acmicpc.net/problem/1110
1110번: 더하기 사이클
0보다 크거나 같고, 99보다 작거나 같은 정수가 주어질 때 다음과 같은 연산을 할 수 있다. 먼저 주어진 수가 10보다 작다면 앞에 0을 붙여 두 자리 수로 만들고, 각 자리의 숫자를 더한다. 그 다음,
www.acmicpc.net

#include <stdio.h>
int cycle(int num){
return (num%10)*10 + (num/10 + num%10)%10; //사이클을 한 번 돌렸을 때 나오는 새로운 수
}
int main(){
int n, arg, count = 0, result = 100;
scanf("%d", &n);
arg = n;
while (result != n){ //result가 n(처음 입력받은 수)과 같아지면 멈춘다.
result = cycle(arg);
arg = result;
count++; //사이클을 한 번 돌릴 때마다 1씩 count 증가
}
printf("%d", count);
return 0;
}
