![](/img/trans.png)
[英]How to get for each digit number of numbers that start with that digit from Java Stream?
[英]How to find single digit from a set of number by doing product of each numbers in java
我有一個數字,例如99,現在我需要獲得一個數字,例如-
9*9 = 81
8*1 = 8
ex2:
3456 3*4*5*6
360 3*6*0
除了將數字更改為字符串/字符串,然后與每個相鄰的字符串相乘,獲得輸出的有效方法是什么。
讓我讓這個問題稍微復雜一點,如果我想獲得使N變為一位數字所需的步驟數,那么遞歸可能會使步驟松散,並且僅需要用一種方法完成
假設這些是整數,則可以使用以底數(10)為單位的除法和模數:
81 / 10 = 8
81 % 10 = 1
對於第二個示例,您想使用while (X >= 10)
循環。
這個遞歸函數應該做到這一點...
int packDown( int num ) {
if( num < 10 ) return num ;
int pack = 1 ;
while( num > 0 ) {
pack *= num % 10 ;
num /= 10 ;
}
return packDown( pack ) ;
}
public static int digitMultiply(int number) {
int answer = 1;
while (number > 0) {
answer=answer*(number % 10);
number = number / 10;
}
return answer;
}
希望能幫助到你!! 簡單的乘法運算法則
以下單個遞歸方法也應起作用:
int multDig(int number){
if(number >= 10)
return multDig((number%10) * multDig(number/10));
else
return number;
}
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.