0% ont trouvé ce document utile (0 vote)
2 vues55 pages

Importance de l'algorithmique en économie

Transféré par

momofnair
Copyright
© All Rights Reserved
Nous prenons très au sérieux les droits relatifs au contenu. Si vous pensez qu’il s’agit de votre contenu, signalez une atteinte au droit d’auteur ici.
Formats disponibles
Téléchargez aux formats PDF, TXT ou lisez en ligne sur Scribd
0% ont trouvé ce document utile (0 vote)
2 vues55 pages

Importance de l'algorithmique en économie

Transféré par

momofnair
Copyright
© All Rights Reserved
Nous prenons très au sérieux les droits relatifs au contenu. Si vous pensez qu’il s’agit de votre contenu, signalez une atteinte au droit d’auteur ici.
Formats disponibles
Téléchargez aux formats PDF, TXT ou lisez en ligne sur Scribd

2024-2025 S6-Gestion

Informatique de Gestion

Algorithmique

LES FONDAMENTAUX

Prof. Belattar Sara


Enseignante chercheuse à l'ENCG-Settat
[Link]@[Link]
Informatique de Gestion

L’informatique est la science du traitement automatique de l’information par l’ordinateur. Elle a pris source depuis
l’apparition des premiers calculateurs avant 1940, elle a montré son efficacité dans la gestion de stock,
personnel, dans l’intégration du son et image, aussi dans l’interconnexion des réseaux intra et internet
(Echanges des données), et dans la messagerie..

L'informatique de gestion est la discipline qui traite de l'application des technologies de l'information et de la
communication dans les entreprises et les institutions publiques. Elle a notamment pour objectif de mettre au
point de nouvelles solutions informatiques, de perfectionner les processus existants et de contribuer à leur
déploiement.

Elle joue un rôle essentiel dans la coordination entre les différents services des entreprises, comme le marketing,
les ventes, la production ou la logistique.

les outils de l’informatique de gestion Algorithmique et la programmation


Microsoft office (Excel, Acces,...)
Business Intelligence (BI)
Les systèmes d'information
L'intelligence artificielle
.....
Pourquoi la programmation est essentielle pour les
économistes aujourd'hui ?

L'économie moderne est de plus en plus influencée par les données et la technologie.

La programmation est un outil puissant pour exploiter ces opportunités.


Pourquoi la programmation est essentielle pour les
économistes aujourd'hui ?

Les données, le nouveau pétrole

Les données : une ressource clé pour les économistes

Les données sont partout : marchés financiers, comportements des consommateurs, indicateurs
économiques, etc.
Savoir manipuler, analyser et interpréter les données est une compétence indispensable.
La programmation permet de traiter de grands volumes de données efficacement.

Data
Pourquoi la programmation est essentielle pour les
économistes aujourd'hui ?

Automatisation des tâches

Automatisation et efficacité

La programmation permet d'automatiser des tâches répétitives (ex : collecte de données, calculs
économétriques).
Gain de temps et réduction des erreurs humaines.
Exemple : scripts Python pour analyser des séries temporelles ou générer des rapports.
Pourquoi la programmation est essentielle pour les
économistes aujourd'hui ?

Modélisation économique

Modélisation et simulation

Les modèles économiques complexes nécessitent des outils informatiques pour être résolus.
La programmation permet de créer des simulations (ex : impact des politiques économiques, prévisions
de marché).
Langages utiles : Python, R, MATLAB.
Pourquoi la programmation est essentielle pour les
économistes aujourd'hui ?

Analyse prédictive

L'analyse prédictive au service de l'économie

La programmation permet d'utiliser des techniques d'apprentissage automatique (machine learning)


pour prédire des tendances économiques.
Applications : prévisions de croissance, analyse des risques, comportement des marchés.
Exemple : utilisation de Python avec des bibliothèques comme Pandas, Scikit-learn.
Pourquoi la programmation est essentielle pour les
économistes aujourd'hui ?

Compétitivité sur le marché du travail

