2012-01-23 43 views
3

我不知道我的英語,但我需要得到一個整數的單位數字。 沒有複雜的算法,但有一些API或其他技巧。以簡單的方式得到一個整數-unit數字

例如:

int a= 53; 
int b=76; 

這個我補充,因爲我幾乎總是不「符合質量標準」發佈!它讓我瘋狂!請修復它!它花了我10次發佈這篇文章,還有其他一些問題。

我需要以簡單明智的方式獲得a=3b=6

與其他數字相同。

非常感謝。

+1

@vladimir爲什麼-1?這是一個事實,很多時候你只是不能在這裏發佈,因爲一些奇怪的算法。有時會添加一個「?」解決它,或增加一個字。而不是-1我,解決這個問題,因爲我的許多朋友得到了這個。 – Curnelious

回答

8

這裏是如何將數分成幾部分

int unitDigit = a % 10; //is 3 
int tens= (a - unitDigit)/10; //is 53-3=50 /10 =5 
+1

..神說...;);)(TL; DR:「如何神聖的號碼」) –

0

模運算符將幫助你(如個位爲當數除以10的提醒):

int unitDigit = a % 10; 
1

您正在尋找%運營商。

a=a%10;//divides 'a' by 10, assigns remainder to 'a' 
+0

非常感謝。那麼得到另一個數字呢? – Curnelious

0

下面的代碼「變」給定數量的多少他們的數字和數整除數。

int findDigits(long long N){ 
    int count = 0; 
    long long newN = N; 

    while(newN) // kinda like a right shift 
    { 
     int div = newN % 10; 
     if (div != 0) 
      if (N % div == 0) count++; 
     newN = newN/10; 
    } 
    return count; 
} 
+0

我不認爲這回答了被問及的問題......即,獲得數字的最低有效位。 – Stefan

+0

「我需要以簡單的智能方式獲得a = 3和b = 6。 與其他數字相同。」問題不僅僅是最低有效數字,不是嗎? – DerReinhardt

+0

原來的問題當然令人困惑,也許他確實需要更多數字。但無論如何,你的函數返回一個「count」,這不是要求的。 – Stefan

1

警告

這裏是如何揣度成數部分

int unitDigit = a % 10; //is 3 
int tens= (a - unitDigit)/10; //is 53-3=50 /10 =5 

這個答案是完全不正確的。它可能只在許多情況下才起作用。例如嘗試通過這種方式

看來最簡單的答案(但不是很好的性能),以獲得503第一個數字:

int a = ...; 
int digit = [[[NSString stringWithFormat:@"%d", a] substringToIndex:1] intValue]; //or use substringWithRange to get ANY digit 
相關問題