Foros del Web » Programando para Internet » Python »

Dificultades con ejercicio (Python)

Estas en el tema de Dificultades con ejercicio (Python) en el foro de Python en Foros del Web. Hola, por favor me podrían ayudar con el siguiente trozo de un programa que debo resolver. Este ejercicio consta de 6 pasos pero afortunadamente no ...
  #1 (permalink)  
Antiguo 20/11/2012, 13:55
 
Fecha de Ingreso: noviembre-2012
Mensajes: 10
Antigüedad: 12 años
Puntos: 0
Dificultades con ejercicio (Python)

Hola, por favor me podrían ayudar con el siguiente trozo de un programa que debo resolver.

Este ejercicio consta de 6 pasos pero afortunadamente no eran dependientes del paso 1, así que me las arregle bien!.

En realidad a los ítems "b" y "c", creo tenerlos... pero el que no hubo forma de que corriera como debe ser es el ítem "a".

Si fueran tan amables de ayudarme se los agradecería. Saludos!!


Paso 1:
a) Pedir al usuario que ingrese valores distintos de cero y
menores que 100 en valor absoluto. El ingreso del valor
cero "interrumpe la carga de datos". Un valor mayor o igual
a 100 en valor absoluto simplemente debe "descartarse".
b) Los datos se deben cargar en una lista.
c) Verifique que la longitud de la lista sea mayor que 3,
caso contrario el programa debe "terminar" mostrando por
consola el texto "Datos insuficientes"



# EJEMPLO DE EJECUCIÓN #

************************************************** **************

Ingrese enteros distintos de cero. Cero para terminar

Ingrese entero: 100
Ingrese entero: 233
Ingrese entero: 99
Ingrese entero: 50
Ingrese entero: 1
Ingrese entero: 2
Ingrese entero: 3
Ingrese entero: -1
Ingrese entero: -123
Ingrese entero: -99
Ingrese entero: 0

Última edición por Azrael_Carmesi; 20/11/2012 a las 14:10
  #2 (permalink)  
Antiguo 20/11/2012, 15:50
Avatar de razpeitia
Moderador
 
Fecha de Ingreso: marzo-2005
Ubicación: Monterrey, México
Mensajes: 7.321
Antigüedad: 19 años, 8 meses
Puntos: 1360
Respuesta: Dificultades con ejercicio (Python)

Podemos ver lo que llevas hecho?
En que parte se te dificulta?
Has intentado dividir tu programa en pasos mas simples y al final combinarlos todos?
Has leído algo del tema o simplemente estas escribiendo código como salga?
  #3 (permalink)  
Antiguo 20/11/2012, 16:12
 
Fecha de Ingreso: noviembre-2012
Mensajes: 10
Antigüedad: 12 años
Puntos: 0
Respuesta: Dificultades con ejercicio (Python)

Cita:
Iniciado por razpeitia Ver Mensaje
Podemos ver lo que llevas hecho?
En que parte se te dificulta?
Has intentado dividir tu programa en pasos mas simples y al final combinarlos todos?
Has leído algo del tema o simplemente estas escribiendo código como salga?
Esto es lo que humildemente pude hacer, perdón por la rusticidad pero es hasta donde me dio!... ítems "a", "b" y "c". El ítem "a" es el que no trabaja, no me sale el bucle!!

Código Python:
Ver original
  1. # PROGRAMA PRINCIPAL
  2.  
  3.  
  4.  
  5. # Se ingresan valores distintos de 0 (termina) y menores que 100 (nuevamente)
  6.  
  7. Lista = []
  8. Numero = int(raw_input("Valor:"))
  9. while Numero != 0 and Numero < 100:
  10.   Lista.append(Numero)
  11.   Numero = int(raw_input("\nValor:"))
  12.   if Numero == 0:
  13.     break
  14. if Numero == 0:
  15.   print "\nTerminar"
  16.  
  17.  
  18. # Verifico que la longitud de la lista sea mayor que 3.
  19.  
  20. Longitud = len(Lista)
  21. if Longitud > 3:
  22.   Filas = Longitud
  23.   Columnas = Longitud
  24. else:
  25.   print "\nDatos insuficientes"

