我和答案的不太一樣,各位師兄弟能幫忙看一下嗎
public class HelloWorld{
public static void main(String[] args){
int num = 999;
int count = 1;
for(count=1;num/(10^count)>1;count++){
if(num/(10^count)<=1){break;}
{System.out.println("它位數(shù)是"+count);}
}
}
我大概的思路就是讓這個數(shù)除以10的i次方,如果商小于0輸出i的值就是該數(shù)的位數(shù),想問一下該怎么改
2020-05-25
大哥,你還記得3.5中的邏輯運算符嗎?^在java中是異或的意思。而且你的大括號位置也用錯了,多用并且位置不對,如果說一定要按照你的思路來的話,應(yīng)該是這樣的
public class HelloWorld{
public static void main(String[] args){
int num = 999;
int count = 1;
for( count=1; num/Math.pow(10,count)>1; count++){
if(num/(10^count)<=1){
??? break;
?? ?
}
}
System.out.println("它位數(shù)是"+count);
}
}
(順便一提:
在java中數(shù)字的平方表示:
可以使用兩個數(shù)2113相乘,或者使用自帶的方法平方。
? ?1,double a = b*b;兩個4102數(shù)相乘達(dá)到平方的效果。1653
? ? 2,double a = Math.pow(b,2);表示版b的平方。第一個參數(shù)權(quán)是底數(shù),第二個數(shù)是指數(shù)。
)
2020-05-25
第五行代碼 10^count 相當(dāng)于求了個異或,用java的Math類吧