SlideShare une entreprise Scribd logo
1  sur  20
COURS D’ALGORITHME &
STRUCTURES DE DONNÉES (ASD I)
2014/2015 ALGORITHME & STRUCTURES DE DONNÉES I
INSTITUT DES HAUTES ETUDES DE SOUSSE
CHAPITRE II: LES CHAINES DE
CARACTÈRES
1
Plan du Cours
2014/2015Algorithme & structures de données I2
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
I. Le type caractère
2014/2015Algorithme & structures de données I3
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.
Fonctions standards sur les caractères:
2014/2015Algorithme & structures de données I4
I. Le type caractère (2)
2014/2015Algorithme & structures de données I5
 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:
I. Le type caractère (3)
Exercice 1
2014/2015Algorithme & structures de données I6
 Que fait l’algorithme suivant :
 Solution:
Cet algorithme lit un caractère puis affiche son
équivalent en majuscule.
2014/2015Algorithme & structures de données I7
 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:
Exercice 2
2014/2015Algorithme & structures de données I8
 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.
Exercice 3
II. Le type chaine de caractère
2014/2015Algorithme & structures de données I9
 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.
Opérations sur les chaîne de
caractères
2014/2015Algorithme & structures de données I10
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”
Les opérateurs relationnels
2014/2015Algorithme & structures de données I11
 (>, >=, <, <=, =, #) ; 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).
Accès à un caractère dans une chaîne
2014/2015Algorithme & structures de données I12
 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.
Procédures standards
2014/2015Algorithme & structures de données I13
Fonctions standards
2014/2015Algorithme & structures de données I14
Exercice
2014/2015Algorithme & structures de données I15
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.)
Exercices d’application (1)
2014/2015Algorithme & structures de données I16
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.
Exercices d’application (2)
2014/2015Algorithme & structures de données I17
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
Corrections
2014/2015Algorithme & structures de données I18
Corrections
2014/2015Algorithme & structures de données I19
Corrections
2014/2015Algorithme & structures de données I20

Contenu connexe

Tendances

Cours algorithme
Cours algorithmeCours algorithme
Cours algorithme
badr zaimi
 
Chapitre 1 (algorithme)
Chapitre 1 (algorithme)Chapitre 1 (algorithme)
Chapitre 1 (algorithme)
mahbouba
 

Tendances (20)

Chap1V2019: Cours en C++
Chap1V2019: Cours en C++Chap1V2019: Cours en C++
Chap1V2019: Cours en C++
 
Cours algorithme
Cours algorithmeCours algorithme
Cours algorithme
 
Chapitre 1 (algorithme)
Chapitre 1 (algorithme)Chapitre 1 (algorithme)
Chapitre 1 (algorithme)
 
Chapitre4: Pointeurs et références
Chapitre4: Pointeurs et références Chapitre4: Pointeurs et références
Chapitre4: Pointeurs et références
 
Chap1: Cours en C++
Chap1: Cours en C++Chap1: Cours en C++
Chap1: Cours en C++
 
Les fondamentaux de langage C#
Les fondamentaux de langage C#Les fondamentaux de langage C#
Les fondamentaux de langage C#
 
Chap 6 : classes et interfaces
Chap 6 : classes et interfacesChap 6 : classes et interfaces
Chap 6 : classes et interfaces
 
Programmation en C
Programmation en CProgrammation en C
Programmation en C
 
Eléments syntaxiques du langage java-Jihen HEDHLI
Eléments syntaxiques du langage java-Jihen HEDHLIEléments syntaxiques du langage java-Jihen HEDHLI
Eléments syntaxiques du langage java-Jihen HEDHLI
 
Cours algorithmique02
Cours algorithmique02Cours algorithmique02
Cours algorithmique02
 
Chapitre 11: Expression Lambda et Référence de méthode en Java
Chapitre 11: Expression Lambda et Référence de méthode en JavaChapitre 11: Expression Lambda et Référence de méthode en Java
Chapitre 11: Expression Lambda et Référence de méthode en Java
 
langage C++
langage C++langage C++
langage C++
 
Le langage C
Le langage CLe langage C
Le langage C
 
Chapitre2fonctionscppv2019
Chapitre2fonctionscppv2019Chapitre2fonctionscppv2019
Chapitre2fonctionscppv2019
 
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
 
Fonction index
Fonction indexFonction index
Fonction index
 
Chap2fonctionscpp
Chap2fonctionscppChap2fonctionscpp
Chap2fonctionscpp
 
Seance 4- Programmation en langage C
Seance 4- Programmation en langage CSeance 4- Programmation en langage C
Seance 4- Programmation en langage C
 
Asd
AsdAsd
Asd
 
Cours Visual Basic.NET
Cours Visual Basic.NETCours Visual Basic.NET
Cours Visual Basic.NET
 

Similaire à Algorithme chap 3 (8)

Chap3
Chap3Chap3
Chap3
 
Algorithme chap 1
Algorithme chap 1Algorithme chap 1
Algorithme chap 1
 
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
 
Chapitre1: Langage Python
Chapitre1: Langage PythonChapitre1: Langage Python
Chapitre1: Langage Python
 
Erlang
ErlangErlang
Erlang
 
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
 
Formation en Python_Niveau1_2023.pptx
Formation en Python_Niveau1_2023.pptxFormation en Python_Niveau1_2023.pptx
Formation en Python_Niveau1_2023.pptx
 
