sujet Test 2 : code
- François Brucker
Vous avez 15min pour faire le test.
Rendu
On vous rappelle que toute fonction (hors du programme principal) doit être testée.
Type de rendu
Vous devrez rendre le dossier d'un projet vscode (vous pouvez le compresser si nécessaire). Commencez donc par créer un projet dans un dossier que vous appellerez test2
.
Éléments de notation
- 3 fichiers dans un projet :
- le programme principal
main.py
, - les fonctions utilisées
fonctions.py
, - les tests des fonctions
test_fonctions.py
.
- le programme principal
- Du joli code :
- 0 warning,
- le code doit être passé par black.
- Bons noms :
- de fichiers,
- de variables.
- Tests unitaires : toute fonction non testée ne sera pas corrigée.
Sujet
1 Suite alternante
1.1 Code
Créez une fonction de signature :
alternante(n: entier, a: caractère, b: caractère) → chaîne
Elle devra rendre une chaîne de caractères de longueur n
alternant les caractères a
et b
et en commençant par a
.
Par exemples :
alternante(4, "0", "1")
doit rendre la chaîne"0101"
alternante(7, "1", "z")
doit rendre la chaîne"1z1z1z1"
Vous pourrez utiliser le fait que +
est l'opérateur de concaténation pour deux chaines en python : "0" + "1"
valant "01"
1.2 Programme principal
Demandez à l'utilisateur un entier $n$ (vous ne ferez aucun test de vérification) puis affichez une suite alternante de "0" et de "1" de longueur $n$ par ligne de 5 caractères. Par exemple si l'utilisateur donne $n = 12$ vous afficherez :
01010
10101
01
Vous pourrez utiliser le fait que int(c)
rendra un entier si c
est une chaîne de caractères représentant un entier.
2 Suite croissante
2.1 Code
Créez une fonction de signature :
croissante_alternante(n: entier, c: chiffre) → chaîne
Qui devra rendre :
"567"
pourcroissante_alternante(3, 5)
"4567891234567"
pourcroissante_alternante(13, 4)
"1234567891234567891"
pourcroissante_alternante(19, 1)
Vous pourrez utiliser le fait que str(m)
rendra une chaîne de caractère si m
est un entier.
2.2 Programme principal
Ajoutez à votre programme principal une suite croissante alternante de longueur $n$ commençant à partir de 1 par ligne de 5 caractères.
Par exemple si l'utilisateur donne $n = 12$ vous afficherez :
12345
67891
23