SlideShare une entreprise Scribd logo

Ch2-Notions de base & actions élémentaires.pdf

F
F
FadouaBouafifSamoudMaitre assuiwstante en informatique

cours ASD1 pour les premières années informatique (ch2: notions de base et actions élémentaires )

Ch2-Notions de base & actions élémentaires.pdf

1  sur  32
Télécharger pour lire hors ligne
1
Dr.fadoua bouafif
Algorithmique & structure
des données I
1ère Business Computing (BC)
Responsable : Dr. Fadoua Bouafif
Chapitre 2
Notions de base & actions élémentaires
2
Dr.fadoua bouafif
Objectifs du chapitre
 Apprendre à définir et à déclarer les données dans un
algorithme/programme
 Savoir les opérateurs mathématiques et les
expressions arithmétiques
 Connaitre les expressions simples et élémentaires
3
Dr.fadoua bouafif
Plan du chapitre
1. Introduction
2. Déclaration des Données
3. Les expressions et les opérateurs
4. Les instructions simples ou élémentaires Conclusion
4
Dr.fadoua bouafif
5
La structure général d'un algorithme comprend plusieurs parties
et définit certaines notions et actions.
 Déclaration des données
 Présentation des expressions et des opérateurs
 Présentations des instructions simples ou élémentaires
Introduction
Dr.fadoua bouafif
6
Les données utilisées dans un programme sont rangées dans différentes variables, donc elles doivent être
déclarées avant l'écriture des instructions qui les traitent.
C’est quoi une variable?
 Une variable est un espace mémoire que le programme réserve lors de son exécution, au moment de sa
déclaration.
 Une variable possède un nom et un type.
 Le nom donne accès au contenu de la variable, il
 est composé de lettres et/ou chiffres mais pas de caractères de ponctuations ou espace.
 commence impérativement par une lettre.
 ne doit pas correspondre à un mot clé du langage utilisé. En C, on différencie les majuscules et les minuscules.
Déclaration des données
Dr.fadoua bouafif

Recommandé

Ch3-les structures conditionnelles.pdf
Ch3-les structures conditionnelles.pdfCh3-les structures conditionnelles.pdf
Ch3-les structures conditionnelles.pdfFadouaBouafifSamoud
 
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)rezgui mohamed
 
Algorithme & structures de données Chap III
Algorithme & structures de données Chap IIIAlgorithme & structures de données Chap III
Algorithme & structures de données Chap IIIInes Ouaz
 
exercices-corriges-dalgorithmique
exercices-corriges-dalgorithmiqueexercices-corriges-dalgorithmique
exercices-corriges-dalgorithmiquefast xp
 
Cours algorithme
Cours algorithmeCours algorithme
Cours algorithmebadr zaimi
 

Contenu connexe

Tendances

Travaux dirigés 1: algorithme & structures de données (corrigés)
Travaux dirigés 1: algorithme & structures de données (corrigés)Travaux dirigés 1: algorithme & structures de données (corrigés)
Travaux dirigés 1: algorithme & structures de données (corrigés)Ines Ouaz
 
Algorithme & structures de données Chap I
Algorithme & structures de données Chap IAlgorithme & structures de données Chap I
Algorithme & structures de données Chap IInes Ouaz
 
cours algorithme et structure de données 1er année
cours algorithme et structure de données 1er annéecours algorithme et structure de données 1er année
cours algorithme et structure de données 1er annéeMissaoui Abdelbaki
 
algorithme tronc commun lycée
algorithme tronc commun lycéealgorithme tronc commun lycée
algorithme tronc commun lycéeKayl Mido
 
Travaux dirigés 1: algorithme & structures de données
Travaux dirigés 1: algorithme & structures de donnéesTravaux dirigés 1: algorithme & structures de données
Travaux dirigés 1: algorithme & structures de donnéesInes Ouaz
 
Cours complet Base de donne Bac
Cours complet Base de donne Bac Cours complet Base de donne Bac
Cours complet Base de donne Bac Amri Ossama
 
