
 # arquivo: primo3.py
 # --------------------
 # Este programa verifica se um dado numero inteiro positivo  n 
 # e' primo 
 #

def main():
    #  n		      numero a ser lido e testado 
    #  d		      candidato a divisor 
    #  EhPrimo	  para indicar se o numero dado n 'e primo ou nao    
    #              Convencao: EhPrimo = True se o numero dado 'e primo 
    #                         EhPrimo = False se o numero dado nao 'e primo        
   

    n = int(input("Forneca um numero inteiro positivo: ")) 
    print("Inteiro dado = %d \n" %n)


    if (n <= 1 or (n != 2 and n % 2 == 0)):
        EhPrimo = False	  # nenhum numero inteiro <= 1 ou par > 2 e' primo 
    else:
        EhPrimo = True    # n = 2  ou  n eh impar, n >= 3, e ate' prova em contrario, EhPrimo = True

    d = 3
    while (EhPrimo and d <= n / 2):
        if (n % d == 0):
            EhPrimo = 0
        d = d + 2                  # testamos so' os  impares: 3, 5, 7...
    
    if (EhPrimo):
        print("%d e' primo \n" %n)
    else:
        print("%d nao e' primo \n" %n)
# ---------------
main()

