Premières procédures
Premières procédures
Question
Reprendre la procédure toutMettreSurTas1
en utilisant la procédure viderTas.
(attention à l'ordre de déclarations de ces procédures)
Rappel vider tas
Il faut vider le tas tous les tas sur le tas 1 mais pensez à vérifier que le tas de départ est non vide
def vider_tas(d,a) :
"""Vide le tas de départ d sur le tas d'arrivée a"""
while(tas_non_vide(d) :
deplacer_sommet(d,a)
def toutMettreSurTas1() :
if(tas_non_vide(2)) :
vider_tas(2,1)
if(tas_non_vide(3)) :
vider_tas(3,1)
if(tas_non_vide(4)) :
vider_tas(4,1)
Question
Faire une version paramétrée par le numéro du tas sur lequel on veut tout mettre.
def toutMettreSurTas(i) :
if((i !=1) and (tas_non_vide(1)) :
vider_tas(2,i)
if((i !=2) and (tas_non_vide(2)) :
vider_tas(2,i)
if((i !=3) and (tas_non_vide(3)) :
vider_tas(3,i)
if((i !=4) and (tas_non_vide(4)) :
vider_tas(4,i)