Travaux Dirigés : Algorithmique et Structure de Données
Travaux Dirigés : Algorithmique et Structure de DonnéesTravaux Dirigés : Algorithmique et Structure de Données
Travaux Dirigés : Algorithmique et Structure de DonnéesAnass41
 
Devoirs Algorithme + correction pour 4 si
Devoirs Algorithme + correction pour 4 siDevoirs Algorithme + correction pour 4 si
Devoirs Algorithme + correction pour 4 siNarûtö Bàl'Sèm
 
Chapitre2fonctionscppv2019
Chapitre2fonctionscppv2019Chapitre2fonctionscppv2019
Chapitre2fonctionscppv2019Aziz Darouichi
 
Chapitre 3 elements de base de java
Chapitre 3  elements de base de javaChapitre 3  elements de base de java
Chapitre 3 elements de base de javaAmir Souissi
 
Cours algo: Les pointeurs
Cours algo: Les pointeursCours algo: Les pointeurs
Cours algo: Les pointeursSana REFAI
 
Algorithme & structures de données Chap II
Algorithme & structures de données Chap IIAlgorithme & structures de données Chap II
Algorithme & structures de données Chap IIInes Ouaz
 
UML Part 4- diagrammres de classes et d'objets mansouri
UML Part 4- diagrammres de classes et d'objets mansouriUML Part 4- diagrammres de classes et d'objets mansouri
UML Part 4- diagrammres de classes et d'objets mansouriMansouri Khalifa
 

Tendances (20)

Travaux dirigés 1: algorithme & structures de données (corrigés)
Travaux dirigés 1: algorithme & structures de données (corrigés)Travaux dirigés 1: algorithme & structures de données (corrigés)
Travaux dirigés 1: algorithme & structures de données (corrigés)
 
Algorithme & structures de données Chap I
Algorithme & structures de données Chap IAlgorithme & structures de données Chap I
Algorithme & structures de données Chap I
 
01 correction-td smia-s2-info2
01 correction-td smia-s2-info201 correction-td smia-s2-info2
01 correction-td smia-s2-info2
 
02 correction-td smi-s3-algo2
02 correction-td smi-s3-algo202 correction-td smi-s3-algo2
02 correction-td smi-s3-algo2
 
cours algorithme et structure de données 1er année
cours algorithme et structure de données 1er annéecours algorithme et structure de données 1er année
cours algorithme et structure de données 1er année
 
algorithme tronc commun lycée
algorithme tronc commun lycéealgorithme tronc commun lycée
algorithme tronc commun lycée
 
Programmation en C
Programmation en CProgrammation en C
Programmation en C
 
Travaux dirigés 1: algorithme & structures de données
Travaux dirigés 1: algorithme & structures de donnéesTravaux dirigés 1: algorithme & structures de données
Travaux dirigés 1: algorithme & structures de données
 
Exercices algo
Exercices algoExercices algo
Exercices algo
 
Cours complet Base de donne Bac
Cours complet Base de donne Bac Cours complet Base de donne Bac
Cours complet Base de donne Bac
 
Travaux Dirigés : Algorithmique et Structure de Données
Travaux Dirigés : Algorithmique et Structure de DonnéesTravaux Dirigés : Algorithmique et Structure de Données
Travaux Dirigés : Algorithmique et Structure de Données
 
Devoirs Algorithme + correction pour 4 si
Devoirs Algorithme + correction pour 4 siDevoirs Algorithme + correction pour 4 si
Devoirs Algorithme + correction pour 4 si
 
Chapitre2fonctionscppv2019
Chapitre2fonctionscppv2019Chapitre2fonctionscppv2019
Chapitre2fonctionscppv2019
 
Algorithmique
AlgorithmiqueAlgorithmique
Algorithmique
 
Chapitre 3 elements de base de java
Chapitre 3  elements de base de javaChapitre 3  elements de base de java
Chapitre 3 elements de base de java
 
