2012-02-18 16 views
-3

int値を取得するプログラムで作業しています。これをintに適用します。 は、ユーザーが入力した値が803を次にInt値の組み合わせ

int x = 803; 

私の問題は、そのように、1文字のinetegerにint型に変換することであると言うことができます。

x is 803 
x is 8+3 (11 - it's not one char length) 
x is 1+1 (2 - one char length); 

別例えば:

x is 97 
x is 9+7 (16 - not one char) 
x is 1+6 (7 - one char) 

を私は配列をcharに、その後、ループしながら使用して文字列に変換するなど、多くの方法を試してみた、と私は解決策を見つけることができません。

助けてください、事前に感謝、初心者の質問にごめんなさい。

+1

が、これは宿題ですか? – frictionlesspulley

+0

どの言語?言語にタグを付けてください –

+0

あなたの最高のソリューションを投稿してください。 – dasblinkenlight

答えて

0

整数の数字を要約すると、モジュロ演算子(ほとんどの言語では '%')を使用できます。

擬似コード:

int sumUpDigits(int number) { 
    int sum = 0; 
    int tmp = (number > 0) ? number : (-1 * number); 
    while (tmp > 0) { 
     sum += tmp % 10; 
     tmp = tmp/10; 
    } 
    return sum; 
} 
+0

これは宿題ではありません...私は学校でC#を学ぶわけではありません。 これは、C# にだとそれは私が欲しいものにさえ近くないということは、私がこれまで http://pastebin.com/H0X1dZSH をやったものだ、私は104ではなく2 –

+0

AlexSを取得する - コードではありません実際にはそれは部分的に働いていますが、803に返信する回答は11で、2(1 + 1 - numは11から取られました)ですが、とにかく私の質問を見つけようとします。 –

+0

これを見てください[link](http://msdn.microsoft.com/de-de/library/ww9t2871.aspx):Convert.ToInt32(char c)指定されたUnicode文字の値を等価の32ビット符号付き整数に変換します。 – AlexS