Diferencia entre revisiones de «Implementación de algoritmos de teoría de números/Números amigos»
Contenido eliminado Contenido añadido
Sin resumen de edición |
|||
Línea 431:
}
</script>
</source>▼
=== Python ===▼
Comprobar si dos números son amigos.▼
<source lang="python">▼
#Para Python 3.2.2▼
# Definición de la función de comprobación de números amigos▼
def numeros_amigos(x,y):▼
suma_x=0▼
suma_y=0▼
for i in range(1,x):▼
if x%i==0:▼
suma_x+=i▼
for k in range(1,y):▼
if y%k==0:▼
suma_y+=k▼
return suma_x==y and suma_y==x▼
# Cuerpo del programa▼
n_1=int(input('Introduzca el nº 1: '))▼
n_2=int(input('Introduzca el nº 2: '))▼
if numeros_amigos(n_1,n_2):▼
print ('¡Son amigos! :)')▼
else:▼
print ('No son amigos :(')▼
</source>▼
=== Scheme ===▼
<source lang="scheme">▼
;funcion principal▼
(define (amigos? A B)▼
(cond▼
((and (= A (sumdivisores B 1)) (= B (sumdivisores A 1)))"Amigos")▼
(else "No Amigos")▼
)▼
)▼
;funcion secundaria:suma los divisores de cada numero▼
(define (sumdivisores A B)▼
(cond▼
((= A B) 0)▼
((integer? (/ A B))(+ B (sumdivisores A (+ B 1))))▼
(else (sumdivisores A (+ B 1)))▼
)▼
prawn )▼
</source>
Línea 538 ⟶ 490:
FinMientras
FinProceso
▲</source>
▲=== Python ===
▲Comprobar si dos números son amigos.
▲<source lang="python">
▲#Para Python 3.2.2
▲# Definición de la función de comprobación de números amigos
▲def numeros_amigos(x,y):
▲ suma_x=0
▲ suma_y=0
▲ for i in range(1,x):
▲ if x%i==0:
▲ suma_x+=i
▲ for k in range(1,y):
▲ if y%k==0:
▲ suma_y+=k
▲ return suma_x==y and suma_y==x
▲# Cuerpo del programa
▲n_1=int(input('Introduzca el nº 1: '))
▲n_2=int(input('Introduzca el nº 2: '))
▲if numeros_amigos(n_1,n_2):
▲ print ('¡Son amigos! :)')
▲else:
▲ print ('No son amigos :(')
▲</source>
▲=== Scheme ===
▲<source lang="scheme">
▲;funcion principal
▲(define (amigos? A B)
▲ (cond
▲ ((and (= A (sumdivisores B 1)) (= B (sumdivisores A 1)))"Amigos")
▲ (else "No Amigos")
▲ )
▲ )
▲;funcion secundaria:suma los divisores de cada numero
▲(define (sumdivisores A B)
▲ (cond
▲ ((= A B) 0)
▲ ((integer? (/ A B))(+ B (sumdivisores A (+ B 1))))
▲ (else (sumdivisores A (+ B 1)))
▲ )
▲ prawn )
</source>
|