Cours algo: Les pointeurs
Cours algo: Les pointeursCours algo: Les pointeurs
Cours algo: Les pointeurs
 
Algorithme & structures de données Chap II
Algorithme & structures de données Chap IIAlgorithme & structures de données Chap II
Algorithme & structures de données Chap II
 
cours algorithme
cours algorithmecours algorithme
cours algorithme
 
Marzouk jsp
Marzouk jspMarzouk jsp
Marzouk jsp
 
UML Part 4- diagrammres de classes et d'objets mansouri
UML Part 4- diagrammres de classes et d'objets mansouriUML Part 4- diagrammres de classes et d'objets mansouri
UML Part 4- diagrammres de classes et d'objets mansouri
 

Similaire à Ch2-Notions de base & actions élémentaires.pdf

CPP PTT DE CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC
CPP PTT DE CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCPP PTT DE CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC
CPP PTT DE CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCSiratiSoufiane
 
Cours-ALGORITHMIQUE-03.pdf
Cours-ALGORITHMIQUE-03.pdfCours-ALGORITHMIQUE-03.pdf
Cours-ALGORITHMIQUE-03.pdfadeljaouadi
 
Cours langage c
Cours langage cCours langage c
Cours langage ccoursuniv
 
Chap 1 Initiation.pptx
Chap 1 Initiation.pptxChap 1 Initiation.pptx
Chap 1 Initiation.pptxolfaharrabi2
 
Coursalgorithmique
CoursalgorithmiqueCoursalgorithmique
Coursalgorithmiquenicodeff
 
Les Structures de données
Les Structures de donnéesLes Structures de données
Les Structures de donnéesHichem Kemali
 
Formation en Python_Niveau1_2023.pptx
Formation en Python_Niveau1_2023.pptxFormation en Python_Niveau1_2023.pptx
Formation en Python_Niveau1_2023.pptxbetalab
 
Généralités sur la notion d’Algorithme
Généralités sur la notion d’AlgorithmeGénéralités sur la notion d’Algorithme
Généralités sur la notion d’AlgorithmeInforMatica34
 
02 Spécificité du C++ COURS SYS SYSSSSSS
02 Spécificité du C++  COURS SYS SYSSSSSS02 Spécificité du C++  COURS SYS SYSSSSSS
02 Spécificité du C++ COURS SYS SYSSSSSSAyoubElmrabet6
 
Chapitre1: Langage Python
Chapitre1: Langage PythonChapitre1: Langage Python
Chapitre1: Langage PythonAziz Darouichi
 
Cours_C_for_Etudiant.pdf
Cours_C_for_Etudiant.pdfCours_C_for_Etudiant.pdf
Cours_C_for_Etudiant.pdfHailisara
 
Les structures de données.pptx
Les structures de données.pptxLes structures de données.pptx
Les structures de données.pptxPROFPROF11
 

Similaire à Ch2-Notions de base & actions élémentaires.pdf (20)

CPP PTT DE CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC
CPP PTT DE CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCPP PTT DE CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC
CPP PTT DE CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC
 
langage C++
langage C++langage C++
langage C++
 
Cours-ALGORITHMIQUE-03.pdf
Cours-ALGORITHMIQUE-03.pdfCours-ALGORITHMIQUE-03.pdf
Cours-ALGORITHMIQUE-03.pdf
 
Cours langage c
Cours langage cCours langage c
Cours langage c
 
Language-C.ppt
Language-C.pptLanguage-C.ppt
Language-C.ppt
 
Chap 1 Initiation.pptx
Chap 1 Initiation.pptxChap 1 Initiation.pptx
Chap 1 Initiation.pptx
 
Ch02
Ch02Ch02
Ch02
 
Coursalgorithmique
CoursalgorithmiqueCoursalgorithmique
Coursalgorithmique
 
Les Structures de données
Les Structures de donnéesLes Structures de données
Les Structures de données
 