Une compétence recherchée

Les employeurs recherchent des économistes capables de combiner des connaissances économiques
avec des compétences techniques.
La programmation est un atout différenciant sur le marché du travail.
Secteurs concernés : banque, finance, consulting, organisations internationales, start-ups.
Pourquoi la programmation est essentielle pour les
économistes aujourd'hui ?
Pourquoi la programmation est essentielle pour les
économistes aujourd'hui ?

Langages recommandés pour les économistes : Python, R,.......

a une syntaxe simple

plus facile à apprendre


Python dispose d'une vaste collection de bibliothèques pour
l'analyse de données (Pandas, NumPy), la visualisation
(Matplotlib, Seaborn, Plotly), le machine learning (Scikit-learn,
TensorFlow), et bien plus encore.

Pour les économistes : Python est idéal


Introduction
« Un langage de programmation est une convention pour donner des ordres à un ordinateur. Ce n’est pas censé
être obscur, bizarre et plein de pièges subtils. Ca, ce sont les caractéristiques de la magie. » - Dave Small.

Qu’est-ce que l’algomachin ?


Avez-vous déjà ouvert un livre de recettes de cuisine ?
Avez-vous déjà suivi les instructions d'une recette de cuisine pour préparer un plat ?

Si oui, sans le savoir, vous avez déjà exécuté des algorithmes.

Algorithme
Exemple 1
Introduction

Exemple 2 : avez-vous déjà indiqué un chemin à un touriste égaré ?


Introduction
Exemple 3: Considérons une entreprise de vente en ligne qui souhaite optimiser ses prix pour maximiser ses
revenus. Voici un algorithme simple pour ajuster dynamiquement les prix en fonction de la demande :
Introduction
Pourquoi on doit apprendre l’algorithmique ?

Je veux informatiser ce problème et le rendre exploitable à travers mon ordinateur. Qu’est ce que je dois
faire ?
Introduction
Pourquoi on doit apprendre l’algorithmique ?

Résolution de problèmes : Les algorithmes sont des outils pour résoudre des problèmes. En comprenant comment
concevoir, analyser et mettre en œuvre des algorithmes, vous serez mieux équipé pour aborder des défis complexes et
développer des solutions efficaces.

Optimisation : L'algorithmique permet d'optimiser les processus. En concevant des algorithmes efficaces, on peut
minimiser le temps d'exécution, économiser des ressources et améliorer les performances d'un système.

Pensée logique : Travailler avec des algorithmes développe la pensée logique. Vous apprendrez à décomposer un
problème en étapes plus petites et à les résoudre séquentiellement, renforçant ainsi votre capacité à analyser et à
résoudre des problèmes de manière structurée

Programmation : La programmation informatique repose sur la compréhension de l'algorithmique. Écrire du code


nécessite la mise en œuvre d'algorithmes pour créer des solutions logicielles.
Introduction
Pourquoi on doit apprendre l’algorithmique ?

Efficacité : La connaissance des algorithmes permet de créer des solutions plus efficaces. Que ce soit dans le traitement
de données, la recherche d'informations ou d'autres domaines, des algorithmes bien conçus peuvent faire la différence
en termes de rapidité et d'utilisation efficace des ressources.

Adaptabilité : Comprendre l'algorithmique vous rend plus adaptable. Les mêmes concepts algorithmiques peuvent être
appliqués à divers domaines, des sciences de l'informatique à l'économie en passant par la biologie. Cette polyvalence
rend vos compétences transférables.

Innovation : Les innovations technologiques reposent souvent sur des avancées algorithmiques. Comprendre les
concepts algorithmiques vous donne la capacité de contribuer à des innovations et de créer des solutions novatrices.

Analyse de données : Avec la croissance exponentielle des données, la capacité à analyser et à traiter des ensembles de
données massifs est cruciale. L'algorithmique fournit des méthodes pour effectuer ces analyses de manière efficace.
Introduction

