2016-10-09 2 views
0

Я новичок в программировании, мне нужно знать, если это возможно, чтобы напечатать строку, как «Это простое число», если бы не было никаких результатов для гКак проверить, если число является простым, если нет divisibles не

n = int(input("Digite um número inteiro positivo: ")) 
for i in range(2,n): 
    if n % i == 0: 
     print(i) 

Например, если я не набрал 5 ничего показать

Если я набрал 8 было бы показать, 2 и 4

Как я могу добавить печать (п, «простое число»), если ничего не отображается в программе? я не мог найти любую команду для этого

+2

Для этого вам необходимо добавить флаг и затем проверить его. Выполнение осталось вам. – usr2564301

ответ

2
n = int(input("Digite um número inteiro positivo: ")) 
printed = False 
for i in range(2,n): 
    if n % i == 0: 
     print(i) 
     printed = True 
if not printed: 
     print(n,"is a prime number") 

Это использует «флаг» переменной, чтобы показать, если значение было напечатано.

+0

Спасибо, это то, что я хотел !, Мне понравился Pryom способ решения слишком – Baitalon

0
def isPrime(num): 
    for i in range(2, num): 
     if num % i == 0: 
      return False 
    return True 

def getFactors(n): 
    myList = [] 
    for i in range(2, n): 
     if n % i == 0: 
      myList.append(i) 
    return myList 

num = 17 
num2 = 20 
if isPrime(num): 
    print("prime") 
else: 
    print(getFactors(17)) 
if isPrime(num2): 
    print("prime") 
else: 
    print(getFactors(num2)) 
+0

исправил это ....... – Pete

0

Грубым способом сделать это было бы добавление чего-то вроде счетчика, который проверяет количество факторов.

n=int(input("Digite um número inteiro positivo:")) 
counter=0 
for i in range(2,n): 
    if(n%i==0): 
     print(i) 
     counter+=1 
if(counter==0): 
    print "n is prime" 
0

Вы также можете установить диапазон петли только значения проверки от 2 до п // 2, потому что что-то в прошлом, что было бы ненужным для проверки, если штрих.

def isPrime(n): 
    for i in range(2,**n//2**): 
     if n % i == 0: 
      return 'This number is not Prime.' 
    else: 
     return 'This number is Prime.' 


def main(): 
    user = int(input('Enter a number to check primeness: ')) 
    print(isPrime(user)) 

main() 
Смежные вопросы