0

还有一个问题。我是 CS 一年级学生,必须在纸上完成这项工作,所以我无法导入任何程序来解决问题。

我被要求创建一组伪随机整数,然后使用函数 def product (n) 将整数的乘积相乘。我知道这段代码真的错了,但我根本不知道该怎么做!这是我到目前为止所拥有的:

def product(n):
    product = j*i
for j in range (20):
    i=random.randrange(1,4,1)
    print ("The set of numbers is", i)
4

4 回答 4

1

您没有指定整数的范围,但我认为这可以满足您的要求:

import random

def product(n):
  lower_bound = 1
  upper_bound = 10
  result = 1
  for i in range(n):
    result *= random.randint(lower_bound, upper_bound)
  return result
于 2013-04-16T13:59:13.433 回答
1

我会去

import random
def product(n):
    return reduce(lambda x,y:x*y,(random.randint(1,3) for i in xrange(n)))

几件事:

  1. 如果不导入或编写自己的伪随机生成器,您将无法真正生成随机数
  2. 查找减少。这可能是这里的首选方法。
  3. 如果您可以导入operator模块,请使用operator.mul而不是lambda x,y:x*y
于 2013-04-16T13:59:43.197 回答
0

Ifn是生成数字的数量:

import random
def product(n):
    random_list = [random.randint(0,n) for r in xrange(n)]
    return reduce(lambda x,y : x*y,  random_list)
于 2013-04-16T13:59:27.180 回答
0

你想要什么?乘以整数并显示他们的产品?看到这个:

def product(numberOfIntegers) :
   finalResult = 1
   for i in range(1,numberOfIntegers) :
      randomNumber = random.randrange(1,4,1)
      finalResult = finalResult * randomNumber
   return finalResult
于 2013-04-16T14:00:00.843 回答