A famosa conjectura de GOLDBACH diz que todo inteiro maior que 2 é a soma de dois números primos. Testes extensivos foram feitos sem contudo ser encontrado um contra-exemplo. Escreva um programa mostrando que a afirmação é verdadeira. Para todo número par entre 700 e 1100 o programa deve imprimir cada número e os seus correspondentes primos.
Alguém me ajuda??
Soluções para a tarefa
Respondido por
0
Em Python fica assim
def eh_prim(numero):
for i in range(2,int(numero/2)+1):
if numero % i == 0 :
return False
return True
conjectura_falhou = True
for i in range(700,1100+1,2):
for j in range(2,int(i/2)+1):
deu_certo = (eh_prim(j) and eh_prim(i-j))
if deu_certo:
print("O número ",i," pode ser a soma de ",j," e ",i-j)
conjectura_falhou = conjectura_falhou and deu_certo
if conjectura_falhou:
print("A conjectura falhou para ",i)
Pode rodar o programa aqui https://repl.it/@bokomoko/Goldbach
def eh_prim(numero):
for i in range(2,int(numero/2)+1):
if numero % i == 0 :
return False
return True
conjectura_falhou = True
for i in range(700,1100+1,2):
for j in range(2,int(i/2)+1):
deu_certo = (eh_prim(j) and eh_prim(i-j))
if deu_certo:
print("O número ",i," pode ser a soma de ",j," e ",i-j)
conjectura_falhou = conjectura_falhou and deu_certo
if conjectura_falhou:
print("A conjectura falhou para ",i)
Pode rodar o programa aqui https://repl.it/@bokomoko/Goldbach
Respondido por
0
Em Python fica assim
def eh_prim(numero):
for i in range(2,int(numero/2)+1):
if numero % i == 0 :
return False
return True
conjectura_falhou = True
for i in range(700,1100+1,2):
for j in range(2,int(i/2)+1):
deu_certo = (eh_prim(j) and eh_prim(i-j))
if deu_certo:
print("O número ",i," pode ser a soma de ",j," e ",i-j)
conjectura_falhou = conjectura_falhou and deu_certo
if conjectura_falhou:
print("A conjectura falhou para ",i)
Perguntas interessantes
Ed. Física,
8 meses atrás
Matemática,
8 meses atrás
História,
8 meses atrás
História,
1 ano atrás
Matemática,
1 ano atrás
Física,
1 ano atrás