Home > Back-end >  Check a number if prime using python
Check a number if prime using python

Time:11-18

I want to create a procedure show if a given number prime

what i have tried so far :

def premier(a):
    isPrimary=False
    for i in range(2,a//2):
        if(a%i==0):
            isPrimary=True
            break
    if(isPrimary==True):
        print(a,'est un nbre premier')
    else:
        print(a,'non premier')
c = int(input("Donner un nbre"))
premier(c)

test failed : Donner un nbre8 8 est un nbre premier which is not prime

CodePudding user response:

i think you're talking about prime numbers right ? - so numbers only divisable by themselfs and 1. In that case you could use:

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

CodePudding user response:

Vous vous trompez d'état. Ce sera a%i != 0 s'il n'est pas égal à zéro alors premier si zéro alors pas premier. Ou vous pouvez définir isPrimary= False dans la condition que vous avez donnée. J'espère que cela fonctionnera.

In english: You make a mistake in in condition. It will be a%i != 0 if it not equal zero then prime if zero then not prime. Or you can set isPrimary= False inside the condition you gave. I hope it will work.

   def premier(a):
        isPrimary=False
        for i in range(2,a//2):
            if(a%i!=0):
                isPrimary=True
                break
        if(isPrimary==True):
            print(a,'est un nbre premier')
        else:
            print(a,'non premier')
    c = int(input("Donner un nbre"))
    premier(c)

Or,

def premier(a):
            isPrimary=False
            for i in range(2,a//2):
                if(a%i==0):
                    isPrimary=False
                    break
            if(isPrimary==True):
                print(a,'est un nbre premier')
            else:
                print(a,'non premier')
  c = int(input("Donner un nbre"))
  premier(c)
  • Related