SlideShare ist ein Scribd-Unternehmen logo
1 von 20
INSTITUT DES HAUTES ETUDES DE SOUSSE 
COURS D’ALGORITHME & 
STRUCTURES DE DONNÉES (ASD I) 
CHAPITRE II: LES CHAINES DE 
CARACTÈRES 
2014/2015 ALGORITHME & STRUCTURES DE DONNÉES I 
1
Plan du Cours 
I. Le type caractère 
1. Définition 
2. Fonctions standards sur les caractères 
II. Le type chaîne de caractères 
1. Déclaration d’une chaîne 
2. Opérations sur les chaînes de caractères 
III. Procédures et fonctions standards sur les 
chaînes 
1. Procédures standards 
2. Fonctions standards 
 Exercices d’application 
2 Algorithme & structures de données I 2014/2015
I. Le type caractère 
Définition 
 Ce type s’applique à tous les caractères du code ASCII 
(American Standard Code for Information Interchange). 
La liste comprend : 
 Les lettres : ”A” .. ”Z”,”a”..”z” 
 Les chiffres : ”0”..”9” 
 Les caractères spéciaux : ”/” ; ”*” ; ”?” ; ”&” ; etc. 
 Les caractères de contrôle : <Retour Chariot> ; <Echap> ; etc. 
 Chaque caractère est défini par son numéro d’ordre 
unique compris entre 0 et 255. 
3 Algorithme & structures de données I 2014/2015
I. Le type caractère (2) 
Fonctions standards sur les caractères: 
4 Algorithme & structures de données I 2014/2015
I. Le type caractère (3) 
 Exemple: 
Ecrire un algorithme qui lit un caractère au clavier puis 
affiche son prédécesseur, son successeur et le code ASCII 
de son équivalent en majuscule. 
 Solution: 
5 Algorithme & structures de données I 2014/2015
Exercice 1 
 Que fait l’algorithme suivant : 
 Solution: 
Cet algorithme lit un caractère puis affiche son 
équivalent en majuscule. 
6 Algorithme & structures de données I 2014/2015
Exercice 2 
 Ecrire un algorithme qui affiche une table ASCII des 
lettres minuscules sous la forme suivante : 
 Le code ASCII de a est 97 
 Le code ASCII de b est de 98 
 Le code ASCII de c est 99 
 …. 
 Le code ASCII de z est 122. 
 Solution: 
7 Algorithme & structures de données I 2014/2015
Exercice 3 
 Ecrire un algorithme qui lit une lettre au clavier puis affiche s’il 
s’agit d’une consonne ou d’une voyelle. 
 Remarque : les voyelles sont : ”A” ; ”a” ; ”E” ; ”e” ; ”I” ; ”i”; ”O” ; 
”o” ;”U” ; ”u” ; ”Y” ; ”y”. 
 Solution: Dans cet algorithme, le but de la boucle répéter est 
d’obliger l’utilisateur à entrer une lettre. 
8 Algorithme & structures de données I 2014/2015
II. Le type chaine de caractère 
 Une chaîne est une suite de caractères. La chaîne ne 
contenant aucun caractère est appelée chaîne vide. 
 Déclaration d’une chaine: 
 La variable ch peut contenir jusqu’à 255 caractères alors 
que chn peut contenir au maximum 20. 
9 Algorithme & structures de données I 2014/2015
Opérations sur les chaîne de 
caractères 
La concaténation: 
 C’est l’assemblage de deux chaînes de caractères en 
utilisant l’opérateur « + ». 
Exemple: 
 Chn1  ‘Turbo’ 
 Chn2  ‘Pascal’ 
 Chn3  Chn1 + ‘’ + Chn2 
 La variable chn3 contiendra ”Turbo Pascal” 