Un algorithme, c’est une suite d’instructions, qui une fois exécutée correctement, conduit à un résultat donné. Si
l’algorithme est juste, le résultat est le résultat voulu, et le touriste se retrouve là où il voulait aller. Si l’algorithme est
faux, le résultat est, disons, aléatoire.

Algorithme en informatique
Un algorithme est généralement indépendant du langage de programmation ou de la machine utilisée pour
l'implémenter. Il représente une solution abstraite et logique qui peut être adaptée à différentes plates-formes.

Pour résoudre un problème informatique on doit créer souvent un programme pour le résoudre.

les langages de programmation


Introduction

Informatisation d’un problème


Introduction

Définition :

C’est un pseudo-langage qui est conçu pour résoudre les problèmes et


applications sans aucune contrainte due aux langages de programmation et aux
spécificités de la machine. Ce pseudo-langage sera ensuite traduit et codé dans le
langage de programmation désiré.
Introduction
Définition
Un algorithme est un ensemble ordonné d'instructions qui décrit une méthode pour résoudre un problème ou
accomplir une tâche spécifique.

Il est souvent utilisé en informatique pour automatiser des tâches complexes.

C’est une suite d’instructions alignées les unes après les autres dans une certaine logique qui vont nous
permettre d’arriver à un résultat que l ’on souhaite atteindre

L’ ALGO n’est pas écrit en langage de programmation. C’est écrit dans un langage qui va être compréhensible par
n’importe quelle personne.

Quand on écrit un ALGO, on l’écrit en langage humain et ensuite on le traduit en langage de programmation
(langage machine).

Il faut toujours penser comme:


Développeur
Machine
Utilisateur
Introduction
Exemple d’algorithme

Début

Le matin je me réveille

S’il est est 07h00, je me lève

Sinon, je reste au lit

Fin

Règle n°1: Un ALGO doit être compris par n’importe quelle personne
Introduction
Exemple d’algorithme

ALGO Multiplication

Début

Saisir le NBR1

Saisir le NBR2

RES<--- NBR1 * NBR2

Fin
Introduction
Structure générale d’un algorithme
Introduction

Exercice : Calcul de la moyenne des notes

Objectif : Créer un algorithme qui prend en entrée les notes de plusieurs étudiants et
calcule la moyenne de ces notes.

1. Identifier les données du départ (entrées) et celle(s) qu’il faut obtenir (sorties);
2. Déterminer (variables ou constantes, type...);
3. Réfléchir pour déterminer les action nécessaires à l’obtention des résultats ;
Introduction
Solution :

Nom de l’algorithme : Calcul de la moyenne des notes

Entrée :
Nombre d'étudiants (n).
Les notes des étudiants (note1, note2, ..., noten).
Variables :
somme (pour stocker la somme totale des notes).
moyenne (pour stocker la moyenne finale).
Actions :

Calculer la moyenne en divisant somme par le nombre d'étudiants (n).


Afficher la moyenne calculée.

Sortie :
Moyenne des notes des étudiants.
Introduction

Exercice : Calcul la surface d’un cercle

1. Identifier les données du départ (entrées) et celle(s) qu’il faut obtenir (sorties);
2. Déterminer (variables ou constantes, type...);
3. Réfléchir pour déterminer les action nécessaires à l’obtention des résultats ;
Introduction
Solution :

Nom de l’algorithme : Calcul la surface d’un cercle

Entrée :
Le rayon du cercle (représenté par "r")..

Variables et constantes :
Variable : "r" (rayon), qui peut être un nombre réel positif.
Surface : réel (résultat)
Constante : π (pi), approximativement égal à 3.14.

Actions :
Obtenir le rayon ("r") de l'utilisateur.
Appliquer la formule de surface du cercle en utilisant la valeur du rayon fournie.

Sortie :
Surface ( Afficher le résultat )
Introduction

Exercice : Calcul de la somme des entiers pairs.

Objectif : Écrivez un programme qui calcule la somme des entiers pairs jusqu'à un
certain nombre entier donné par l'utilisateur.

