TP1

TP1🔗

  1. Écrire une boucle pour afficher les nombres de 1 à 10, en indiquant à chaque fois s'ils sont pairs ou impairs.

  2. Demander à l'utilisateur son nom (utiliser input()), et afficher un message personnalisé (utiliser une f-string).

  3. Demander à l'utilisateur d'entrer cinq nombres, stockez-les dans une liste de float, puis calculer leur somme et moyenne. Que se passe-t-il si une des entrées n'est pas une entrée numérique?

    Bonus: Modifier le code pour fonctionner sur un nombre arbitraire de nombres d'entrée (en précisant le mode d'arrêt).

  4. Créer une fonction mult(x, y) qui prend deux nombres en paramètres et retourne leur produit. Que se passe-t-il si les deux nombres ne sont pas du même type numérique (p.ex. int et complex)?

  5. Écrire une fonction get_longest_string(s1, s2) qui renvoit la plus longue de deux chaînes de caractères, et None si elles sont de longueurs égales.

  6. Écrire une fonction addition(x, y) qui prend pour paramètres deux éléments, et retourne l'addition des deux éléments s'ils sont de même type, None sinon. Que se passe-t-il si les paramètres d'entrées sont deux listes, ou deux chaînes, ou deux dictionnaires?

  7. Écrire une fonction random_pick(seq) qui tire aléatoirement un élément d'une liste passée en paramètre (utiliser random.choice() de la bibliothèque standard random). La fonction doit retourner l'élément en affichant:

    • It's an integer si l'élément est un entier,

    • It's a string si l'élément est une chaîne de caractères,

    • It's more complicated dans tout autre cas.

    Que se passe-t-il si le paramètre d'entrée n'est pas une liste, ou n'est pas itérable?

  8. Écrire une fonction generate_name() générant aléatoirement un nom, défini comme étant une chaîne de 3 à 12 caractères qui alterne voyelles et consonnes, et dont le premier caractère (une voyelle ou une consonne) est en majuscule (utiliser str.capitalize()).

    Bonus: Écrire une fonction is_valid_name(name) vérifiant si la chaîne d'entrée constitue un nom valide selon les trois critères précédents (utiliser all() sur des listes en compréhension).