Programmation

782 documents à télécharger gratuitement

Cours, examens, TD, TP et exercices de programmation. Thèmes couverts : algorithmique, langage C, Java, Python, POO, structures de données.

Chapitre 6 : Les Types Structurés et les Enregistrements

This document introduces structured data types called 'enregistrements,' which allow elements of varying types to represent an entity. It explains how to define and use these structures in programming algorithms, including syntax based on methodologies like Pascal and C. Practical examples include declaring records, accessing and updating fields, using nested structures, and processing arrays of records. Use cases include managing entities such as people, products, and providers, demonstrating imbricated structured types for functional dependencies.

structured data types
Pascal/C-style syntax
Merise methodology
6p0
Travaux Dirigés N°1

This document contains programming-focused exercises related to object-oriented design and practical implementations in C#. The exercises test understanding of class structures, attributes, methods, and inheritance principles through various scenarios. Examples include analyzing class behaviors, implementing symmetry and coordinate systems in classes, and building and sorting pairs through bubble sort algorithms. It emphasizes the practical use of static methods, constructors, and object diagram analysis.

object-oriented programming
C# language
class constructors
4p0
Chapitre 1: LES POINTEURS

This document introduces the role of pointers in the C programming language. It explains their importance for memory addressing, parameter passing, and compact programming solutions. Additionally, it discusses the differences between direct and indirect addressing, basic pointer operations, and their applications with arrays and memory allocation. The text also emphasizes the pitfalls of pointer misuse and provides examples to illustrate their correct implementation.

pointers
addressing modes
memory allocation
33p0
La programmation des API

This document explores methodologies for programming automated systems using GRAFCET and ladder diagram conversion techniques. It also delves into initialization sequences, logical operations (ET, OU, and NEGATION), and input/output addressing in API programming. Examples of implementation across programming languages like LADER and LOG are provided, along with symbolic representations to design logical circuits.

GRAFCET
Ladder Diagram
Logical Operations
13p0
Chapitre 1 : Concepts de base et principes fondamentaux de la Programmation Orientée Objet

Ce document introduit le passage de la programmation classique la programmation orient e objet, en mettant l'accent sur des concepts cl s tels que l'encapsulation, l'h ritage, et le polymorphisme. La Programmation Orient e Objet est d finie comme une m thode ax e sur la manipulation d'objets, combinant donn es et comportements, favorisant modularit et r utilisabilit gr ce des concepts comme les classes et les m thodologies li es. Les id es d'h ritage et de polymorphisme permettent une hi rarchisation puissante et adapt e des relations entre objets. La deuxi me partie du document explo...

Programmation Orientée Objet
Encapsulation
Héritage
15p0
Projet de Fin d’Etudes - Conception et réalisation d’une application de vente de billets d’avion

This document presents a final project focused on the design and implementation of a ticket sales application for TUNISAIR, developed in collaboration with Aviation IT Services Africa. The project addresses the issue of delayed invoice issuance by proposing a solution for instant billing. The document outlines the objectives, solutions, and methodologies employed in the project.

number
slide
application
27p0
Projet de Fin d’Etudes - Conception et réalisation d’une application de vente de billets d’avion

This document discusses the design and implementation of an application for selling airline tickets, specifically for the Tunisian airline TUNISAIR. It covers the problem of delayed billing operations and presents a proposed solution to make the process instant and efficient. The application aims to improve the billing experience while ensuring integration with existing systems.

number
slide
application
27p0
Conception et Réalisation d’une Plate-forme Web de Bourse de Fret

This document presents the development of a web platform aimed at fostering efficient freight logistics in urban areas. It outlines the project's objectives, functionalities, and conceptual design. Additionally, it discusses the implications for stakeholders and delivers insights into operational requirements.

number
picture2
slide
47p0
Les types structurés et les enregistrements

Ce document aborde les types structurés et les enregistrements, en les distinguant des tableaux. Il décrit comment déclarer et manipuler des enregistrements avec des exemples en Pascal et C.

type
quot
enregistrement
8p0
Les structures (enregistrements) en C++ et algorithmique

This document provides an introduction to the concept of structures in programming, focusing on their definition, syntax, and practical implementation in C++ and algorithmic contexts. It explains how structures group different types of data, contrasting them with arrays, and provides examples of syntax for declaring structures. Practical applications, such as passing structures as function parameters and modular programming, are demonstrated. A comprehensive exercise on managing and processing rugby tournament player data solidifies the understanding of structures.

structures
typedef
functions
5p0
Diagramme de séquence

Ce document traite des diagrammes de séquence dans le contexte des méthodologies orientées objets pour la conception de systèmes d'information. Il présente les concepts de base, les éléments syntaxiques et les différentes sortes de messages nécessaires à la modélisation des interactions entre objets et acteurs dans un système. Enfin, il souligne l'importance de ces diagrammes pour compléter la description des cas d'utilisation.

diagramme
quence
2010
43p0
Introduction to JavaScript

This document provides a foundational understanding of JavaScript, covering topics such as variable declaration, functions, data types, operators, and control structures. It distinguishes JavaScript from Java, explaining their differences in compilation and usage for web development. The notes describe how to integrate JavaScript code into HTML using script tags and external files. Additionally, it explores object creation, array manipulation, the use of timers, and dialog boxes for interactivity.

