sweetangel Nuevo Miembro

Registrado: 31 Ago 2008
Mensajes: 2
|
Publicado: Dom Ago 31, 2008 7:25 pm Título del mensaje: AYUDA CON PYTHON(urgente) |
|
|
Hola a tod@s,
me gustaria saber si alguien me puede ayudar con un ejercicio de python, es para la universidad, no soy Informatica pero en mi carrera tengo esa asignatura, asi que si alguien es tan amable de hacer el favor, mi mail es: angie_nightmare@hotmail.com
Agreguenme y hablamos mas tranquilos. Muchas gracias. |
|
sweetangel Nuevo Miembro

Registrado: 31 Ago 2008
Mensajes: 2
|
Publicado: Lun Sep 01, 2008 8:44 pm Título del mensaje: |
|
|
Pues exactamente este es el ejercico que tengo que hacer, si alguien me puede ayudar y sabe como se hace le estaría muy agradecida la verdad.
El siguiente programa, permite leer las coordenadas de los puntos en dos dimensiones de una polilínea de longitud variable. En cada iteración del bucle de lectura, se leen las dos coordenadas de un punto, y el bucle finaliza cuando, tras introducir los puntos deseados, se teclea "si" en respuesta a la pregunta "¿Fin introducción de puntos? (si, para acabar):".
from string import lower
polilinea = []
fin = 'no'
while fin != 'si':
polilinea = polilinea + [float(raw_input("Coordenada x del punto: "))]
polilinea = polilinea + [float(raw_input("Coordenada y del punto: "))]
fin = lower(raw_input("¿Fin introducción de puntos? (si, para acabar): "))
print "Puntos de la polilínea:", polilinea
Realiza las siguientes modificaciones a este programa:
1. En una polilínea, los segmentos de línea horizontales se pueden identificar porque dos puntos consecutivos tendrán el mismo valor de su coordenada en Y, y los segmentos de línea verticales porque dos puntos consecutivos tendrán el mismo valor de su coordenada en X. Amplia el programa dado para que, recorriendo la lista polilinea, cuente el número de segmentos horizontales y el de verticales que contiene, y los imprima. Para realizar esta modificación, date cuenta que si las coordenadas x e y de un punto están en polilinea en las posiciones i e i+1, entonces las coordenadas del siguiente punto están en las posiciones i+2 e i+3, ya que las coordenadas de los puntos se han almacenado consecutivamente al leerlos.
2. En una polilínea, si dos puntos consecutivos son iguales, el segundo de ellos es inútil ya que entre ambos están definiendo un segmento nulo. Amplia el programa para que, partiendo de la polilínea leída, obtenga una polilínea que no contenga puntos inútiles, es decir, que no contenga puntos consecutivos iguales. Esta modificación la puedes realizar de dos formas diferentes: creando una nueva lista en la que no incorporarás los puntos iguales a su antecesor en la lista original polilinea, o eliminando directamente los puntos iguales a su antecesor en la lista original polilinea. En cualquier caso, ten en cuenta las consideraciones anteriores sobre puntos consecutivos y posiciones en la lista.
Ejemplo: Si se parte de la polilínea [1,3,10,12,10,12,5,7], se obtendrá la polilínea sin puntos inútiles [1,3,10,12,5,7]. |
|