2016-01-06 50 views
-5

Alogrithm 1这些算法:如何实现以下

获取数字L1的列表,L2,L3 .... LN作为参数
假设L1是最大的,最大= L1
从列表中采取下一个号码李并执行以下操作
如果最大的是小于李
最大=李
如果李是最后一个数字从列表,然后
回报最大,出来
个 否则重复同样的过程从步骤3

算法2开始:

创建函数prime_number,做以下
注意到作为参数的整数,
返回布尔值真,如果该值为素数或
如果值不是素数,则返回布尔值false

到目前为止,我的代码是:

def get_algorithm_result(num_list):  
    largest =num_list[0]   
    for item in range(0,len(num_list)):  
     if largest < num_list[item]:     
      largest = num_list[item]  
    return largest 

def prime_number(integer):  
    if integer%2==0: 
     return False 
    else: 
     return True 

执行的代码后,我得到

"Test Spec Failed 

Your solution failed to pass all the tests" 

我要去哪里错了?

+5

您prime_number功能只是通过2检查整除剩余??? – astrosyam

+0

prime_number在另一个函数中做什么? – Arman

+1

显然你的'prime_number'函数并不真正检查素数,只是奇数。 –

回答

0

你的意思是第一个找到最大的数字?那么你应该使用MAX()一样

list = [1,2,4,5,3] 
print max(list) 
>>> 5 

这应与第二个帮助:

def prime_number(n): 

    if n > 1: 
     for x in range(2,n): 
      if (n % x) == 0: 
       return False 
       break 
     else: 
      return True 

如果一个数是素数,则该因素是只有1和它本身。如果从2到数字还有其他因素,则不是素数。当n除以x时,n%x找到余数。如果x是n的因子,则n%x的值为0

0
def get_algorithm_result(numbers): 
    largest = numbers[0] 
    for i in numbers: 
    if largest < i: 
     largest = i 
return largest 

def prime_number(number): 
    if number > 1: 
    for i in range(2, number): 
     if (number % i) == 0: 
     return False 
     else: 
     return True 
    else: 
    return False 
0
def get_algorithm_result(numb): 
    largest = numb[0] 
    for Li in numb: 
    if largest < Li: 
     largest = Li 
    if Li == numb[-1]: 
     return largest 
    else: 
     continue 

def prime_number(primes): 
    if primes > 1: 
    for i in range(3, primes): 
     if (primes % i) == 0: 
     return False 
     else: 
     return True 
    else: 
    return False