problema de listas
Sonia
siosss en ono.com
Jue Ago 14 18:14:49 CEST 2003
os dejo un problema sobre listas pq me dan fallos sobre concatenacion, q se ve q no se peuden hacer. pongo el codigo por si veis donde hay 'cosas raras' y a continuacion pego el enunciado para no crear mas dudas
gracias!!
#tramos costes
def minimo(lista):
min=lista[0]
for i in range(0,len(lista)):
if lista[i]<min:
min=lista[i]
return min
def recorrer(coste,tramo,ini,fin):
lista_aux=[]
lista_min=[]
if ini<=fin: #recorremos la lista de ppio a fin
while ini<=fin:
coste_tramo=lista_aux+tramo[ini]
lista_aux=lista_aux+tramo[ini]
ini=ini+1
if leng[lista_aux]==3:
lista_min=lista_min+minimo(lista_aux)
lista_aux=[]
for j in range (ini,fin):
suma=suma+coste[j]
for k in range (0,len(lista_min)):
suma_minimos=suma_minimos+lista_min[k]
rdo=suma-suma_minimos
return rdo
#programa ppal
tramo=[0,1,2,3,4,5,6,7,8,9,10,11,12]
coste=[2,3,2,2,1,2,3,4,4,2,3,3,2]
ini=int(raw_input('Introduce ini: '))
fin=int(raw_input('introduce fin: '))
res=recorrer(coste,tramo,ini,fin)
print res
ENUNCIADO
Implementa una funcion denominada longitudruta q, dada una ruta formada por una lista de nombres de ciudades y otra lista con la distancias entre pares de ciudades, devuelva la longitud de dicha ruta.
La funcion longitudruta recibe como 1er parámetro una lista de cadenas(cada cadena sera el nombre de una ciudad, por lo q tomaremos la lsta como una ruta de viaje) y como segundo parámetro una lista de tramos.
Cada tramo sera a su vez una lista con el formato [cadena,cadena,entero] (las 2 cadenas son nombres de ciudades y el entero la distancia en kilómetros entre ellas)
Si la funcion longitudruta no puede calcular la longitud de la ruta debido a q en el segundo parámetro falta alguna distancia entre las ciudades q es necesaria, entonces debe devolver none, para indicar q la longitud de la ruta no puede calcularse.
Ejemplo:
Dist=[]
Dist.append(['alicante','valencia',166])
Dist.append(['castellon','valencia',65])
Dist.append(['tarragona',castellon',186])
Ruta1=['castellon','valencia','alicante']
Ruta2=['castellon','alicante','valencia']
Print 'longitud ruta1:', longitud(ruta1,dist)
Print 'longitud ruta2:' longitudruta(ruta2,dist)
Al ejecutarlo , se escribira x pantalla:
Longitud ruta1: 231
Longitud ruta2: none
Importante:
Ten en cuenta q en la lista dist del ejemplo no aparece la distancia 'valencia'-'alicante', sino la distancia 'alicante'-'valencia'. Es decir, cuando busques la distancia entre 2 ciudades deberas buscar ambas posibilidades, antes de indicar q la ruta no puede calcularse.
La segunda ruta no puede calcularse pq en la lista dist del ejemplo no aparece la distancia 'castellon'-'alicante' ni 'alicante'-'castellon'
------------ próxima parte ------------
Se ha borrado un adjunto en formato HTML...
URL: <http://mail.python.org/pipermail/python-es/attachments/20030814/7a3b1809/attachment.html>
------------ próxima parte ------------
_______________________________________________
Python-es mailing list
Python-es en aditel.org
http://listas.aditel.org/listinfo/python-es
Más información sobre la lista de distribución Python-es