Não pode escolher mais do que 25 tópicos Os tópicos devem começar com uma letra ou um número, podem incluir traços ('-') e podem ter até 35 caracteres.
Este repositório está arquivado. Pode ver ficheiros e cloná-lo, mas não pode fazer envios ou lançar questões ou pedidos de integração.
 
 
 
 
 
 

110 linhas
2.3 KiB

  1. import random
  2. class Robot:
  3. def __init__(self):
  4. self._nom = None
  5. self._éteint = True
  6. def nom(self):
  7. nom = self._nom
  8. return nom
  9. def démarre(self):
  10. if self._nom is None:
  11. self._nom = faire_un_nom()
  12. else:
  13. pass
  14. self._éteint = False
  15. def éteint(self):
  16. self._éteint = True
  17. def réinitialise(self):
  18. self._nom = None
  19. def main():
  20. robot = Robot()
  21. print("Le premier robot n'a pas encore de nom")
  22. print("La ligne suivante doit afficher None")
  23. print("01", robot.nom())
  24. print("On démarre le premier robot")
  25. robot.démarre()
  26. print("Le permier robot a maintenan un nom")
  27. print("La ligne suivante doit afficher un nom au hasard")
  28. print("02", robot.nom())
  29. print("Le nom ne change pas tant que le robot n'est pas re-initialisé")
  30. print("La ligne suivante doit afficher le même nom que la ligne 02")
  31. robot.éteint()
  32. robot.démarre()
  33. print("03", robot.nom())
  34. print("Le nom est effacé quand on réinitialise le robot")
  35. print("La ligne suivante doit afficher None")
  36. robot.réinitialise()
  37. print("04", robot.nom())
  38. print("Un nouveau nom est généré quand on re-démarre le robot")
  39. print("La ligne suivante doit afficher un nom différent de la ligne 03")
  40. robot.démarre()
  41. print("05", robot.nom())
  42. def donne_lettre_au_hasard():
  43. index = random.randint(0, 25)
  44. liste_de_lettres = [
  45. "A",
  46. "B",
  47. "C",
  48. "D",
  49. "E",
  50. "F",
  51. "G",
  52. "H",
  53. "I",
  54. "J",
  55. "K",
  56. "L",
  57. "M",
  58. "N",
  59. "O",
  60. "P",
  61. "Q",
  62. "R",
  63. "S",
  64. "T",
  65. "U",
  66. "V",
  67. "W",
  68. "X",
  69. "Y",
  70. "Z",
  71. ]
  72. lettre = liste_de_lettres[index]
  73. return lettre
  74. def donne_chiffre_au_hasard():
  75. index = random.randint(0, 9)
  76. liste_de_chiffres = ["1", "2", "3", "4", "5", "6", "7", "8", "9", "0"]
  77. liste_de_chiffres = "1234567890"
  78. chiffre = liste_de_chiffres[index]
  79. return chiffre
  80. def faire_un_nom():
  81. nom = (
  82. donne_lettre_au_hasard()
  83. + donne_lettre_au_hasard()
  84. + donne_chiffre_au_hasard()
  85. + donne_chiffre_au_hasard()
  86. + donne_chiffre_au_hasard()
  87. )
  88. return nom
  89. main()