作者flipsydee (原來是宅男)
看板Programming
標題Re: [問題] 12345 -> 15 -> 6
時間Fri Jan 24 05:41:08 2014
※ 引述《yuanta (BIGGAN)》之銘言:
: 想請問一下
: java很常碰到這種字串處理的問題
: 自己真的很容易被這種問題搞混
: 不知道什麼候應該用int integer String StringBuilder
: 今天看到一題上機考 很久沒有思考這問題了= =
: 輸入int 12345 要變裡面的數字相加 -> 15 -> 6 ans:6
: 像這種問題解法很多 可以用 n % 10 的想法來寫
: 或用12345分拆開來 <--小弟想使用這方法
: 請問大家會怎麼分這樣的數字來相加
: 我比較呆 先把int轉String
: 再用split("")成String[],再轉int[].........
: 上機考頭腦很不靈光,但知道這種暴力轉法肯定很蠢
: 請問碰到這種 大家會用什麼方式來轉換??
: 感謝
#include <stdio.h>
#include <stdlib.h>
int plus_num(int num)
{
int sum=0;
while(num>0)
{
sum+=num%10;
num=num/10;
}
if(sum<10) return sum;
return plus_num(sum);
}
int main()
{
int a;
printf("Enter an integer:");
scanf("%d",&a);
printf("Output is:%d\n",plus_num(a));
return 0;
}
這是用 C語言 %10 遞迴的方式寫的~!!
雖然你好像不是想知道這個XD
就當讓我複習複習 哈哈
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 60.244.44.20
1F:推 kingstong:寫演算法用C就夠了,幹嗎用JAVA?! 114.41.164.42 01/24 23:59
2F:→ MOONRAKER:k某又來了 看他這次第幾句會講到VM 1.34.60.15 01/25 22:53
3F:推 kingstong:VM真的很重要,請M大GOOGLE WIKI機器語言 114.41.168.178 01/26 12:50
5F:噓 MOONRAKER:你到底知不知道你自己在講哪個VM 1.34.60.15 01/26 21:26
6F:推 s25g5d4:到底是LLVM那個VM呢?還是VMware那個VM呢? 59.127.251.59 01/28 23:49