Dictionnaires et géographie
L'usage de la calculatrice n'est pas autorisé
Durée: 1h
On donne deux dictionnaires Reg
et Dep
, le premier a pour clés les noms des régions françaises et a pour valeurs la liste des noms des départements qui font parti de chaque région et le deuxième a pour clés un nom de département et pour valeurs les numéros des départements.
Question 1
Donner une instruction qui retourne le nombre de régions.
len(Reg)
Question 2
Donner une instruction qui retourne les noms des départements de la région "Grand Est".
Reg["Grand Est"]
Question 3
Faire une fonction nombre_dep(R)
qui, appliquée à un nom de région R
retourne le nombre de départements de la région R
.
def nombre_dep(R):
return len(Reg[R])
Question 4
Faire une fonction depmax(Reg)
qui retourne le nom de la région qui a le plus de départements.
def depmax(Reg):
Rmax=''
nbremax=0
for R in Reg.keys():
nbred=nombre_dep(R)
if nbred>nbremax:
Rmax=R
nbremax=nbred
Question 5
Faire une fonction region_de(D)
qui à partir d'un nom de département D
retourne le nom de la région à laquelle il appartient.
def region_de(D):
for R in Reg.keys():
if D in Reg[R]:
return R
Question 6
Faire une fonction numdepregion(R)
qui prend en argument une région R
et retourne la liste des numéros de ses départements.
def numdepregion(R):
L=[]
for e in Reg[R]:
L.append(Dep[e])
Question 7
Faire une fonction region_denum(D)
qui a un numéro de département D
associe la région.
def region_denum(D):
Depinv={Dep[e]:e for e in Dep}
for R in Reg.keys():
if Depinv[D] in Reg[R]:
return R
Question 8
Faire une fonction memereg(D1,D2)
qui prend en arguments deux noms de départements et qui retourne True
si les deux département sont dans la même région et False
sinon.
def memereg(D1,D2):
for R in Reg.keys():
if D1 in Reg[R] and D2 in Reg[R]:
return True
return False
def memereg(D1,D2):
return region_de(D1)==region_de(D2)