Correction TP 8 (2020) sur les chaînes de caractères, suite TD8
Channel: TD et TP cours INF1 à Univ Rennes 1
Date: 13/11/2020

Correction TP 8 (2020) sur les chaînes de caractères, suite TD8 (https://www.youtube.com/watch?v=39LV_z3hWNA).

TODO changer les temps, mais le nom des chapitres est déjà bon

00:00 Suite présentation des TP en distanciel
01:01 Lecture et commentaires du sujet de TP numéro 8

17:47 Début de la correction
19:57 Exercice 1, Manipulation de base
20:05 Exercice 1, question 1.a, fonction occurrence compter les occurrences d'un caractère dans une chaîne
23:13 Exercice 1, question 1.b, fonction estPalindrome tester si une chaîne est un palindrome (ex anna, kayak, ressasser) ou non (ex canoe, Anna, toto)
27:45 Exercice 1, question 1.c, fonction extraireSousChaine pour extraire une sous-chaîne donnée par son indice de départ et de fin (inclus)
29:05 Exercice 1, question 1.d, fonction remplacer pour remplacer toute occurrence d'un caractère c1 par c2 dans une chaîne s

32:00 (challenge) Exercice 1, question 1.e, fonction enumererSousChaines pour énumérer toutes les sous-chaînes d'une chaîne donnée, par ordre croissant de longueurs

35:55 Exercice 2, Minuscules et majuscules
36:14 Exercice 2, question 2.a, fonctions estMajuscule, estMinuscule, estLettre
38:44 Exercice 2, question 2.b, fonctions minusculeChar, majusculeChar
42:26 Exercice 2, question 2.c, fonctions minusculeChaine, majusculeChaine
45:46 (challenge) Exercice 2, question 2.d, fonctions majusculeDebut, pour transformer en majuscule chaque début de mot et en minuscule l'intérieur du mot ("J'aime bien INF1!" devient "J'aime Bien Inf1!")

49:20 Exercice 3, Comptage de mots
49:34 Exercice 3, question 3.a, fonction comptageMot pour compter le nombre de mots de deux lettres (cf https://www.youtube.com/watch?v=39LV_z3hWNA&t=1463s pour une autre solution, venant du TD8)
55:30 Exercice 3, question 3.b, fonction comptageMot2 pour compter le nombre de mots de n lettres, avec n argument de la fonction

58:36 Exercice 4, Conversion entre chaîne de caractères et entier
1:02:53 Exercice 4, fin des explications sur les exemples (avant de montrer le code)
1:02:53 Exercice 4, fin des explications préliminaires (qui peuvent vous aider à écrire votre propre solution si vous n'y avez pas réussi)
1:04:50 Exercice 4, début d'explication de la méthode de Hörner (https://fr.wikipedia.org/wiki/Méthode_de_Ruffini-Horner) pour la conversion d'un tableau de chiffres (int[] chiffres) en un nombre (en base 10)
1:09:28 Exercice 4, int conversionUnEntier(char c) pour transformer un caractère entre '0' et '9' en l'entier correspondant
1:12:08 Exercice 4, fonction int conversionEntier(String s) pour transformer une chaîne en un entier, en utilisant conversionChiffresVersNombre
1:12:32 Exercice 4, fonction int conversionChiffresVersNombre(int[] chiffres) pour transformer un tableau de chiffres en un nombre
1:14:05 Exercice 4, explications bonus sur les entiers trop grands, qui dépassent la capacité limitée des int (32 bits) de Java

1:17:54 Conclusion du TP, rappels des modalités d'organisation des TP en distanciel


(Correction proposée par Lilian Besson)