Contenus
Objectif du Cours
L'objectif de ce cours est d'enseigner aux étudiants du département d'Économie les concepts fondamentaux de la programmation et de les aider à acquérir des compétences en pensée informatique et en traitement de données adaptées aux exigences de l'ère numérique. Tout en développant leurs compétences en pensée informatique à travers des algorithmes et des organigrammes, les étudiants auront l'opportunité de faire l'expérience du processus de développement logiciel avec le langage de programmation Python. En plus des structures de données fondamentales telles que les types de données, les listes, les n-uplets (tuples), les ensembles et les dictionnaires, leurs capacités de résolution de problèmes seront renforcées grâce aux structures de décision, aux boucles et aux fonctions.
Contenu du Cours
Introduction à la programmation et concepts fondamentaux
*Pensée informatique
*Qu'est-ce qu'un algorithme et comment le concevoir ?
*Organigrammes (logigrammes)
*Processus de développement logiciel
*Informations générales sur les langages de programmation
Introduction au langage de programmation Python
*Qu'est-ce que Python ?
*Concepts de compilateur et d'interprète
*Utilisation et installation d'un IDE
*Présentation de l'interface Python
Types de données et structures fondamentales
*Données numériques : Entiers (Integers), Flottants (Floats)
*Données textuelles : Chaînes de caractères (Strings)
*Données logiques : Booléens (Booleans)
*Définition et utilisation des variables
*Opérateurs : mathématiques, de comparaison, logiques
Structures de décision, boucles et gestion des erreurs
*Structures If, else, elif
*Structures de décision imbriquées
*Boucles While et for
*Utilisation de break et continue dans les boucles
Fonctions Range et enumerate
*Types d'erreurs
*Blocs de gestion des erreurs (Try-Except)
*Fonctions
*Fonctions avec et sans paramètres
*Instruction Return
*Expressions Lambda
*Fonctions récursives
*Structures de données
Listes (list)
N-uplets / Tuples (tuple)
Ensembles (set)
Dictionnaires (dictionary)
Bibliothèques standards de Python
*Module Math
*Module Random
*Modules Datetime et Time
Opérations sur les fichiers
*Création, écriture et lecture de fichiers
Fonctions de mise à jour et de contrôle des fichiers
Acquis d'Apprentissage du Cours
*Capable de modéliser le processus de résolution de problèmes en utilisant des algorithmes de base et des organigrammes.
*Capable de comprendre les processus de développement logiciel en développant des compétences en pensée informatique.
*Capable d'écrire des programmes simples en utilisant la syntaxe et les structures de base du langage de programmation Python.
*Capable d'effectuer des opérations à l'aide de variables, de types de données et d'opérateurs fondamentaux.
*Capable de contrôler le flux d'un programme grâce aux structures de décision et aux boucles.
*Capable d'effectuer des opérations de stockage et de traitement de données à l'aide de structures de données telles que les listes, les n-uplets (tuples), les ensembles et les dictionnaires.
*Capable de développer du code modulaire et lisible grâce aux fonctions.
*Capable de réaliser des opérations sur les fichiers pour lire des données à partir de sources externes ou enregistrer des données.
*Capable d'effectuer diverses opérations en utilisant les bibliothèques standards de Python (math, random, datetime, etc.).
*Capable d'appliquer ses connaissances en programmation à des problèmes basés sur des données dans le domaine de l'économie.
Méthodes d'Enseignement
Enseignement magistral : Utilisé pour enseigner les concepts fondamentaux, les algorithmes et les structures de programmation Python.
Démonstration : Permet de mettre en pratique les sujets abordés grâce à des exemples d'applications réalisés en cours.
Résolution de problèmes et travaux pratiques : Le développement d'algorithmes et la pratique du codage Python sont effectués à travers des exemples orientés vers l'économie.
Méthode des questions-réponses : Utilisée afin d'encourager la participation active des étudiants et de consolider la compréhension des sujets.
Travaux pratiques en laboratoire : Une formation pratique est dispensée dans un environnement informatique où les programmes Python sont écrits, exécutés et les données sont analysées.
Retour d'information (Feedback) : Des évaluations et des retours d'information sont fournis après la réalisation des activités de laboratoire.
Ressources
Les supports de cours de chaque semaine seront déposés sur la page Moodle du cours sous la semaine correspondante.
Les ressources suivantes pourront être utilisées comme supports complémentaires (optionnels) aux ressources principales du cours:
Yıldız, B. Python Projeleri ve Popüler Kütüphaneler (3. Baskı)
Tungut, H. B. Algoritma ve Programlama Mantığı (23. Baskı)
Taşçı, V. Python Eğitim Kitabı (4. Baskı)
Kalb, I. Learn to Program with Python 3.
Sweigart, Al. The Big Book of Small Python Projects: 81 Easy Practice Programs
Matthes, Eric. Python Crash Course, 3rd Edition: A Hands-On, Project-Based Introduction to Programming.
Tuckfield, Bradford. Dive into Algorithms: A Pythonic Adventure for the Intrepid Beginner.
Intitulés des Sujets
Système d'évalution
Evalution de la Compétence
Tableau de la Charge de Travail