1. Identifier les données du départ (entrées) et celle(s) qu’il faut obtenir (sorties);
2. Déterminer (variables ou constantes, type...);
3. Réfléchir pour déterminer les action nécessaires à l’obtention des résultats ;
Introduction
Solution :

Nom de l’algorithme : Calcul de la somme des entiers pairs

Entrée :
Un nombre entier fourni par l'utilisateur, noté "n"..

Variables :
Variable : "n" (nombre entier fourni par l'utilisateur).
Variable : "somme" (résultat, initialement à zéro).

Actions :
L'utilisateur doit entrer un nombre entier "n".
Initialiser la variable "somme" à zéro.
Utiliser une boucle pour itérer de 2 jusqu'à "n" avec un pas de 2 (pour inclure uniquement les entiers pairs).
Ajouter chaque entier pair à la variable "somme" pendant l'itération.

Sortie :
Somme des pairs ( Afficher le résultat )
Objectifs pédagogiques 1/2

L’ALGO vous permet de comprendre la logique de l’ordinateur pour développer en suite un programme en
informatique quelque soit le langage de programmation.

Dans ce cours abordons toutes les notions de base qui sont fondamentales en algorithmique:

• La lecture,
• L’affichage
• Les variables
• Les constantes
• Les structures

Pour pouvoir aligner les instructions les unes après les autres. Nous mettons en pratique toutes ces notions de base
dans des exemples et exercices
Objectifs pédagogiques 2/2

• Maîtriser les notions de base de l'algorithme, ainsi que la lecture, l'affichage, les variables, les constantes et les
structures.

• Créer des schémas d'instructions et d'opérations qui peuvent être automatisés et systématisés

• Apprendre à programmer en Python


Évaluation des connaissances

- Note du contrôle continu 50%

1. Assiduité

2. Participation

3. Devoir surveillé

4. TP et exercices

-Note de l’examen final 50%


Sommaire

1. Structure d'un algorithme

2. Les variables

3 Les constantes

4. Les structures alternatives et répétitives

5. Exercices d’applications
Structure générale d’un algorithme
Structure générale d’un algorithme

Démarche à suivre pour résoudre un problème donné:

Identifier les données du départ (entrées) et celle(s) qu’il faut obtenir (sorties);

Structurer les données (variables ou constantes, type...);

Réfléchir pour déterminer les action nécessaires à l’obtention des résultats ;

Présenter les résultats.


Déclaration des Objets

Objet :

Définition :

Un objet est toute partie identifiable de l’information au cours d’un traitement. Il est caractérisé par son
nom, son type et sa valeur.

L’ensemble des objets manipulés par un algorithme est appelé: environnement de cet algorithme.

Remarque :

Les objets manipulés par un ordinateur sont : Les Constantes et Les Variables
Déclaration des Objets : les constantes

Définition :

Les Constantes désignent des références à des valeurs invariantes dans le programme.

Syntaxe de la déclaration :

Exemple :
Constante Pi = 3.14
Déclaration des Objets : Les variables

Définition :

Ce sont des références (adresses mémoires) où vont être stockées des valeurs variables. Les différentes valeurs
d’une référence vont appartenir au type de données auquel appartient la référence.

Remarque:

1°- Le nom d’une variable => suite de caractères qui permet d’identifier la variable d’une manière unique
dans un algorithme.

2°- Il existe différents types de variables.


Les variables : Type Entier

Définition :

C’est l’ensemble des nombres entiers positifs ou négatifs (c'est-à-dire des nombres sans partie fractionnaire).

Par exemple : 1, -5, 0 sont tous des nombres entiers. En revanche, 3.14, -2.5, et 1/2 ne sont pas des nombres
entiers car ils ont une partie fractionnaire.

Syntaxe de la déclaration :
Les variables : Type Entier

Définition :

ALGORITHME SommeEntiers

// Déclaration des variables


DÉCLARER nombre1, nombre2, somme : ENTIER
// Demander à l'utilisateur d'entrer deux nombres entiers

Ecrire "Entrez le premier nombre entier : "


LIRE nombre1
Ecrire "Entrez le deuxième nombre entier : "
LIRE nombre2

// Calcul de la somme des deux nombres


somme ← nombre1 + nombre2

// Afficher le résultat

Ecrire ("La somme de ", nombre1, " et ", nombre2, " est : ", somme)
FIN ALGORITHME
Les variables : Type Réel

Définition :

le terme "type réel" fait référence à un type de données qui représente les nombres réels. Les nombres réels
comprennent à la fois les nombres entiers et les nombres décimaux (ceux avec une partie fractionnaire).

Par exemple : réel = 3.14, réel= 8.7878....

Syntaxe de la déclaration :

Variable note, somme, moyenne : Réel


Les variables : Type Chaîne de caractères

Définition :

C’est une suite de caractères, c’est à dire des combinaisons de caractères (lettres, chiffres, symboles..).

Par exemple : chaineCaracteres ← "Bonjour, monde !"

Syntaxe de la déclaration :

Nom <- ENCG


Catégories : enseignement supérieur
Les variables : Type Booléen

Définition :

Il s’agit des objets qui ne peuvent prendre que deux valeurs vrai ou faux.

Syntaxe de la déclaration :
Les variables : Type Booléen

ALGORITHME ComparaisonNombres

// Déclaration des variables


DÉCLARER nombre1, nombre2 : ENTIER
DÉCLARER estSuperieur : BOOLEAN

// Demander à l'utilisateur d'entrer deux nombres entiers


Ecrire "Entrez le premier nombre entier : "
LIRE nombre1

Ecrire "Entrez le deuxième nombre entier : "


LIRE nombre2

// Comparaison des nombres


SI nombre1 > nombre2 ALORS
estSuperieur ← VRAI
SINON
estSuperieur ← FAUX
FIN SI
Fin
Autres objets à déclarer

Définition :

Objets : Type Tableau

Un tableau permet de représenter un ensemble de valeurs ayant des propriétés communes et appartenant
toutes au même type. Ces variables sont identifiées par un même nom mais un numéro de repère (indice) pour
chacun.
Les variables vs les constantes

Variables Constantes

Réservation de l’emplacement
Les variables vs les constantes

Gestion de la mémoire : En spécifiant le type de variable, vous indiquez à l'ordinateur


combien d'espace mémoire doit être réservé pour stocker la valeur de cette variable.
Cela permet une utilisation plus précise et optimale de la mémoire.
Manipulation des Objets

Définition :

On appelle instruction toute commande élémentaire que l’on doit appliquer sur des objets pour avoir des
sorties bien définies.

Définition :

Une action est un événement qui change l’état d’un objet d’un état initial donné à un état final désiré. Une
action a une durée d’exécution finie et un effet propre et bien défini. Chaque action porte sur des objets sur
lesquels elle s’exécute :
La Structure de la partie manipulation

Définition :

La partie manipulation doit commencer par le mot DEBUT et se termine par le mot FIN :
Les instructions d’un Algorithme

Définition :

La partie manipulation utilise les différents objets déclarés dans la partie déclaration et leur applique des
opérations afin de retourner le(s) résultat(s) attendu(s) par le programmeur. Pour ce fait, il y a différentes
actions, dites instructions, à savoir :
Instructions de dialogue Homme-Machine

L’affichage des informations:

Pour faire comprendre qu’il faut afficher des informations à l’écran, on utilise l’instruction écrire qui obéit à la syntaxe
suivante :
Instructions de dialogue Homme-Machine

La Saisie des informations:

Pour indiquer dans un algorithme que telle donnée doit être lue par le système, on utilise l’instruction lire qui
obéit à la syntaxe suivante :
Instruction d’affectation

Définition:

C’est le stockage d’une valeur à un endroit spécifique (variable). Pour affecter une valeur à une variable, on écrit :
Exercice:
Solution

Vous aimerez peut-être aussi