2017-01-30 8 views
1

私は2389%10が9であることを知っていますが、どのように2つのパラメータを取る方法を作成できますか?あなたは文字列のcharAt()方法使用してそれを行うことができます番号の一つ、および他のインデックスの、インデックスの値を返します...数字のn番目の数字を見つける

+2

PLSが右により第n桁の計数のために、このhttp://stackoverflow.com/questions/19194257/return-the-nth-digit-of-a-number –

+1

参照しますn-1)に/演算子、次に%演算子で10を返します。 – Aeteros

+1

数学では「2389」は何を意味していますか?あなたは "価値を置く"という考えに精通していますか?数字の表記の背後にある数学を理解すると、これをかなり簡単に行うことができます。 –

答えて

3

public static int getNthDigit(int n, int pos) { 
    return Character.getNumericValue(String.valueOf(n).charAt(pos)) 
} 

注意してください:インデックスgetNthDigit(1234,2)あなたはpos数がそれを探して前に範囲内にあることを確認でき3

を返します。つまり、0からのスタート:

^(除算:の
+0

すでに試したことがありませんでした。 – Textrus

+0

それは私のために働いた...それからあなたの問題は何か教えてくれますか? (私にあなたが入力した結果と結果を与えてください) –

+0

何らかの理由でintに構文解析させていません。 – Textrus

0
public static int getDigitAtIndex(int numberToExamine, int index) { 
     if(index < 0) { 
      throw new IndexOutOfBoundsException(); 
     } 
     if(index == 0 && numberToExamine < 0) { 
      throw new IllegalArgumentException(); 
     } 
     String stringVersion = String.valueOf(numberToExamine); 
     if(index >= stringVersion.length()) { 
      throw new IndexOutOfBoundsException(); 
     } 
     return Character.getNumericValue(stringVersion.charAt(index)); 
    } 
関連する問題