Cours - TC - Histoire Algorithmique.pdf
Cours - TC - Histoire Algorithmique.pdfCours - TC - Histoire Algorithmique.pdf
Cours - TC - Histoire Algorithmique.pdf
 

Dernier

Dernier (12)

Quitter la nuit. pptx
Quitter        la             nuit.   pptxQuitter        la             nuit.   pptx
Quitter la nuit. pptx
 
Présentation Webinaire Cohésion - Concevoir et mettre en place une CMDB, comm...
Présentation Webinaire Cohésion - Concevoir et mettre en place une CMDB, comm...Présentation Webinaire Cohésion - Concevoir et mettre en place une CMDB, comm...
Présentation Webinaire Cohésion - Concevoir et mettre en place une CMDB, comm...
 
Comment enseigner la langue française en Colombie?
Comment enseigner la langue française en Colombie?Comment enseigner la langue française en Colombie?
Comment enseigner la langue française en Colombie?
 
Festival de Cannes 2024. pptx
Festival    de   Cannes      2024.  pptxFestival    de   Cannes      2024.  pptx
Festival de Cannes 2024. pptx
 
Présentation sur les Risques Électriques et Leur Prévention en Algérie
Présentation sur les Risques Électriques et Leur Prévention en AlgériePrésentation sur les Risques Électriques et Leur Prévention en Algérie
Présentation sur les Risques Électriques et Leur Prévention en Algérie
 
PLANNING HEBDO ET CR LYCEE COUDON 21 MAI2024
PLANNING HEBDO ET CR LYCEE COUDON 21 MAI2024PLANNING HEBDO ET CR LYCEE COUDON 21 MAI2024
PLANNING HEBDO ET CR LYCEE COUDON 21 MAI2024
 
Fiche - Accompagnement du travail coopératif au sein d’une équipe d’enseignan...
Fiche - Accompagnement du travail coopératif au sein d’une équipe d’enseignan...Fiche - Accompagnement du travail coopératif au sein d’une équipe d’enseignan...
Fiche - Accompagnement du travail coopératif au sein d’une équipe d’enseignan...
 
Quitter la nuit. pptx
Quitter          la        nuit.    pptxQuitter          la        nuit.    pptx
Quitter la nuit. pptx
 
Webinaire Technologia | DAX : nouvelles fonctions
Webinaire Technologia | DAX : nouvelles fonctionsWebinaire Technologia | DAX : nouvelles fonctions
Webinaire Technologia | DAX : nouvelles fonctions
 
EL KATRY Reem: Proposition de Programme Artistique et Exposition pour les Écoles
EL KATRY Reem: Proposition de Programme Artistique et Exposition pour les ÉcolesEL KATRY Reem: Proposition de Programme Artistique et Exposition pour les Écoles
EL KATRY Reem: Proposition de Programme Artistique et Exposition pour les Écoles
 
Traitement des eaux usées par lagunage a macrophytes.pptx
Traitement des eaux usées par lagunage a macrophytes.pptxTraitement des eaux usées par lagunage a macrophytes.pptx
Traitement des eaux usées par lagunage a macrophytes.pptx
 
Système National de Santé au- Maroc-(2017)."pdf"
Système National de Santé au- Maroc-(2017)."pdf"Système National de Santé au- Maroc-(2017)."pdf"
Système National de Santé au- Maroc-(2017)."pdf"
 

Algorithme chap 3

  • 1. COURS D’ALGORITHME & STRUCTURES DE DONNÉES (ASD I) 2014/2015 ALGORITHME & STRUCTURES DE DONNÉES I INSTITUT DES HAUTES ETUDES DE SOUSSE CHAPITRE II: LES CHAINES DE CARACTÈRES 1
  • 2. Plan du Cours 2014/2015Algorithme & structures de données I2 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
  • 3. I. Le type caractère 2014/2015Algorithme & structures de données I3 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.
  • 4. Fonctions standards sur les caractères: 2014/2015Algorithme & structures de données I4 I. Le type caractère (2)
  • 5. 2014/2015Algorithme & structures de données I5  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: I. Le type caractère (3)
  • 6. Exercice 1 2014/2015Algorithme & structures de données I6  Que fait l’algorithme suivant :  Solution: Cet algorithme lit un caractère puis affiche son équivalent en majuscule.
  • 7. 2014/2015Algorithme & structures de données I7  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: Exercice 2
  • 8. 2014/2015Algorithme & structures de données I8  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. Exercice 3
  • 9. II. Le type chaine de caractère 2014/2015Algorithme & structures de données I9  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.
  • 10. Opérations sur les chaîne de caractères 2014/2015Algorithme & structures de données I10 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”
  • 11. Les opérateurs relationnels 2014/2015Algorithme & structures de données I11  (>, >=, <, <=, =, #) ; 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).
  • 12. Accès à un caractère dans une chaîne 2014/2015Algorithme & structures de données I12  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.
  • 13. Procédures standards 2014/2015Algorithme & structures de données I13
  • 14. Fonctions standards 2014/2015Algorithme & structures de données I14
  • 15. Exercice 2014/2015Algorithme & structures de données I15 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.)
  • 16. Exercices d’application (1) 2014/2015Algorithme & structures de données I16 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.
  • 17. Exercices d’application (2) 2014/2015Algorithme & structures de données I17 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