мне нужно было проверить тот факт, чтоудвоение Int раза ЛГНА в Java
, если вы начинаете с целым числом = 1, и удвоить его журнал N (к основанию 2) раз, вы получаете N
Я думал, я бы написать некоторый Java-код для этого .. но потом, это то, что я получил
public class Log2NDoubling {
public static void main(String[] args) {
int s = 1;
int N = 10;
double lg2N = log2(N);
int intlg2N = (int)lg2N;
for(int i=0;i< intlg2N;i++){
s *= 2;
}
System.out.println("s="+s);
}
private static double log2(int x){
return Math.log10(x)/Math.log10(2);
}
}
который произвел выход
s = 8,0
Ну это точно не доказывающее выше statement..is неправильного выбора входных данных виновника или это мой код?
Вы получили выход '8.0' из' int'? Во всяком случае, вы удвоили число '3' раз, а не' log2 (10) == 3.32' раз – Blorgbeard