10 Algorithme & structures de données I 2014/2015
Les opérateurs relationnels 
 (>, >=, <, <=, =, #) ; Il est possible d’effectuer une 
comparaison entre deux chaînes de caractères, le résultat 
est de type booléen. La comparaison se fait caractère par 
caractère de la gauche vers la droite selon le code ASCII. 
 Exemples: 
 L’expression (”a” > ”A”) est vraie puisque le code ASCII de ”a” 
(97) est supérieur à celui de ”A” (65) 
 L’expression (”programme” < ”programmation”) est fausse 
puisque ”e” > ”a” 
 L’expression (”” = ” ”) est fausse (le vide est différent du 
caractère espace). 
11 Algorithme & structures de données I 2014/2015
Accès à un caractère dans une chaîne 
 Pour accéder à un caractère de la chaîne, il suffit 
d’indiquer le nom de la chaîne suivi d’un entier entre 
crochets qui indique la position du caractère dans la 
chaîne. 
 Exemple: 
Chn  ‘Turbo Pascal’ 
C  chn[7] 
 la variable c contiendra le caractère ”P”. 
 En général, ch[i] désigne le ième caractère de la chaîne 
ch. 
12 Algorithme & structures de données I 2014/2015
Procédures standards 
13 Algorithme & structures de données I 2014/2015
Fonctions standards 
14 Algorithme & structures de données I 2014/2015
Exercice 
Ecrire un algorithme « Palind » qui lit une chaîne de caractères 
et vérifie si cette chaîne est un palindrome ou non. Un 
palindrome est un mot qui peut être lu indifféremment de 
droite à gauche ou de gauche à droite (Exemples : ”AZIZA”, 
”LAVAL”, ”RADAR”, ”2002”, etc.) 
15 Algorithme & structures de données I 2014/2015
Exercices d’application (1) 
Exercice 1: 
Ecrire un algorithme qui lit une chaîne de caractères puis 
affiche son inverse. 
Exemple : Si la chaîne entrée est ”algo”, l’algorithme doit 
afficher ”ogla”. 
Exercice 2: 
Ecrire un algorithme qui lit une chaîne de caractères et renvoie 
son équivalent en majuscules. 
Exercice 3: 
Ecrire un algorithme qui permet de compter le nombre de 
mots dans une phrase. La phrase commence obligatoirement 
par une lettre et les mots sont séparés par des espaces. 
16 Algorithme & structures de données I 2014/2015
Exercices d’application (2) 
Exercice 4: 
Ecrire un algorithme qui détermine et affiche le mot le plus 
long dans une phrase donnée. 
Exercice 5: 
Ecrire un algorithme qui lit: 
 Un mot (chaîne de caractères formée uniquement de 
lettres) 
 Une lettre 
puis affiche le nombre d’apparitions de la lettre dans le mot. 
Exercice 6: conversion décimal  binaire 
Ecrire un algorithme qui lit en entier positif puis affiche son 
équivalent en binaire (base 2). 
Exemple : (23)10 = (10111)2 
17 Algorithme & structures de données I 2014/2015
Corrections 
18 Algorithme & structures de données I 2014/2015
Corrections 
19 Algorithme & structures de données I 2014/2015
Corrections 
20 Algorithme & structures de données I 2014/2015

Weitere ähnliche Inhalte

Was ist angesagt?

exercices-corriges-dalgorithmique
exercices-corriges-dalgorithmiqueexercices-corriges-dalgorithmique
exercices-corriges-dalgorithmique
fast xp
 

Was ist angesagt? (20)

01 correction-td smia-s2-info2
01 correction-td smia-s2-info201 correction-td smia-s2-info2
01 correction-td smia-s2-info2
 
Chapitre 1 rappel
Chapitre 1 rappelChapitre 1 rappel
Chapitre 1 rappel
 
Exercices_Python_Fenni_2023 -corrigé.pdf
Exercices_Python_Fenni_2023 -corrigé.pdfExercices_Python_Fenni_2023 -corrigé.pdf
Exercices_Python_Fenni_2023 -corrigé.pdf
 
Qcm en-informatique-avec-correction
Qcm en-informatique-avec-correction Qcm en-informatique-avec-correction
Qcm en-informatique-avec-correction
 
exercices-corriges-dalgorithmique
exercices-corriges-dalgorithmiqueexercices-corriges-dalgorithmique
exercices-corriges-dalgorithmique
 
algorithme tronc commun lycée
algorithme tronc commun lycéealgorithme tronc commun lycée
algorithme tronc commun lycée
 
Chapitre 01 - Notions de base
Chapitre 01 - Notions de baseChapitre 01 - Notions de base
Chapitre 01 - Notions de base
 
Cours structures des données (langage c)
Cours structures des données (langage c)Cours structures des données (langage c)
Cours structures des données (langage c)
 
Examen principal - Algorithme & Structures de données
Examen principal - Algorithme & Structures de donnéesExamen principal - Algorithme & Structures de données
Examen principal - Algorithme & Structures de données
 
Chap1: Cours en C++
Chap1: Cours en C++Chap1: Cours en C++
Chap1: Cours en C++
 
Introduction à Python
Introduction à PythonIntroduction à Python
Introduction à Python
 
Cours algorithme: structures répétitives
Cours algorithme: structures répétitivesCours algorithme: structures répétitives
Cours algorithme: structures répétitives
 
Cours algorithmique02
Cours algorithmique02Cours algorithmique02
Cours algorithmique02
 
Les structures de données.pptx
Les structures de données.pptxLes structures de données.pptx
Les structures de données.pptx
 
Algorithmique
AlgorithmiqueAlgorithmique
Algorithmique
 
Algorithme chap 1
Algorithme chap 1Algorithme chap 1
Algorithme chap 1
 
Cours de programmation en c
Cours de programmation en cCours de programmation en c
Cours de programmation en c
 
Cours Algorithme: Matrice
Cours Algorithme: MatriceCours Algorithme: Matrice
Cours Algorithme: Matrice
 
TP C++ : Correction
TP C++ : CorrectionTP C++ : Correction
TP C++ : Correction
 
Algorithme et programmation.pdf
Algorithme et programmation.pdfAlgorithme et programmation.pdf
Algorithme et programmation.pdf
 

Andere mochten auch

Devoirs Algorithme + correction pour 4 si
Devoirs Algorithme + correction pour 4 siDevoirs Algorithme + correction pour 4 si
Devoirs Algorithme + correction pour 4 si
Narûtö Bàl'Sèm
 
Cours algorithmique et complexite complet
Cours algorithmique et complexite completCours algorithmique et complexite complet
Cours algorithmique et complexite complet
Chahrawoods Dmz
 

Andere mochten auch (20)

Correction
CorrectionCorrection
Correction
 
Résumé Algorithme et Programmation
Résumé Algorithme et ProgrammationRésumé Algorithme et Programmation
Résumé Algorithme et Programmation
 
Algorithme
AlgorithmeAlgorithme
Algorithme
 
Algorithm et structure de donnée
Algorithm et structure de donnéeAlgorithm et structure de donnée
Algorithm et structure de donnée
 
Algorithme
AlgorithmeAlgorithme
Algorithme
 
Exercices pascal tous les chapitres
Exercices pascal tous les chapitresExercices pascal tous les chapitres
Exercices pascal tous les chapitres
 
Devoirs Algorithme + correction pour 4 si
Devoirs Algorithme + correction pour 4 siDevoirs Algorithme + correction pour 4 si
Devoirs Algorithme + correction pour 4 si
 
Serie2
Serie2Serie2
Serie2
 
Cv Ouaz Ines
Cv Ouaz InesCv Ouaz Ines
Cv Ouaz Ines
 
Algorithmique et programmation en Pascal (résumé)
Algorithmique et programmation en Pascal (résumé)Algorithmique et programmation en Pascal (résumé)
Algorithmique et programmation en Pascal (résumé)
 
Cv ines ouaz
Cv ines ouazCv ines ouaz
Cv ines ouaz
 
Examen principal- php - correction
Examen principal- php - correctionExamen principal- php - correction
Examen principal- php - correction
 
Exercices en turbo pascal sur les nombres
Exercices en turbo pascal sur les nombresExercices en turbo pascal sur les nombres
Exercices en turbo pascal sur les nombres
 
Connexion jdbc
Connexion jdbcConnexion jdbc
Connexion jdbc
 
Fondamentaux java
Fondamentaux javaFondamentaux java
Fondamentaux java
 
Cours algorithmique et complexite complet
Cours algorithmique et complexite completCours algorithmique et complexite complet
Cours algorithmique et complexite complet
 
Corrections td4
Corrections td4Corrections td4
Corrections td4
 
Asd1
Asd1Asd1
Asd1
 
Girard Intranet
Girard IntranetGirard Intranet
Girard Intranet
 
Chapitre 3
Chapitre 3Chapitre 3
Chapitre 3
 

Ähnlich wie Algorithme & structures de données Chap III

Correction de la question 5 de l'exercice 2 du TD3 (M1202)
Correction de la question 5 de l'exercice 2 du TD3 (M1202)Correction de la question 5 de l'exercice 2 du TD3 (M1202)
Correction de la question 5 de l'exercice 2 du TD3 (M1202)
PGambette
 
Coursalgorithmique
CoursalgorithmiqueCoursalgorithmique
Coursalgorithmique
nicodeff
 
Conception de base_de_l_algorithme
Conception de base_de_l_algorithmeConception de base_de_l_algorithme
Conception de base_de_l_algorithme
mustapha4
 
cours lanagage c avec des exemples d'application
cours lanagage c avec des exemples d'applicationcours lanagage c avec des exemples d'application
cours lanagage c avec des exemples d'application
kamalomari2
 

Ähnlich wie Algorithme & structures de données Chap III (20)

Algorithme chap 2
Algorithme chap 2Algorithme chap 2
Algorithme chap 2
 
Algorithme chap 3
Algorithme chap 3Algorithme chap 3
Algorithme chap 3
 
Chapitre5 les chaînes de caractères - Copy.pptx
Chapitre5 les chaînes de caractères - Copy.pptxChapitre5 les chaînes de caractères - Copy.pptx
Chapitre5 les chaînes de caractères - Copy.pptx
 
Cours - TC - Histoire Algorithmique.pdf
Cours - TC - Histoire Algorithmique.pdfCours - TC - Histoire Algorithmique.pdf
Cours - TC - Histoire Algorithmique.pdf
 
Les Structures de données
Les Structures de donnéesLes Structures de données
Les Structures de données
 
Correction de la question 5 de l'exercice 2 du TD3 (M1202)
Correction de la question 5 de l'exercice 2 du TD3 (M1202)Correction de la question 5 de l'exercice 2 du TD3 (M1202)
Correction de la question 5 de l'exercice 2 du TD3 (M1202)
 
Ch2-Notions de base & actions élémentaires.pdf
Ch2-Notions de base & actions élémentaires.pdfCh2-Notions de base & actions élémentaires.pdf
Ch2-Notions de base & actions élémentaires.pdf
 
ch7_les chaines de caractères.pdf
ch7_les chaines de caractères.pdfch7_les chaines de caractères.pdf
ch7_les chaines de caractères.pdf
 
algorithmique
algorithmiquealgorithmique
algorithmique
 
Coursalgorithmique
CoursalgorithmiqueCoursalgorithmique
Coursalgorithmique
 
cours fortran.pptx
cours fortran.pptxcours fortran.pptx
cours fortran.pptx
 
Conception de base_de_l_algorithme
Conception de base_de_l_algorithmeConception de base_de_l_algorithme
Conception de base_de_l_algorithme
 
Theme 6
Theme 6Theme 6
Theme 6
 
Cours programmation en langage C.pdf
Cours  programmation  en  langage  C.pdfCours  programmation  en  langage  C.pdf
Cours programmation en langage C.pdf
 
Langage Perl
Langage PerlLangage Perl
Langage Perl
 
langage C++
langage C++langage C++
langage C++
 
cours lanagage c avec des exemples d'application
cours lanagage c avec des exemples d'applicationcours lanagage c avec des exemples d'application
cours lanagage c avec des exemples d'application
 
Chapitre1: Langage Python
Chapitre1: Langage PythonChapitre1: Langage Python
Chapitre1: Langage Python
 
.php1 : les fondamentaux du PHP
.php1 : les fondamentaux du PHP.php1 : les fondamentaux du PHP
.php1 : les fondamentaux du PHP
 
Les bases de la programmation en JAVA
Les bases de la programmation  en JAVA   Les bases de la programmation  en JAVA
Les bases de la programmation en JAVA
 

Mehr von Ines Ouaz

Mehr von Ines Ouaz (9)

Java & Etat de l'art
Java & Etat de l'artJava & Etat de l'art
Java & Etat de l'art
 
Prototype rapport
Prototype rapportPrototype rapport
Prototype rapport
 
Environnement java
Environnement javaEnvironnement java
Environnement java
 
Application Spring MVC/IOC & Hibernate
Application Spring MVC/IOC & HibernateApplication Spring MVC/IOC & Hibernate
Application Spring MVC/IOC & Hibernate
 
Formation JAVA/J2EE
Formation JAVA/J2EEFormation JAVA/J2EE
Formation JAVA/J2EE
 
Framework Hibernate
Framework HibernateFramework Hibernate
Framework Hibernate
 
Examen principal - PHP
Examen principal - PHPExamen principal - PHP
Examen principal - PHP
 
Examen principal - Fondement Multimedia - correction
Examen principal - Fondement Multimedia - correctionExamen principal - Fondement Multimedia - correction
Examen principal - Fondement Multimedia - correction
 
Examen Principal - Fondement Multimedia Janvier 2015
Examen Principal - Fondement Multimedia Janvier 2015Examen Principal - Fondement Multimedia Janvier 2015
Examen Principal - Fondement Multimedia Janvier 2015
 

Kürzlich hochgeladen

L'ÉVOLUTION DE L'ÉDUCATION AU BRÉSIL À TRAVERS L'HISTOIRE ET LES EXIGENCES DE...
L'ÉVOLUTION DE L'ÉDUCATION AU BRÉSIL À TRAVERS L'HISTOIRE ET LES EXIGENCES DE...L'ÉVOLUTION DE L'ÉDUCATION AU BRÉSIL À TRAVERS L'HISTOIRE ET LES EXIGENCES DE...
L'ÉVOLUTION DE L'ÉDUCATION AU BRÉSIL À TRAVERS L'HISTOIRE ET LES EXIGENCES DE...
Faga1939
 
Copie de Engineering Software Marketing Plan by Slidesgo.pptx.pptx
Copie de Engineering Software Marketing Plan by Slidesgo.pptx.pptxCopie de Engineering Software Marketing Plan by Slidesgo.pptx.pptx
Copie de Engineering Software Marketing Plan by Slidesgo.pptx.pptx
ikospam0
 
Cours Préparation à l’ISO 27001 version 2022.pdf
Cours Préparation à l’ISO 27001 version 2022.pdfCours Préparation à l’ISO 27001 version 2022.pdf
Cours Préparation à l’ISO 27001 version 2022.pdf
ssuserc72852
 
Bilan énergétique des chambres froides.pdf
Bilan énergétique des chambres froides.pdfBilan énergétique des chambres froides.pdf
Bilan énergétique des chambres froides.pdf
AmgdoulHatim
 

Kürzlich hochgeladen (18)

L'ÉVOLUTION DE L'ÉDUCATION AU BRÉSIL À TRAVERS L'HISTOIRE ET LES EXIGENCES DE...
L'ÉVOLUTION DE L'ÉDUCATION AU BRÉSIL À TRAVERS L'HISTOIRE ET LES EXIGENCES DE...L'ÉVOLUTION DE L'ÉDUCATION AU BRÉSIL À TRAVERS L'HISTOIRE ET LES EXIGENCES DE...
L'ÉVOLUTION DE L'ÉDUCATION AU BRÉSIL À TRAVERS L'HISTOIRE ET LES EXIGENCES DE...
 
Formation échiquéenne jwhyCHESS, parallèle avec la planification de projet
Formation échiquéenne jwhyCHESS, parallèle avec la planification de projetFormation échiquéenne jwhyCHESS, parallèle avec la planification de projet
Formation échiquéenne jwhyCHESS, parallèle avec la planification de projet
 
Copie de Engineering Software Marketing Plan by Slidesgo.pptx.pptx
Copie de Engineering Software Marketing Plan by Slidesgo.pptx.pptxCopie de Engineering Software Marketing Plan by Slidesgo.pptx.pptx
Copie de Engineering Software Marketing Plan by Slidesgo.pptx.pptx
 
Les roches magmatique géodynamique interne.pptx
Les roches magmatique géodynamique interne.pptxLes roches magmatique géodynamique interne.pptx
Les roches magmatique géodynamique interne.pptx
 
Conférence Sommet de la formation 2024 : Développer des compétences pour la m...
Conférence Sommet de la formation 2024 : Développer des compétences pour la m...Conférence Sommet de la formation 2024 : Développer des compétences pour la m...
Conférence Sommet de la formation 2024 : Développer des compétences pour la m...
 
Computer Parts in French - Les parties de l'ordinateur.pptx
Computer Parts in French - Les parties de l'ordinateur.pptxComputer Parts in French - Les parties de l'ordinateur.pptx
Computer Parts in French - Les parties de l'ordinateur.pptx
 
Apolonia, Apolonia.pptx Film documentaire
Apolonia, Apolonia.pptx         Film documentaireApolonia, Apolonia.pptx         Film documentaire
Apolonia, Apolonia.pptx Film documentaire
 
Cours Préparation à l’ISO 27001 version 2022.pdf
Cours Préparation à l’ISO 27001 version 2022.pdfCours Préparation à l’ISO 27001 version 2022.pdf
Cours Préparation à l’ISO 27001 version 2022.pdf
 
GIÁO ÁN DẠY THÊM (KẾ HOẠCH BÀI DẠY BUỔI 2) - TIẾNG ANH 6, 7 GLOBAL SUCCESS (2...
GIÁO ÁN DẠY THÊM (KẾ HOẠCH BÀI DẠY BUỔI 2) - TIẾNG ANH 6, 7 GLOBAL SUCCESS (2...GIÁO ÁN DẠY THÊM (KẾ HOẠCH BÀI DẠY BUỔI 2) - TIẾNG ANH 6, 7 GLOBAL SUCCESS (2...
GIÁO ÁN DẠY THÊM (KẾ HOẠCH BÀI DẠY BUỔI 2) - TIẾNG ANH 6, 7 GLOBAL SUCCESS (2...
 
Sidonie au Japon . pptx Un film français
Sidonie    au   Japon  .  pptx  Un film françaisSidonie    au   Japon  .  pptx  Un film français
Sidonie au Japon . pptx Un film français
 
COURS SVT 3 EME ANNEE COLLEGE 2EME SEM.pdf
COURS SVT 3 EME ANNEE COLLEGE 2EME SEM.pdfCOURS SVT 3 EME ANNEE COLLEGE 2EME SEM.pdf
COURS SVT 3 EME ANNEE COLLEGE 2EME SEM.pdf
 
L application de la physique classique dans le golf.pptx
L application de la physique classique dans le golf.pptxL application de la physique classique dans le golf.pptx
L application de la physique classique dans le golf.pptx
 
Chapitre 2 du cours de JavaScript. Bon Cours
Chapitre 2 du cours de JavaScript. Bon CoursChapitre 2 du cours de JavaScript. Bon Cours
Chapitre 2 du cours de JavaScript. Bon Cours
 
Bilan énergétique des chambres froides.pdf
Bilan énergétique des chambres froides.pdfBilan énergétique des chambres froides.pdf
Bilan énergétique des chambres froides.pdf
 
La nouvelle femme . pptx Film français
La   nouvelle   femme  . pptx  Film françaisLa   nouvelle   femme  . pptx  Film français
La nouvelle femme . pptx Film français
 
Boléro. pptx Film français réalisé par une femme.
Boléro.  pptx   Film   français   réalisé  par une  femme.Boléro.  pptx   Film   français   réalisé  par une  femme.
Boléro. pptx Film français réalisé par une femme.
 
Formation qhse - GIASE saqit_105135.pptx
Formation qhse - GIASE saqit_105135.pptxFormation qhse - GIASE saqit_105135.pptx
Formation qhse - GIASE saqit_105135.pptx
 
Cours ofppt du Trade-Marketing-Présentation.pdf
Cours ofppt du Trade-Marketing-Présentation.pdfCours ofppt du Trade-Marketing-Présentation.pdf
Cours ofppt du Trade-Marketing-Présentation.pdf
 

Algorithme & structures de données Chap III

  • 1. INSTITUT DES HAUTES ETUDES DE SOUSSE COURS D’ALGORITHME & STRUCTURES DE DONNÉES (ASD I) CHAPITRE II: LES CHAINES DE CARACTÈRES 2014/2015 ALGORITHME & STRUCTURES DE DONNÉES I 1
  • 2. Plan du Cours I. Le type caractère 1. Définition 2. Fonctions standards sur les caractères II. Le type chaîne de caractères 1. Déclaration d’une chaîne 2. Opérations sur les chaînes de caractères III. Procédures et fonctions standards sur les chaînes 1. Procédures standards 2. Fonctions standards  Exercices d’application 2 Algorithme & structures de données I 2014/2015
  • 3. I. Le type caractère Définition  Ce type s’applique à tous les caractères du code ASCII (American Standard Code for Information Interchange). La liste comprend :  Les lettres : ”A” .. ”Z”,”a”..”z”  Les chiffres : ”0”..”9”  Les caractères spéciaux : ”/” ; ”*” ; ”?” ; ”&” ; etc.  Les caractères de contrôle : <Retour Chariot> ; <Echap> ; etc.  Chaque caractère est défini par son numéro d’ordre unique compris entre 0 et 255. 3 Algorithme & structures de données I 2014/2015
  • 4. I. Le type caractère (2) Fonctions standards sur les caractères: 4 Algorithme & structures de données I 2014/2015
  • 5. I. Le type caractère (3)  Exemple: Ecrire un algorithme qui lit un caractère au clavier puis affiche son prédécesseur, son successeur et le code ASCII de son équivalent en majuscule.  Solution: 5 Algorithme & structures de données I 2014/2015
  • 6. Exercice 1  Que fait l’algorithme suivant :  Solution: Cet algorithme lit un caractère puis affiche son équivalent en majuscule. 6 Algorithme & structures de données I 2014/2015
  • 7. Exercice 2  Ecrire un algorithme qui affiche une table ASCII des lettres minuscules sous la forme suivante :  Le code ASCII de a est 97  Le code ASCII de b est de 98  Le code ASCII de c est 99  ….  Le code ASCII de z est 122.  Solution: 7 Algorithme & structures de données I 2014/2015
  • 8. Exercice 3  Ecrire un algorithme qui lit une lettre au clavier puis affiche s’il s’agit d’une consonne ou d’une voyelle.  Remarque : les voyelles sont : ”A” ; ”a” ; ”E” ; ”e” ; ”I” ; ”i”; ”O” ; ”o” ;”U” ; ”u” ; ”Y” ; ”y”.  Solution: Dans cet algorithme, le but de la boucle répéter est d’obliger l’utilisateur à entrer une lettre. 8 Algorithme & structures de données I 2014/2015
  • 9. II. Le type chaine de caractère  Une chaîne est une suite de caractères. La chaîne ne contenant aucun caractère est appelée chaîne vide.  Déclaration d’une chaine:  La variable ch peut contenir jusqu’à 255 caractères alors que chn peut contenir au maximum 20. 9 Algorithme & structures de données I 2014/2015
  • 10. Opérations sur les chaîne de caractères La concaténation:  C’est l’assemblage de deux chaînes de caractères en utilisant l’opérateur « + ». Exemple:  Chn1  ‘Turbo’  Chn2  ‘Pascal’  Chn3  Chn1 + ‘’ + Chn2  La variable chn3 contiendra ”Turbo Pascal” 10 Algorithme & structures de données I 2014/2015
  • 11. Les opérateurs relationnels  (>, >=, <, <=, =, #) ; Il est possible d’effectuer une comparaison entre deux chaînes de caractères, le résultat est de type booléen. La comparaison se fait caractère par caractère de la gauche vers la droite selon le code ASCII.  Exemples:  L’expression (”a” > ”A”) est vraie puisque le code ASCII de ”a” (97) est supérieur à celui de ”A” (65)  L’expression (”programme” < ”programmation”) est fausse puisque ”e” > ”a”  L’expression (”” = ” ”) est fausse (le vide est différent du caractère espace). 11 Algorithme & structures de données I 2014/2015
  • 12. Accès à un caractère dans une chaîne  Pour accéder à un caractère de la chaîne, il suffit d’indiquer le nom de la chaîne suivi d’un entier entre crochets qui indique la position du caractère dans la chaîne.  Exemple: Chn  ‘Turbo Pascal’ C  chn[7]  la variable c contiendra le caractère ”P”.  En général, ch[i] désigne le ième caractère de la chaîne ch. 12 Algorithme & structures de données I 2014/2015
  • 13. Procédures standards 13 Algorithme & structures de données I 2014/2015
  • 14. Fonctions standards 14 Algorithme & structures de données I 2014/2015
  • 15. Exercice Ecrire un algorithme « Palind » qui lit une chaîne de caractères et vérifie si cette chaîne est un palindrome ou non. Un palindrome est un mot qui peut être lu indifféremment de droite à gauche ou de gauche à droite (Exemples : ”AZIZA”, ”LAVAL”, ”RADAR”, ”2002”, etc.) 15 Algorithme & structures de données I 2014/2015
  • 16. Exercices d’application (1) Exercice 1: Ecrire un algorithme qui lit une chaîne de caractères puis affiche son inverse. Exemple : Si la chaîne entrée est ”algo”, l’algorithme doit afficher ”ogla”. Exercice 2: Ecrire un algorithme qui lit une chaîne de caractères et renvoie son équivalent en majuscules. Exercice 3: Ecrire un algorithme qui permet de compter le nombre de mots dans une phrase. La phrase commence obligatoirement par une lettre et les mots sont séparés par des espaces. 16 Algorithme & structures de données I 2014/2015
  • 17. Exercices d’application (2) Exercice 4: Ecrire un algorithme qui détermine et affiche le mot le plus long dans une phrase donnée. Exercice 5: Ecrire un algorithme qui lit:  Un mot (chaîne de caractères formée uniquement de lettres)  Une lettre puis affiche le nombre d’apparitions de la lettre dans le mot. Exercice 6: conversion décimal  binaire Ecrire un algorithme qui lit en entier positif puis affiche son équivalent en binaire (base 2). Exemple : (23)10 = (10111)2 17 Algorithme & structures de données I 2014/2015
  • 18. Corrections 18 Algorithme & structures de données I 2014/2015
  • 19. Corrections 19 Algorithme & structures de données I 2014/2015
  • 20. Corrections 20 Algorithme & structures de données I 2014/2015