Última edición por razpeitia; 20/11/2012 a las 18:41
  #4 (permalink)  
Antiguo 20/11/2012, 19:01
Avatar de razpeitia
Moderador
 
Fecha de Ingreso: marzo-2005
Ubicación: Monterrey, México
Mensajes: 7.321
Antigüedad: 19 años, 8 meses
Puntos: 1360
Respuesta: Dificultades con ejercicio (Python)

Código Python:
Ver original
  1. Lista = []
  2. Numero = int(raw_input("Valor:"))
  3. while Numero != 0 and Numero < 100:
  4.   Lista.append(Numero)
  5.   Numero = int(raw_input("\nValor:"))
  6.   if Numero == 0:
  7.     break
  8. if Numero == 0:
  9.   print "\nTerminar"
  10.  
  11.  
  12. # Verifico que la longitud de la lista sea mayor que 3.
  13.  
  14. Longitud = len(Lista)
  15. if Longitud > 3:
  16.   Filas = Longitud
  17.   Columnas = Longitud
  18. else:
  19.   print "\nDatos insuficientes"

A mi me funciona de maravilla todos los puntos. Excepto que te piden que el numero este dentro del valor absoluto. Lo que significa que puede recibir números negativos, no menores a -100.
  #5 (permalink)  
Antiguo 20/11/2012, 22:04
 
Fecha de Ingreso: noviembre-2012
Mensajes: 10
Antigüedad: 12 años
Puntos: 0
Respuesta: Dificultades con ejercicio (Python)

Cita:
Iniciado por razpeitia Ver Mensaje
A mi me funciona de maravilla todos los puntos. Excepto que te piden que el numero este dentro del valor absoluto. Lo que significa que puede recibir números negativos, no menores a -100.

Perfecto amigo, ese es uno de mis problemas. Como soluciono lo del valor absoluto, porque el inconveniente es que a mi no me sale!.

Ademas el otro problema es que cuando ingreso un valor >= 100 (los cuales no deben de almacenarse en la lista), no consigo que el programa me pida que vuelva a ingresar otro valor!.

Es decir, mi meta es conseguir que el programa trabaje tal como lo muestra el # EJEMPLO DE EJECUCIÓN #
  #6 (permalink)  
Antiguo 22/11/2012, 07:39
Avatar de razpeitia
Moderador
 
Fecha de Ingreso: marzo-2005
Ubicación: Monterrey, México
Mensajes: 7.321
Antigüedad: 19 años, 8 meses
Puntos: 1360
Respuesta: Dificultades con ejercicio (Python)

Ok, entiendo. Quizás hayas leído del tema, hayas puesto atención a clase e incluso intentaste lo mejor para que te saliera tu programa.

El problema es, que si no lees código de otras personas, nunca vas a pasar de la visión limitada que te ofrece la escuela.

Aquí un trocito de mi código.
Código Python:
Ver original
  1. Lista = []
  2. while True:
  3.     Numero = int(raw_input("\nValor:"))
  4.    
  5.     if Numero == 0:
  6.         break
  7.     elif abs(Numero) < 100:
  8.         Lista.append(Numero)

En la linea 1, inicio con mi lista vacia.
En la linea 2, hago un ciclo que siempre se este ejecutando, la unica forma de salir es haciendo un break (o un return si estuviera en una función).
En la linea 3, leo un numero que me de el usuario.
En la linea 5-6, checo si es mi condición de parada osea 0. Y de ser así me salgo del ciclo con un break.
En la linea 7-8, puedo asumir perfectamente que el valor de Numero no es 0, entonces checo si es menor a 100 en valor absoluto. Y de ser así lo añado a la lista.
  #7 (permalink)  
Antiguo 24/11/2012, 00:01
 
Fecha de Ingreso: noviembre-2012
Mensajes: 10
Antigüedad: 12 años
Puntos: 0
Respuesta: Dificultades con ejercicio (Python)

Hey... Genial razpeitia, mil gracias!!. Ya conseguí que funcione correctamente.

Etiquetas: ejercicio, gui, programa
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 11:41.