私は数のnp.arrayを持っています。私は、ユーザーにプログラムに数値を与えたいと思っています。そして、配列の合計で割り算された数値のうち、数値がユーザーが指定した数値以上であるものを返します。一度に1つの配列要素を追加してNumpy配列のQuotientを確認する
x= np.array [1,2,3,4,5]
userNum = input (“Enter a number: ”)
#code. Say the user inputs 5. The sum of array = 15. Start at 1/15. Go until
#Quotient is >= userNum. In this case, it would have to go through 3 times
#(1+2+3 = 6). Then, output the numbers it had to calculate. (output: [1 2 3]
A whileループ:右ではなく、可能なすべての条件
例に左だけから?ユーザーnp.cumsumへの道はありますか? whileループは次のように実行していました。
Denom = (x[1]/sum(x))
#Start with dividing the first number
while Denom <= userNum
#psuedocode:
#(x[1]/sum(x)) doesn't work
#Add the next element of the array to the one(s) already added
#Denom is updated to (x[1]+x[2])/sum(x). This will continue to
#(x1[1]+x[2]+...x[n]>=userNum
#Store the numbers used in a seperate array
print 'Here are the numbers used: ' #Numbers used from array to be larger than userNum
#ex: [1 2 3]
実装方法がわかりません。助けて?これはあなたに使用される番号を与える必要があります
print(x[0:np.flatnonzero(x.cumsum()>userNum)[0]+1])
:
これに何らかの商を含めるのはなぜですか? – user2357112