iT邦幫忙

2024 iThome 鐵人賽

DAY 23
0
佛心分享-刷題不只是刷題

CPE C++ 刷題系列 第 23

CPE C++ 刷題 Day 23

  • 分享至 

  • xImage
  •  

今天來解YKL27(UVA11332):Summing Digits

Summing Digits

https://ithelp.ithome.com.tw/upload/images/20241007/20155574cDl9jTTmDI.png

跟題目敘述的一樣
f(n) = 1+2+3+4+5+6+7+8+9+2 = 47
f(f(n)) = 4 + 7 = 11
f(f(f(n))) = 1 + 1 = 2

用下方
sum += num%10;
num/=10;

#include <iostream>
#include <string>

using namespace std;

int plusdig(int num){
	while(num >= 10){
		int sum=0;
		while(num > 0){
			sum += num%10;
			num/=10;
		}
		num = sum;
	}
	return num;
}
int main(){
	int num;
	while(cin >> num){
		if(num==0)break;
		cout << plusdig(num) << endl;
	}
	return 0;
}

上一篇
CPE C++ 刷題 Day 22
下一篇
CPE C++ 刷題 Day 24
系列文
CPE C++ 刷題30
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言