elhacker.net cabecera Bienvenido(a), Visitante. Por favor Ingresar o Registrarse
¿Perdiste tu email de activación?.

 

 


Tema destacado: Únete al Grupo Steam elhacker.NET


+  Foro de elhacker.net
|-+  Programación
| |-+  Scripting
| | |-+  [Python] - Número cerca.
0 Usuarios y 1 Visitante están viendo este tema.
Páginas: [1] Ir Abajo Respuesta Imprimir
Autor Tema: [Python] - Número cerca.  (Leído 8,342 veces)
Meta


Desconectado Desconectado

Mensajes: 3.499



Ver Perfil WWW
[Python] - Número cerca.
« en: 10 Octubre 2010, 20:45 pm »

Buenas:

Programa que, dados cinco números enteros, determine cuál de los cuatro últimos nº es más cercano al primero. (Por ejemplo, si el usuario introduce los números 2, 6, 4, 1 y 10, el programa responderá que el número más cercano al 2 es el 1.).

Se me resiste hacer este ejercicio. Lo hice así pero no me funciona, ¿una ayudita?

Código
  1. n1 = int(raw_input('Ingresa el primer número: '))
  2. n2 = int(raw_input('Ingresa el segundo número: '))
  3. n3 = int(raw_input('Ingresa el tercer número: '))
  4. n4 = int(raw_input('Ingresa el cuarto número: '))
  5. n5 = int(raw_input('Ingresa el quinto número: '))
  6.  
  7. z2 = n2 - n1
  8. z3 = n3 - n1
  9. z4 = n4 - n1
  10. z5 = n5 - n1
  11.  
  12. numero = abs(z2)
  13.  
  14. if abs(numero) == abs(z2):
  15.    numero = abs(n2)
  16. if abs(numero) == abs(z3):
  17.    numero = abs(n3)
  18. if abs(numero) == abs(z4):
  19.    numero = abs(n4)
  20. if abs(numero) == abs(z5):
  21.    numero = abs(n5)
  22.  
  23. print "El número %d es más cercano al %d." % (n1, numero)
  24.  
  25. # En el Cap-2 del PDF, 2.6. Funciones predefinidas explica abs(-3).

Saludo.


En línea

Shell Root
Moderador Global
***
Desconectado Desconectado

Mensajes: 3.724


<3


Ver Perfil WWW
Re: [Python] - Número cerca.
« Respuesta #1 en: 10 Octubre 2010, 21:30 pm »

no entiendo esto, supongo que es para ver el menor resultado.
Código
  1. z2 = n2 - n1
  2. z3 = n3 - n1
  3. z4 = n4 - n1
  4. z5 = n5 - n1

Después tocará verificar cual es el número menor, verdad?


« Última modificación: 10 Octubre 2010, 21:37 pm por Shell Root » En línea

Te vendería mi talento por poder dormir tranquilo.
[L]ord [R]NA


Desconectado Desconectado

Mensajes: 1.513

El Dictador y Verdugo de H-Sec


Ver Perfil WWW
Re: [Python] - Número cerca.
« Respuesta #2 en: 10 Octubre 2010, 22:38 pm »

Lee el enunciado nuevamente, no estas haciendo nada como te lo piden.
En línea

Meta


Desconectado Desconectado

Mensajes: 3.499



Ver Perfil WWW
Re: [Python] - Número cerca.
« Respuesta #3 en: 10 Octubre 2010, 23:53 pm »

Es loq ue estoy iintentando hacer pero no me sale.
En línea

[L]ord [R]NA


Desconectado Desconectado

Mensajes: 1.513

El Dictador y Verdugo de H-Sec


Ver Perfil WWW
Re: [Python] - Número cerca.
« Respuesta #4 en: 11 Octubre 2010, 02:54 am »

En ningun lugar veo que compares cual es mayor que otro o menor.
En línea

Meta


Desconectado Desconectado

Mensajes: 3.499



