Vous êtes sur la page 1sur 21

Séance 3

Système Informatique?
• Techniques du traitement automatique de l’information au moyen des ordinateurs
Système informatique = ordinateur + périphériques

• Éléments d’un système informatique

Applications
).Word, Excel, Jeux, Maple, etc(
Langages
).Java,C/C++, Fortran,etc(
Système d’exploitation
).DOS,Windows, Unix, etc(
Matériel
).PC, Macintosh, station SUN, etc(

2019/2020 MIPC 2
Principaux éléments d’un PC

• Unité centrale (le boîtier) Processeur ou CPU (Central Processing Unit)


• Mémoire centrale
• Unité de calcul
• Unité de commande

• Périphériques
• Moniteur (l'écran), clavier, souris
• Modem, imprimante, scanner, …

2019/2020 MIPC 3
Qu’est-ce qu’un programme d’ordinateur?

• Allumez un ordinateur, vous n’en tirerez rien!!

• Pour le faire marcher il faut lui fournir un programme


Ordinateur = matériel + programme(s)

• Un programme est une suite d’instructions d’ordinateur

• Une instruction est un ordre compris par l’ordinateur et qui lui fait exécuté une
action, c-à-d. une modification de son environnement

2019/2020 MIPC 4
Langages informatiques
• Un langage informatique est un outil permettant de donner des ordres (instructions) à
la machine
• A chaque instruction correspond une action du processeur

• Intérêt : écrire des programmes (suite consécutive d’instructions) destinés à effectuer


une tâche donnée
• Exemple: un programme de gestion de comptes bancaires

• Contrainte: être compréhensible par la machine

2019/2020 MIPC 5
Langage machine
• Langage binaire: l’information est exprimée et manipulée sous forme d’une suite de bits

• Un bit (binary digit) = 0 ou 1 (2 états électriques)

• Une combinaison de 8 bits= 1 Octet  28  256

• possibilités qui permettent de coder tous les caractères alphabétiques, numériques, et symboles tels
que ?,*,&, …

• Le code ASCII (American Standard Code for Information Inter change) donne les correspondances entre les
caractères alphanumériques et leurs représentation binaire, Ex. A= 01000001, ?=00111111

• Les opérations logiques et arithmétiques de base (addition, multiplication, … ) sont effectuées en binaire

2019/2020 MIPC 6
Langages de programmation:
• Deux types de langages:
• Langages procéduraux : sont à base de procédures. Une procédure est une portion de
programme écrit en langage de haut niveau qui accomplit une tâche spécifique
nécessaire au programme.
• Langages orientés objets : sont des langages non procéduraux dans lesquels les
éléments du programme sont considérés comme des objets qui peuvent s'échanger
des messages.

• Choix d’un langage?

2019/2020 MIPC 7
Cycle de développement du programme

Enoncé du problème
Spécification
Cahier des charges
Analyse
Algorithme
Traduction en langage
Programme source
Compilation

Programme exécutable
Tests et modifications
Version finale et résultats

La réalisation de programmes passe par l’écriture d’algorithmes  D’où l’intérêt de l’Algorithmique

2019/2020 MIPC 8
Algorithmique

2019/2020 MIPC 9
Algorithmique ?
• Une définition simple d’un algorithme : c’est une suite d’instructions qui, quand
elles sont exécutées correctement aboutissent au résultat attendu. C’est un
énoncé dans un langage clair, bien défini et ordonné qui permet de résoudre un
problème, le plus souvent par calcul.
• C’est un ensemble de règles opératoires rigoureuses.
• Un algorithme est écrit en utilisant un langage de description d’algorithme
(LDA). L’algorithme ne doit pas être confondu avec le programme proprement
dit.
• Le mot algorithme vient du nom du mathématicien Al Khuwarizmi (Muhammad
ibn Mūsā alKhuwārizmī), savant persan du IXème siècle, auteur d’un ouvrage
appelé "La transposition et la réduction", Aljabr wa’lmuqābalah. Le mot Aljabr
deviendra algèbre, le nom de l’auteur sera latinisé en Algoritmi, qui sera à la
base du mot algorithme.
2019/2020 MIPC 10
Représentation d’un algorithme
Deux façons pour représenter un algorithme:
• L’Organigramme: représentation graphique avec des symboles (carrés, losanges,… etc.)
• offre une vue d’ensemble de l’algorithme
• représentation quasiment abandonnée aujourd’hui

• Le pseudo-code égalment appelé Le Langage de description d’algorithme (LDA) : Ce


langage utilise un ensemble de mots clés et de structures permettant de décrire de manière
complète, claire, l’ensemble des opérations à exécuter sur des données pour obtenir des résultats ;
on n’hésitera donc pas à agrémenter l’algorithme de nombreux commentaires.

• L’avantage d’un tel langage est de pouvoir être facilement transcrit dans un langage de

programmation structuré (Pascal, C, …).


• plus pratique pour écrire un algorithme
• représentation largement utilisée
2019/2020 MIPC 11
STRUCTURE D’UN ALGORITHME

2019/2020 MIPC 13
STRUCTURE D’UN ALGORITHME

1-L’en-tête
Il permet tout simplement d’identifier un algorithme
2-Les déclarations
C’est la liste exhaustive des objets, grandeurs utilisés et
manipulés dans le corps de l’algorithme ; cette liste est placée en
début d’algorithme.
3-Le corps
Dans cette partie de l’algorithme, sont placées les tâches
(instructions, opérations) à exécuter.
2019/2020 MIPC 14
Algorithme monpremier

VAR
titre:chaîne;
DEBUT
titre← " Bonjour " ;
afficher(titre);
FIN

2019/2020 MIPC 15
Langage C : Bref historique
• Le langage C a été créé par Dennis Ritchie aux ‘Bell Telephone
Laborateries’ en 1972: il a été conçu pour développer le système Unix.
• En raison de sa puissance et de sa souplesse, le langage C s’est rapidement
répandue au-delà des laboratoires Bell.
• Les programmeurs ont commencé à l’utiliser pour écrire toutes sortes de
programmes
• Diverses organisations ont utilisé leurs propres versions du langage C.
Conséquence : l’implémentation est devenu un casse-tête pour les
programmeurs.
• Réponse à ce problème : l’American National Standards Institute(ANSI) à
formé un comité en 1983 pour établir le C standard ANSI.

2019/2020 MIPC 16
Pourquoi utiliser le langage C
• Souple et puissant : Le langage C est utilisé pour des projets variés comme les
systèmes d’exploitation, les traitements de textes, les graphiques, les tableurs,
les compilateurs pour d’autres langages.
• Il existe un large choix de compilateurs et d’utilitaires.
• Avec la norme ANSI, le C est devenu un langage portable: un programme C
écrit pour un type d’ordinateur(IBM) peut être compilé pour tourner sur un
autre système avec très peu ou aucune modification.
• Le langage C est modulaire: son code peut(et devrait) être écrit sous forme de
sous-programme appelés fonctions. Si vous passez des informations à ces
fonctions, vous obtenez un code réutilisable.
• C est un langage structuré (offre plusieurs structures de contrôle) et typé
(déclarations obligatoires).
2019/2020 MIPC 17
Cycle de développement du programme

• Création d’un code source en utilisant un éditeur


• Le code source est une série de commandes qui indiquent à l’ordinateur les tâches que
vous voulez lui faire exécuter, il est créé à l’aide d’un éditeur.
• La plupart des systèmes d’exploitation contiennent un éditeur. Sous Unix vous pouvez
utiliser, ed, ex, edit emacs ou vi. Microsoft Windows vous offre le bloc-notes.

2019/2020 MIPC 18
Cycle de développement du programme

• Compilation du code source


• Votre ordinateur ne peut pas comprendre le code source. Il ne peut comprendre que
des instructions binaires dans ce que l’on appelle du langage machine. Votre
programme C doit être transformé en langage machine pour pouvoir être exécuté sur
votre ordinateur. Cette opération est réalisée par un compilateur qui transforme votre
fichier code source en un fichier contenant le code objet(les mêmes instructions en
langage machine).
• Chaque compilateur possède sa propre commande pour créer le code objet.
• Windows: C Microsoft, Turbo C, Turbo C++, Borland C, Borland C++, DevCpp.
• Unix : utiliser la commande c.
• Linux et Unix: la commande gcc.

2019/2020 MIPC 19
Cycle de développement du programme
• Création du fichier exécutable
• Une partie du langage C est constituée d’une bibliothèque de fonctions
contenant du code objet destiné à des fonctions prédéfinies. Ces fonctions
sont fournies avec votre compilateur. Si votre programme les utilise, le
fichier objet obtenu après compilation doit être complété par le code objet
issu de la bibliothèque de fonctions. Cette dernière étape, appelée liaison,
fournit le programme exécutable (exécutable signifie que ce programme
peut être exécuté sur votre ordinateur)

2019/2020 MIPC 20
Cycle de développement du programme : langage C
Edition

Fichier en-tête (.h) Programme source (.c)


……………….. #include…
#include <stdio.h>
stdio .h
…..
/*déclaration*/
main()
{
…..
}

Bibliothèques précompilées Compilation


(.lib)

Programme objet (.obj)


…………………..
Edition de lien
stdio.lib
Programme executable
(.exe)
2019/2020 MIPC 21
Exemple de programme en langage C
#include <stdio.h>//standard input/output
#include <math.h>
#define NFOIS 5
main ()
{ int i;
float x, racx;
printf("Bonjour\n");
printf("je vais vous calculer %d racines carrées\n",NFOIS);

Programme principal
for(i=0;i<NFOIS;i++)
{ printf("donnez un nombre:");
scanf("%f",&x);

Bloc
if(x<0.0)
printf("le nombre %f ne possède pas de racine carrée\n",x);
else
{ racx=sqrt(x);
printf("le nombre %f a pour racine carrée :%f\n",x,racx);
}
}
2019/2020 printf("travail terminé Au revoir"); MIPC 22

Vous aimerez peut-être aussi