我正在尝试解决以下问题。我可以做的第一部分,但是问题的第二部分,我需要创建一个循环,该循环检查直到数组中的值大于100,它将继续乘以2并打印结果。>
使用掩码将以下列表中所有低于100的值乘以
a = np.array([30, 10, 84, 101, 76])
重复此操作,直到所有值都超过100。(不是手动,而是通过循环):
我认为最好是使用While循环,但是我无法使用它。
答案 0 :(得分:0)
不需要循环或掩码,因为可以显式计算所需的乘法数;
a * 2**np.floor(np.log2(100/a) + 1)
做你想要的。
答案 1 :(得分:0)
看,这就是我所拥有的,对于许多人来说,这可能超级简单,但对像我这样的新手来说却并非如此。我对'while'有疑问
#include<bits/stdc++.h>
using namespace std;
int main()
{
string s="";
char ch;
while(1)
{
cin>>ch;
s+=ch;
}
cout<<s<<endl;
return 0;
}
x = 1
y = 1
而True:
如果x!= 0:
打印(a)
对于范围内的我(len(a)):
如果a [i] <100:
a [i] = a [i] * 2
y = 0
i + = 1
如果(i == len(a)和y == 1):
x = 0
打破
y = 1
其他:
打破