Chap1_Entrees_Sorties.pptx
Chap1_Entrees_Sorties.pptxChap1_Entrees_Sorties.pptx
Chap1_Entrees_Sorties.pptx
 
Theme 6
Theme 6Theme 6
Theme 6
 
Formation en Python_Niveau1_2023.pptx
Formation en Python_Niveau1_2023.pptxFormation en Python_Niveau1_2023.pptx
Formation en Python_Niveau1_2023.pptx
 
Chapitre 02 : Variables, Expressions et Instructions
Chapitre 02 : Variables, Expressions et InstructionsChapitre 02 : Variables, Expressions et Instructions
Chapitre 02 : Variables, Expressions et Instructions
 
Généralités sur la notion d’Algorithme
Généralités sur la notion d’AlgorithmeGénéralités sur la notion d’Algorithme
Généralités sur la notion d’Algorithme
 
algorithmique
algorithmiquealgorithmique
algorithmique
 
02 Spécificité du C++ COURS SYS SYSSSSSS
02 Spécificité du C++  COURS SYS SYSSSSSS02 Spécificité du C++  COURS SYS SYSSSSSS
02 Spécificité du C++ COURS SYS SYSSSSSS
 
Chapitre1: Langage Python
Chapitre1: Langage PythonChapitre1: Langage Python
Chapitre1: Langage Python
 
TAD (1).pptx
TAD (1).pptxTAD (1).pptx
TAD (1).pptx
 
Cours_C_for_Etudiant.pdf
Cours_C_for_Etudiant.pdfCours_C_for_Etudiant.pdf
Cours_C_for_Etudiant.pdf
 
Les structures de données.pptx
Les structures de données.pptxLes structures de données.pptx
Les structures de données.pptx
 

Plus de FadouaBouafifSamoud

Plus de FadouaBouafifSamoud (8)

Ch4- les structures répétitives.pdf
Ch4- les structures répétitives.pdfCh4- les structures répétitives.pdf
Ch4- les structures répétitives.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
 
ch6 les sous programmes.pdf
ch6 les sous programmes.pdfch6 les sous programmes.pdf
ch6 les sous programmes.pdf
 
Ch5-les tableaux et les pointeurs.pdf
Ch5-les tableaux et les pointeurs.pdfCh5-les tableaux et les pointeurs.pdf
Ch5-les tableaux et les pointeurs.pdf
 
ch4_les listes.pdf
ch4_les listes.pdfch4_les listes.pdf
ch4_les listes.pdf
 
ch3_les variables_dynamiques.pdf
ch3_les variables_dynamiques.pdfch3_les variables_dynamiques.pdf
ch3_les variables_dynamiques.pdf
 
Ch2_ la récursivité.pdf
Ch2_ la récursivité.pdfCh2_ la récursivité.pdf
Ch2_ la récursivité.pdf
 
Ch1 _ les enregistrements.pdf
Ch1 _ les enregistrements.pdfCh1 _ les enregistrements.pdf
Ch1 _ les enregistrements.pdf
 

Dernier

Activités mercredis cycle 3 - año 2020.pdf
Activités mercredis cycle 3 - año 2020.pdfActivités mercredis cycle 3 - año 2020.pdf
Activités mercredis cycle 3 - año 2020.pdfLallaJamilaFtaich1
 
presentation parents_orientation_en-ligne_3e_phase-provisoire2024(1).pptx
presentation parents_orientation_en-ligne_3e_phase-provisoire2024(1).pptxpresentation parents_orientation_en-ligne_3e_phase-provisoire2024(1).pptx
presentation parents_orientation_en-ligne_3e_phase-provisoire2024(1).pptxsiemaillard
 
SQCDP.Etudiants.pptx
SQCDP.Etudiants.pptxSQCDP.Etudiants.pptx
SQCDP.Etudiants.pptxTouhemiSyrina
 
calendrier 12.02.2024
calendrier 12.02.2024calendrier 12.02.2024
calendrier 12.02.2024frizzole
 
