我在C ++中有一些代码,它为一个输入的数字计算log2(n)。
#include <iostream>
#include <cmath>
using namespace std;
double log(double a, double b) {
return log(b) / log(a);
}
int main() {
int n;
cin >> n;
cout << (int)log(2, n);
return 0;
}
如何使用n个输入的数字。因此,例如,5个数字的输入必须是这样的(自身线上的每个数字):
5 // Enter amount of numbers below
24958 // Enter the first number
48569 // ... second number...
48564
40506
59232
输出将是:
14
15
15
15
15
答案 0 :(得分:0)
您应该使用数组来存储数字。
#include <iostream>
#include <cmath>
using namespace std;
double log(double a, double b) {
return log(b) / log(a);
}
int main() {
int iter, i;
cin >> iter;
int arr[iter];
for ( i=0; i<iter; i++)
cin >> arr[i];
for ( i=0; i<iter; i++)
cout << (int)log(2, arr[i])<<endl;
return 0;
}
答案 1 :(得分:0)
你能说明你用来解析用户输入的代码吗?如果您尚未创建此类代码,请执行以下操作: