Vous êtes sur la page 1sur 10

01/02/2024

Université Cadi Ayyad


Marrakech

Initiation à la
programmation Ecole Nationale des
avec Python sciences appliquées

Chapitre n°1:
Algorithmique et langages
informatiques Année scolaire 2023/2024
2ème Semestre
Niveau : CP1

Pr. Abdelhak KADDRI

Contrat!
Notez bien : Votre attention est
primordiale
1. La prise des notes est indispensable.

2. Devinez l’évaluation diagnostique à


chaque instant.

3. Les supports des cours et TDs/TPs seront


disponibles sur la plateforme e-campus.
4. Veuillez installer Python IDLE pour les
TPs :
(https://www.python.org/downloads/).

ENSA-MARRAAKECH 2

1
01/02/2024

Introduction
1-Dans un système informatique, Où sont stocké
les données d’entrée ?

2-Quelle est la nature de l’information dans un SI


Entrée Sortie ?

3-Comment l’information se transforme ?

4-Comment restituer l’information à la sortie d’un


Données Résultats SI ?
Traitements

5-Comment un SI peut-t-il réaliser un traitement


automatique ?

6-Comment réaliser un programme (une


application) ?
ENSA-MARRAAKECH 3

Table des matières


I. ALGORITHMIQUE ET LANGAGES INFORMATIQUES.
II. LES DONNEES ET LES TRAITEMENTS.
III. LES STRUCTURES DE CONTRÔLE.
IV. LES STRUCTURES DE DONNEES (SEQUENCES) –partie1
V. LES STRUCTURES DE DONNEES (SEQUENCES) –partie2 .
VI. LES FONCTIONS : UTILISATION.
VII. LES FONCTIONS : CREATION.
VIII.LES FICHIERS.
ENSA-MARRAAKECH 4

2
01/02/2024

Plan de 1er chapitre


Algorithmique et langages informatiques

1) Démarche algorithmique et algorithmes :

2) Langages de programmation :

a)Langages machine

b)Langages de bas niveau/de haut niveau (évolués)

3)Le langage python :

a)Présentation de langage

b)Utilisation de langage

ENSA-MARRAAKECH 5

Pourquoi une démarche algorithmique ?

ENSA-MARRAAKECH 6

3
01/02/2024

La phase d’analyse d’un problème

Démarche algorithmique

Problème 1-Analyse 2-Conception Algorithme


du problème d’une solution

La phase d’analyse d’un problème consiste à une phase de lecture approfondie


du problème afin d’en dégager :
• Les traitements de programme : sont les différentes opérations à réaliser pendant
l’exécution de notre programme (de l’entrée jusqu’à la sortie des résultats).
• Les entrées de programme : sont les données nécessaires pour réaliser ces traitements.
• Les sorties de programme : sont les données qui représentent les résultats souhaités.
ENSA-MARRAAKECH 7

La phase de conception d’une solution

Démarche algorithmique

Problème 1-Analyse 2-Conception Algorithme


du problème d’une solution

La phase de conception d’une solution :


• C’est une phase qui permet la mise en route d’un algorithme pour
un problème donné, par la mise en ordre des traitements
nécessaires, en commençant de lecture d’entrées jusqu’à la
restitution des résultats.
ENSA-MARRAAKECH 8

4
01/02/2024

Application d’une démarche algorithmique


Exercice d’application n°1 :
Calculer la moyenne des notes pour un étudiant en CP1 de la 1 ère session, puis afficher le résultat
en précisant la mention correspondante (faible, passable, assez bien, bien, …).
➔Première phase (analyse de problème) :

Les données d’entrée Les traitements Les données de sortie

ENSA-MARRAAKECH 9

Application d’une démarche algorithmique


Concernant la 2ème phase, il faut noter que pour mettre en œuvre un algorithme nous
pouvons utiliser soit un organigramme (graphique) ou un algorithme (textuel) :

Algorithme
Organigramme
Déclaration de données
Début_Algorithme

Instructions d’entrée : lire() ou saisir()

Opérations : expressions du calcul et affectation

Opérations conditionnelles et répétitives : si, tant que, pour, …

Instructions de sortie : écrire() ou afficher()

Fin_Algorithme
ENSA-MARRAAKECH 10

10

5
01/02/2024

Application d’une démarche algorithmique


• Revenons sur l’Exercice d’application n°1 (suite):

➔2ème phase (conception d’une solution) : En considérant la


version graphique, proposez un organigramme pour ce problème?

ENSA-MARRAAKECH 11

11