Ver Perfil WWW
Re: [Python] - Número cerca.
« Respuesta #5 en: 11 Octubre 2010, 04:13 am »

Código
  1. n1 = int(raw_input('Ingresa el primer número: '))
  2. n2 = int(raw_input('Ingresa el segundo número: '))
  3. n3 = int(raw_input('Ingresa el tercer número: '))
  4. n4 = int(raw_input('Ingresa el cuarto número: '))
  5. n5 = int(raw_input('Ingresa el quinto número: '))
  6.  
  7. z2 = n2 - n1
  8. z3 = n3 - n1
  9. z4 = n4 - n1
  10. z5 = n5 - n1
  11.  
  12. numero = abs(z2)
  13.  
  14. if abs(numero) <= abs(z2):
  15.    numero = abs(n2)
  16. if abs(numero) <= abs(z3):
  17.    numero = abs(n3)
  18. if abs(numero) <= abs(z4):
  19.    numero = abs(n4)
  20. if abs(numero) <= abs(z5):
  21.    numero = abs(n5)
  22.  
  23. print "El número %d es más cercano al %d." % (n1, numero)
  24.  
  25.  

Ingresa el primer número: 2
Ingresa el segundo número: 4
Ingresa el tercer número: 5
Ingresa el cuarto número: 6
Ingresa el quinto número: 7
El número 2 es más cercano al 6.

Ya lo puse y su resultado es raro.
En línea

[L]ord [R]NA


Desconectado Desconectado

Mensajes: 1.513

El Dictador y Verdugo de H-Sec


Ver Perfil WWW
Re: [Python] - Número cerca.
« Respuesta #6 en: 11 Octubre 2010, 04:36 am »

Estas realizando mal la comparacion no puedes comparar 'numero' con una de las 'z'... otra cosa, piensa un poquito en el enunciado del problema y veras que no necesitas tantas variables. Solo te piden el mas cercano, ningun otro... entonces para que lo almacenas?
En línea

JCDedalus

Desconectado Desconectado

Mensajes: 10


Todo lo que es comprendido está bien.


Ver Perfil
Re: [Python] - Número cerca.
« Respuesta #7 en: 11 Octubre 2010, 04:36 am »

Recuerda que puedes usar la función "elif" para ahorrarte algo de código y agregar más de una condición al IF o ELIF de la sieguiente forma:

Código:
If a>b and a>c and a>x:
print 'De este modo haces que algo solo se ejecute cuando cumple una serie de condiciones'
« Última modificación: 11 Octubre 2010, 05:48 am por JCDedalus » En línea

Todo lo que es comprendido está bien.
"We.....Are.....One"
[L]ord [R]NA


Desconectado Desconectado

Mensajes: 1.513

El Dictador y Verdugo de H-Sec


Ver Perfil WWW
Re: [Python] - Número cerca.
« Respuesta #8 en: 11 Octubre 2010, 04:43 am »

JCDedalus la idea era que el la hiciera, pero si tu codigo no soporta los negativos aun esta mal.
En línea

Páginas: [1] Ir Arriba Respuesta Imprimir 

Ir a:  

Mensajes similares
Asunto Iniciado por Respuestas Vistas Último mensaje
RegExp Numero de string [Python]
Scripting
Ricardo95 1 3,620 Último mensaje 15 Abril 2011, 00:46 am
por Novlucker
Devolver True si el numero es par [python]
Programación General
bichotg 5 7,244 Último mensaje 22 Febrero 2012, 03:05 am
por [Case]
[Python] Qué número de los introducidos es el más grande...?
Scripting
sora_ori 5 5,880 Último mensaje 18 Noviembre 2012, 14:17 pm
por sora_ori
help! función que permita aprox un número a su múltiplo de 6 inmediato en python
Scripting
darkweb64 6 3,219 Último mensaje 6 Febrero 2015, 18:11 pm
por darkweb64
numero consecutivo python
Scripting
asdexiva 1 2,297 Último mensaje 1 Junio 2020, 01:15 am
por tincopasan
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines