2016-11-20 8 views
-1

我有一個包含該數字如何確定,數字3個多數量是如何在可變

int n = 6396339; 

我需要確定3多少位是可變的變量。 到目前爲止,我修整這樣的:

int n = 6396339, counter = 0; 

    while (n > 0) 
    { 
     if ((n % 10) % 3 == 0) { 
      counter++; 
     } 
     n /= 10; 
    } 
    cout << counter << endl; 

但這種算法不能正常工作。你能幫我解決問題嗎?

+2

刪除「C」標記,「cout <<'在C – UnholySheep

+2

_中無效」此算法工作不正常「_不是可接受的問題陳述或問題。 –

回答

5
(n % 10) % 3 == 0 

爲任何數字是由三個整除,即0369是真實的。只是檢查數字是否等於3

(n % 10) == 3 
0

您可以打印的數量爲一個字符串,然後遍歷字符串並檢查每個字符是否是'3'

+0

贊[that](http://coliru.stacked-crooked.com/a/58c7318ba8dc66d4)。 – Jarod42

+0

@ Jarod42,太棒了!一個線程程序來做這個伎倆! –

相關問題