Forum EduPython

Echanges autour d'EduPython.

Vous n'êtes pas identifié(e).

#1 2019-12-18 15:10:25

chaa_jnn
Membre
Inscription : 2019-12-18
Messages : 1

programme le voyageur

bonjour a tous,
je dois essayer de programmer un programme sous le nom: Le voyageur mais je n'y arrive pas.
Ce programme doit consister a trouver l'itinéraire le plus court parmi 5 villes, Metz, Nancy, Troyes, Paris et Reims.
le programme doit demander à la personne sa ville de départ puis il doit ensuite passé par les 4 villes restantes puis revenir par la ville de départ
ex ville de départ=Paris alors cela fait Paris-Metz-Reims-Nancy-Troyes-Paris
et dans le programme on doit choisir a chaque fois l'itinéraire le plus court.
j'ai quelques pistes : j'ai d'abord créer un dictionnaire dans lequel j'ai mit 5 autres dictionnaires avec le nombre de kilomètres puis je sais qu'il faut créer une liste nommé ville_passé ou l'on met les villes par lesquelles le voyageur est déjà passé.
Merci de votre aide.

Hors ligne

#2 2020-01-07 20:17:04

LoaTcHi
Membre
Inscription : 2020-01-07
Messages : 1

Re : programme le voyageur

Bonsoir,

De ce que j'ai pu en comprendre les 5 villes seraient toujours reliés de la meme façon , de maniere cyclique.
C'est à dire que prenons Paris-Metz-Reims-Nancy-Troyes-Paris, l'ordre sera toujours le meme , seulement les villes
de départ et d'arrivées varient.
J'imagine donc une liste dans laquelle serait stockée vos noms de villes et en fonction de la ville de départ choisie
un index est pris . Il suffit ensuite de parcourir cette liste en fonction de la ville de départ.
En espérant t'avoir aidé.

 

def itineraire(depart):

    ville_list = ["Paris", "Metz", "Reims", "Nancy", "Troyes"]
    idx_ville = ville_list.index(depart)
    for i in range(len(ville_list)+1):
        print(ville_list[idx_ville)
        idx_ville += 1
        if idx_ville == len(ville_list):
            idx_ville = 0
       
itineraire("Paris")

Dernière modification par LoaTcHi (2020-01-07 20:28:20)

Hors ligne

Pied de page des forums