antigone de jean Anouilh la tragédie moderne
antigone de jean Anouilh la tragédie moderneantigone de jean Anouilh la tragédie moderne
antigone de jean Anouilh la tragédie moderneayoubrhammadi2
 
L’ingénierie de l’éducation à l’ère du numérique
L’ingénierie de l’éducation à l’ère du numériqueL’ingénierie de l’éducation à l’ère du numérique
L’ingénierie de l’éducation à l’ère du numériqueSKennel
 
MARTYRS DE LIBYE – Histoire des victimes coptes de IS..pptx
MARTYRS DE LIBYE – Histoire des victimes coptes de IS..pptxMARTYRS DE LIBYE – Histoire des victimes coptes de IS..pptx
MARTYRS DE LIBYE – Histoire des victimes coptes de IS..pptxMartin M Flynn
 
Découvrir le métier d'archiviste
Découvrir le métier d'archivisteDécouvrir le métier d'archiviste
Découvrir le métier d'archivisteArchivesdeLyon
 
Calendrier de la semaine du 19 au 23 février 2024
Calendrier de la semaine du 19 au 23 février 2024Calendrier de la semaine du 19 au 23 février 2024
Calendrier de la semaine du 19 au 23 février 2024frizzole
 
Offres d'emploi (Mise à Jour le 19/02).pptx
Offres d'emploi (Mise à Jour le 19/02).pptxOffres d'emploi (Mise à Jour le 19/02).pptx
Offres d'emploi (Mise à Jour le 19/02).pptxMissionLocale
 

Dernier (12)

l'approche actionnelle.pptx
l'approche actionnelle.pptxl'approche actionnelle.pptx
l'approche actionnelle.pptx
 
Activités mercredis cycle 3 - año 2020.pdf
Activités mercredis cycle 3 - año 2020.pdfActivités mercredis cycle 3 - año 2020.pdf
Activités mercredis cycle 3 - año 2020.pdf
 
presentation parents_orientation_en-ligne_3e_phase-provisoire2024(1).pptx
presentation parents_orientation_en-ligne_3e_phase-provisoire2024(1).pptxpresentation parents_orientation_en-ligne_3e_phase-provisoire2024(1).pptx
presentation parents_orientation_en-ligne_3e_phase-provisoire2024(1).pptx
 
SQCDP.Etudiants.pptx
SQCDP.Etudiants.pptxSQCDP.Etudiants.pptx
SQCDP.Etudiants.pptx
 
calendrier 12.02.2024
calendrier 12.02.2024calendrier 12.02.2024
calendrier 12.02.2024
 
antigone de jean Anouilh la tragédie moderne
antigone de jean Anouilh la tragédie moderneantigone de jean Anouilh la tragédie moderne
antigone de jean Anouilh la tragédie moderne
 
L’ingénierie de l’éducation à l’ère du numérique
L’ingénierie de l’éducation à l’ère du numériqueL’ingénierie de l’éducation à l’ère du numérique
L’ingénierie de l’éducation à l’ère du numérique
 
Principales ressources cartographiques et statistiques Centre GéoStat (2024)
Principales ressources cartographiques et statistiques Centre GéoStat (2024)Principales ressources cartographiques et statistiques Centre GéoStat (2024)
Principales ressources cartographiques et statistiques Centre GéoStat (2024)
 
MARTYRS DE LIBYE – Histoire des victimes coptes de IS..pptx
MARTYRS DE LIBYE – Histoire des victimes coptes de IS..pptxMARTYRS DE LIBYE – Histoire des victimes coptes de IS..pptx
MARTYRS DE LIBYE – Histoire des victimes coptes de IS..pptx
 
Découvrir le métier d'archiviste
Découvrir le métier d'archivisteDécouvrir le métier d'archiviste
Découvrir le métier d'archiviste
 
Calendrier de la semaine du 19 au 23 février 2024
Calendrier de la semaine du 19 au 23 février 2024Calendrier de la semaine du 19 au 23 février 2024
Calendrier de la semaine du 19 au 23 février 2024
 