JavaScript
Brendan Eich
Mozilla Foundation
Institut Supérieur des Études Technologiques13p0
Les Piles & Les Files

This document explores the concepts of stacks ('piles') and queues ('files') as fundamental data structures in computer science. It details their manipulation primitives and implementations via contiguous arrays and linked lists. Additionally, the document explains dynamic and recursive structures, abstraction concepts for data types, and showcases an application in color spreading in images using stacks. Finally, it emphasizes practical methodologies for data operations, error management, and memory allocation strategies relevant to these structures.

stacks
queues
dynamic structures
FST22p0
Programmation Web 2 - TP1 : Rappel sur les cadres

This document is a practical lab assignment for creating a small website by utilizing different web techniques. It is divided into three parts, starting with the use of framesets, followed by <div> tags and stylesheets, and finally leveraging features from HTML5 and CSS3. The assignment includes creating a multi-page website with specific layout requirements, such as individual pages for header (entete.html), menu (menu.html), content (contenu.html), and footer (footer.html), which are combined in a main index.html page using framesets for layout definition. Detailed visual and structural r...

Frameset
HTML5
CSS3
Institut Supérieur des Études Technologiques3p0
Activité 3.1 : Edition de liens et création des bibliothèques

This document details a series of programming tasks aimed at teaching the creation and utilization of static and shared libraries in C. It includes writing C programs (e.g., defining max and min functions), handling compiler errors, creating object files, and transforming object files into static and shared libraries. The process also involves linking and compiling using these libraries in additional programs. Finally, it explores comparing executable sizes and evaluating library indices and symbol tables.

C programming
static library
shared library
2p0
Activité GDB : Déboguer un programme avec GDB

The document introduces debugging a C program using GDB, focusing on identifying and resolving a segmentation fault caused by incorrect pointer handling. It outlines the steps to compile and run the program, demonstrates using GDB commands to diagnose issues, and emphasizes debugging techniques such as examining call stacks and stepping through code execution. The methodology reveals a problem linked to dereferencing a null pointer and teaches targeted debugging to trace variable states and program flow.

segmentation fault
gcc compilation options
GDB debugger
2p0
Makefile Analysis and Commands

The document explores the creation and interpretation of a Makefile for a C program with specific file dependencies. It specifies the inclusion of headers and library files, detailing their interdependencies. The second part discusses the command to execute the Makefile and the way to redefine macros via command line. Additionally, it describes the roles of specific Makefile variables ($@, $<, $^) and highlights the distinction between the 'clean' and 'mrproper' commands for file management within a Makefile.

Makefile
C programming
command line macros
1p0
TP4 - IPC- Moniteur, Signaux et Pipe

This document outlines a lab exercise focused on inter-process communication and synchronization using monitors. It includes various exercises that implement solutions to problems such as readers-writers and philosophers. The aim is to demonstrate the application of monitors and IPC in managing resource access among multiple processes.

processus
fils
signal
7p0
Systèmes d’exploitation & Programmation Concurrente II

This document includes exercises on inter-process synchronization and the classic readers/writers problem. A solution for the dining philosophers problem is also provided using mutex and conditional variables. The exercises require implementing process execution orders using semaphores and filling out Gantt diagrams.

processus
mutex
pthread
6p0
TP 2 - Synchronisation de Threads

This document outlines a lab exercise focused on multi-threading in the context of managing students in a classroom setting. It discusses the implementation of an algorithm for synchronizing multiple student threads with a teacher thread. The task is to complete a provided function related to student thread behavior.

thread
threads
etudiants
8p0
Systèmes d’exploitation & Programmation Concurrente II2

This document describes a lab exercise on multithreaded programming with synchronization techniques. It includes two main exercises: modeling a teacher-student interaction in a computer lab and managing a fictitious bank account with deposits and withdrawals by synchronized threads. The goal is to complete the student thread implementation and ensure proper synchronization in a banking simulation.

thread
etudiants
threads
6p0
Architecture des Ordinateurs

The document introduces the foundational elements of computer architecture and the basics of programming in assembly language. It covers topics such as the microprocessor's structure and operation, memory organization and manipulation, peripherals interaction, and communication buses. It also provides practical insights into assembly programming using the DEBUG tool and explains how low-level instructions are executed within microprocessors, focusing on the 8086 assembly language and its instruction set.

computer architecture
8086 assembly language
Von Neumann architecture
60p0
Chapitre 3 : Les pointeurs

This document explains fundamental concepts of pointers in the C programming language, including memory addresses, pointer declaration, and manipulation. It demonstrates how to manage data via pointers in memory and the use of arithmetic and dynamic memory allocation methods like `malloc`, `calloc`, and `free`. Several examples explore pointer operations, such as accessing array elements, dereferencing, and connecting pointers with dynamic or multidimensional array structures, ensuring flexibility and efficiency in memory management.

memory addresses
malloc/calloc/free
pointer arithmetic
13p0
Cours 5 : fonctions, procédures, passage des paramètres

This document introduces the concepts of functions, procedures, and parameter passing in programming. It explains the differences between functions, which return values, and procedures, which do not. Key types of parameter passing—by value and by reference—are outlined, including examples showcasing their implications, such as modifying variable contents. Finally, the selection sort algorithm is implemented using functions and procedures, with comparisons to its C++ version for practical insight.

functions
procedures
parameter passing
8p0

Autres ressources en programmation