Corrigé sujet 01 - Année : 2022⚓︎
Exercice 1⚓︎
🐍 Script Python | |
---|---|
1 2 3 4 5 6 |
|
Exercice 2⚓︎
🐍 Script Python | |
---|---|
1 2 3 4 5 6 7 8 9 10 |
|
- Lorsqu'il n'y a plus rien à rendre on renvoie la solution
- Si la pièce est plus petite que la somme à rendre on l'ajoute à la solution et on diminue la somme à rendre
- La pièce dépasse la somme à rendre, on relance le processus en regardant la pièce suivante dans la liste
Attention
📋 Texte
* Le code fourni utilise un objet mutable (une liste) comme paramètre par défaut d'une fonction :
```python
def rendu_glouton(arendre, solution=[], i=0):
```
C'est une très mauvaise pratique car source d'erreurs, en effet la variable `solution` étant mutable elle est modifiée par la fonction lors d'un premier appel et ne sera donc plus vide lors des appels suivants. Pour constater le problème, faire plusieurs appels à cette fonction sans spécifier les arguments ayant des valeurs par défaut. Pour une solution à ce problème, on pourra par exemple consulter [ce site](https://python-guide-pt-br.readthedocs.io/fr/latest/writing/gotchas.html){target=_blank}
Commentaires
C'est un exercice classique de parcours d'un itérable en comptant les occurrences d'apparition d'une valeur. Un parcours par élément suffit, les indices des occurrences n'étant pas utilisées.