Offres d'emploi (Mise à Jour le 19/02).pptx
Offres d'emploi (Mise à Jour le 19/02).pptxOffres d'emploi (Mise à Jour le 19/02).pptx
Offres d'emploi (Mise à Jour le 19/02).pptx
 

Ch2-Notions de base & actions élémentaires.pdf

  • 1. 1 Dr.fadoua bouafif Algorithmique & structure des données I 1ère Business Computing (BC) Responsable : Dr. Fadoua Bouafif
  • 2. Chapitre 2 Notions de base & actions élémentaires 2 Dr.fadoua bouafif
  • 3. Objectifs du chapitre  Apprendre à définir et à déclarer les données dans un algorithme/programme  Savoir les opérateurs mathématiques et les expressions arithmétiques  Connaitre les expressions simples et élémentaires 3 Dr.fadoua bouafif
  • 4. Plan du chapitre 1. Introduction 2. Déclaration des Données 3. Les expressions et les opérateurs 4. Les instructions simples ou élémentaires Conclusion 4 Dr.fadoua bouafif
  • 5. 5 La structure général d'un algorithme comprend plusieurs parties et définit certaines notions et actions.  Déclaration des données  Présentation des expressions et des opérateurs  Présentations des instructions simples ou élémentaires Introduction Dr.fadoua bouafif
  • 6. 6 Les données utilisées dans un programme sont rangées dans différentes variables, donc elles doivent être déclarées avant l'écriture des instructions qui les traitent. C’est quoi une variable?  Une variable est un espace mémoire que le programme réserve lors de son exécution, au moment de sa déclaration.  Une variable possède un nom et un type.  Le nom donne accès au contenu de la variable, il  est composé de lettres et/ou chiffres mais pas de caractères de ponctuations ou espace.  commence impérativement par une lettre.  ne doit pas correspondre à un mot clé du langage utilisé. En C, on différencie les majuscules et les minuscules. Déclaration des données Dr.fadoua bouafif
  • 7. 7  Le type précise la taille de l'espace mémoire réservé et le codage binaire employé pour lire et écrire la donnée.  Le type peut être simple ou structuré :  Les types simples correspondent aux données uniques, comme les entiers (int en C), réels (float en C), caractères (char en C),  Les types structurés correspondent à un ensemble de données, comme une suite de nombres (tableau d'entier) ou de caractères (chaine de caractères). Dans ce cas, chaque case élémentaire de l'ensemble peut contenir une donnée de type simple ou structuré.  Lors de la déclaration des données dans l’algorithme (programme), deux types sont discernés: les constantes et les variables. Déclaration des données (suite) Dr.fadoua bouafif
  • 8. 8  Une constante est une variable :  Elle a une valeur fixe toute au long de l'algorithme (programme)  Elle ne peut pas être modifiée au cours de l'exécution de l'algorithme (programme).  Le type de la constante peut être : entier, réel, booléen, chaine de caractère, etc. Les constantes: définition Dr.fadoua bouafif En algorithmique En C Const : nom_constante = valeur Exemple : Algorithme test const : Pi = 3.14 debut .......... Fin Const type nom_constante = valeur ; Exemple : int main() { const float Pi = 3.14 ; .... return 0; } #define nom_constante valeur Exemple : #define Pi 3.14 int main () { …… return 0; }
  • 9. 9  Une variable est une donnée dont la valeur peut être modifiée au cours de l'exécution de l'algorithme (programme).  Elle peut être :  Une donnée d'entrée (fournie par l'utilisateur)  Un résultat final d'un calcul  Un résultat intermédiaire de calcul Les variables: définition Dr.fadoua bouafif
  • 10. 10 Les variables: déclaration Dr.fadoua bouafif En algorithmique En C Var : nom_v : type Exemple : Algorithme test var : a : entier x ,y : caractère debut .......... Fin Type nom_v ; Exemple : int main() { int a; char x,y; .... return 0; }
  • 11. 11 Il existe trois familles de types simples à savoir :  Types numériques  Types alphanumériques  Type booléen Les types de données Dr.fadoua bouafif
  • 12. 12 C'est le cas où une variable est destinée à recevoir des nombres.  entier (int en C) : réservé aux valeurs numériques entières (2 Octets). Exemple : 10, 5.  réel (float en C) : réservé aux valeurs numériques décimales (4 Octets). . Exemple : 10.2 , 3.5. Les types de données: Types numériques
  • 13. 13 Ce type de variable stocke des caractères : des lettres, des signes de ponctuations, des espaces et des chiffres.  caractère (char en C) : correspond à un caractère du code ASCII (1 Octets).. Exemple : ‘b’, ‘c’, ‘h’.  chaine de caractères (char* en C) : ensemble de caractères. Exemple : "bonjour " Les types de données: Types alphanumériques
  • 14. 14  Ce type prend deux valeurs soit vrai (true, 1) soit faux (false, 0).  En C, ce type peut être utiliser à l’aide de la bibliothèque <stdbool.h> exp: bool resultat; // déclaration resultat= true; // affectation Les types de données: Type booléen
  • 15. 15 Les expressions C’est quoi une expression?  Une expression représente une donnée.  Elle peut être une entité (variable, chiffre, caractère) ou un ensemble d'entités reliées par des opérateurs. Exemple : - "bonjour" ; - 3 + 2; - 5; - 2 * 3/10; - etc.
  • 16. 16 Les opérateurs C’est quoi un opérateur?  Un opérateur est un signe qui relie deux valeurs pour produire un résultat.  Il existe plusieurs types d'opérateurs :  Opérateurs sur les entiers et les réels  Opérateurs sur les entiers et les booléen  Opérateur sur les chaines de caractères  Opérateurs de comparaison
  • 17. 17 Arithmétique En Algorithmique En C + Addition + - Soustraction - * Multiplication * / division / div Division entière / mod Reste de la division % Les opérateurs sur les entiers et les réels Remarques :  La multiplication et la division ont la priorité sur l'addition et la soustraction.  L'utilisation des parenthèses force l'ordre des priorités.
  • 18. 18 Les opérateurs sur les entiers et les réels En C, d'autres opérateurs peut être appliqués sur les types numériques:
  • 19. 19 L'application de ses opérateurs sur les entiers :  et retourne 1 si les deux opérandes sont non nuls, sinon 0. Exemple : 32 et 40 1 ; 32 et 0 0  ou retourne 1 si au moins un des opérandes est non nul, sinon 0. Exemple : 32 ou 40 1 ; 32 ou 0 1 ; 0 ou 0 0  non retourne 1 si l'entier est nul, sinon 0. Exemple : non 40 0 ; non 0 1 Les opérateurs sur les entiers et les booléens
  • 20. 20  Cet opérateur est valable uniquement en algorithmique Opérateur sur les chaines de caractères
  • 21. 21 Les opérateurs de comparaison Remarques :  Ces opérateurs sont utilisés en algorithmique et en C (par convention)
  • 22. Les instructions simples ou élémentaires: Instruction d’affectation 22 Instruction d’affectation :  Consiste à attribuer une valeur à une variable donnée. Notation :  Une instruction d’affectation ne modifie que ce qui est situé à gauche de la flèche (= en C)  La valeur qui va être affectée à une variable doit être impérativement du même type que cette dernière, sinon c'est une erreur. En algorithmique En C expressionvaleur Exemples : A  30 B  "bonjour" Expression = valeur Exemples : A = 30; B = "bonjour"; Exemples : var : X : réel X  "bonjour" erreur X  5.3 correcte
  • 23. Activités 23 1. Quelles sont les valeurs de A; B et C après exécution des instructions suivantes : Algorithme test1 var : A,B : entier debut A  1 B  A + 3 A  3 fin Algorithme test2 var : A,B,C : entier debut A  5 B  3 C  A + B A  2 C  B - A fin 2. Déterminer les valeurs de x 3. Déterminer les valeurs des expressions suivantes
  • 24. Activités 24 Donner la valeur de A après chaque expression True True False True False True
  • 25. 25 Ces instructions permettent au programmeur de dialoguer avec sa machine.  L'opération de lecture permet à l'utilisateur de saisir une valeur à partir du clavier pour qu'elle soit utilisée par l’algorithme (programme).  Syntaxe : lire (variable) Exemple : lire (x) ; lire (x, y)  L'opération d'écriture permet à l’algorithme (programme) de communiquer des valeurs à l'utilisateur en les affichant à l'écran.  Syntaxe : écrire (variable) ou bien écrire ("message", variable) Exemple : écrire (x) ou écrire ("la valeur est :", x) écrire (x, y) Instruction de lecture/écriture (entrée/sortie)
  • 26. 26  Les fonctions d'entrée-sortie sont déclarées dans le fichier 'stdio.h’.  Il faut, donc, inclure ce fichier avant le programme principal (void main( )) en utilisant l'instruction #include <stdio.h>  La fonction scanf() : permet de lire les données à partir du clavier.  Format : le format de lecture de données,  &Var1, … : adresses des variables aux quelles les données seront attribuées. L'adresse d'une variable est indiquée par le nom de la variable précédé du signe « & » Exemple : float x ; int i ; double dx ; scanf ("%f", &x) ; /*lit un réel simple précision et le place dans x */ scanf ("%d", &i) ; /* lit un entier et le place dans i */ scanf ("%lf", &dx) ; /* lit un réel double précision et le place dans dx */ Instruction de lecture/écriture (entrée/sortie) EN C Syntaxe: scanf ("format", &Var1, &Var2, &Var3, …);
  • 27. 27  La fonction printf() : permet d’afficher à l'écran du texte, des valeurs de variables ou des résultats d'expression Syntaxe : printf ("format", expr1, expr2, …);  Format : est une chaîne de caractères qui peut contenir:  du texte  des séquences d’échappement (n : retour à la ligne; t: tabulation ; ": guillemet; …)  des spécificateurs de format : indiquant le format d’affichage  expr1, … : sont les variables et les expressions dont les valeurs seront achées à la place des spécificateurs de formats Instruction de lecture/écriture (entrée/sortie) EN C Exemples: 1. printf ("bonjour"); float x ; int i ; x = 15.3 ; i = 5 ; printf ("la variable x vaut %f n la variable i vaut %dn", x, i) ;
  • 28. 28  Spécificateurs de format Instruction de lecture/écriture (entrée/sortie) EN C Type de la variable Format Signification char %c caractère char * %s chaine de caractères int %d ou %i entier float %f réel double %lf réel double précision  Les différents formats concernent aussi bien la saisie que l’affichage.
  • 29. 29 Enoncé 1. Ecrire un algorithme qui calcule et affiche l’air d’un cercle. La valeur du rayon est donnée par l’utilisateur. 2. Donner une solution en langage C Solution Activité
  • 30. 30 Activité #include <stdio.h> #include <stdlib.h> int main() { const float PI=3.14; float rayon, surface; // saisir les données printf("Veuillez entrer la valeur du rayon de cercle: "); scanf("%f", &rayon); //calcul du surface surface=rayon*rayon*PI; //affichage du resultat printf("l'air du cercle = %fn", surface); return 0; }
  • 31. 31 Enoncé 1. Ecrire un algorithme qui permet de calculer le chiffre d’affaire d’une entreprises. La quantité de produits vendus et le prix de vente sont données par l’utilisateur. 2. Donner une solution en langage C Solution Activité
  • 32. Conclusion Dans ce chapitre nous avons :  Déclaré les variables et les constantes  Défini les types de données  Montré les expressions et les operations  Détaillé les instructions de lecture et de l’écriture en algorithmique et en c 32 Dr.fadoua bouafif