Plan de 1er chapitre


Algorithmique et langages informatiques

1) Démarche algorithmique et algorithmes :

2) Langages de programmation :

a)Langages machine

b)Langages de bas niveau/de haut niveau (évolués)

3)Le langage python :

a)Présentation de langage

b)Utilisation de langage

ENSA-MARRAAKECH 12

12

6
01/02/2024

C’est quoi la programmation?


• La programmation consiste à expliquer
en détails à une machine ce qu'elle doit
faire, en sachant qu'elle ne peut pas
véritablement comprendre un
langage humain, mais seulement
effectuer un traitement automatique
sur des séquences de caractères.
• Donc la programmation est une phase
qui suit la phase d’algorithmique, elle sert
la traduction (codage) de notre
algorithme (langage humain) en un
programme (langage machine).

ENSA-MARRAAKECH 13

13

Langages machine de bas niveau

• Les microprocesseurs des ordinateurs travaillent Fig1


sur des données binaires 0/1, appelées des bits,
que l'on regroupe par octets (groupe de 8 bits).
• Comme le binaire est difficilement lisible, on
utilise très souvent la représentation
hexadécimale. Fig2

• Les langages «assembleurs» sont ceux qui sont les


plus proches de ce que comprennent les
processeurs, ils représentent les opérations
exécutables et leurs options sous forme textuelle Fig3
compréhensible. Ce sont des langages du bas
niveau.

ENSA-MARRAAKECH 14

14

7
01/02/2024

Langages évolués
• Au fil du temps, on avait connu l’invention des
langages plus évolués avec des syntaxes plus
en plus visible pour l’homme.
• Voici quelques exemples de langages de
programmation (dont vous avez
probablement déjà entendu parler) :

• Quelques dates :

Langage Assembleur Basic Pascal C C++ Python Java

Date 1950 1964 1970 1973 1983 1990 1994

ENSA-MARRAAKECH 15

15

Plan de 1er chapitre


Algorithmique et langages informatiques

1) Démarche algorithmique et algorithmes :

2) Langages de programmation :

a)Langages machine

b)Langages de bas niveau/de haut niveau (évolués)

3)Le langage python :

a)Présentation de langage

b)Utilisation de langage

ENSA-MARRAAKECH 16

16

8
01/02/2024

Présentation de langage
• Créé en 1990 par Guido VAN ROSSUM, PYTHON
est un langage open source, géré par la
« PYTHON Software Fondation ».
• Multiplateformes et multifonctions : le
programme sera souvent portable : on peut le
faire fonctionner sans aucune modification, sur
des machines ou des systèmes d'exploitation
différents (versus programme de bas niveau).
• Principalement utilisé en branche 2.x, la version
3.x est une version " nettoyée " dans le sens où
de nombreux doublons et de nombreuses
redondances ont été supprimées afin d’épurer le
code du langage.

ENSA-MARRAAKECH 17

17

Utilisation de langage
• On peut utiliser python depuis une fenêtre de
terminal (ou console) ou bien, on peut passer par un
environnement de développement (IDE : Interactive
Development Environment),
• Dans tous les cas, il y a deux façons de travailler avec
python :
1. L'interpréteur python appelé aussi Shell : Il
permet de saisir des instructions qui sont
immédiatement exécutées, comme sur une
calculatrice.
2. L'éditeur de programmes (ou éditeur de
scripts) : Le programme (aussi appelé script)
devra être enregistré dans un fichier texte
d'extension .py pour qu'il soit reconnu comme
un programme python.

ENSA-MARRAAKECH 18

18

9
01/02/2024

Recherche des Erreurs


Lors de mise au point d’un programme, il faut prendre en considération les 3
types des erreurs suivants :
1. Syntaxique : se réfère aux règles que les auteurs du langage ont établies
pour la structure du programme.
• Exemple : int x=1; ➔ l’instruction correcte est: x=1 sans int, le point-virgule est facultatif.
2. Sémantique : c’est une erreur de logique, i.e, le programme est sans erreurs
mais les résultats sont inattendus.
• Exemple : if a<0 : print("a est positif") ➔ l’instruction correcte est: print("a est négatif")
3. D’exécution ou « Run-time error » : lorsque votre programme fonctionne
déjà, mais que des circonstances particulières se présentent,
• Exemple : Votre programme essaie de lire un fichier qui n'existe plus, une division par
zéro.

ENSA-MARRAAKECH 19

19

MERCI POUR VOTRE


ATTENTION
Fin de 1er chapitre.

20

10

Vous aimerez peut-être aussi