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.
The document discusses the implementation of data structures and simulations using Java programming. The first exercise focuses on developing a generic priority queue system (class FilePrio) that manages information based on given priority levels, incorporating methods to add, fetch, and query information. The second exercise extends the concept to simulate traffic at a four-way intersection (class Carrefour) using a priority system for vehicles, with ambulances prioritized over cars and each type governed by specific queues. These implementations serve as demonstrations of object-oriented...
The document introduces the concept of priority queues and their implementation in Java via the 'FilePrio' class, which supports generic storage and three primary methods: entering, retrieving, and consulting information based on priority. A secondary problem simulates traffic management at a four-street intersection using the 'Carrefour' class, prioritizing ambulances over cars and ordering cars based on defined street hierarchies. Both tasks demonstrate the utilization of priority queues to handle real-world scenarios of data prioritization and resource management effectively.
This research explores the application of fuzzy logic to enhance decision-making algorithms in Handover processes within mobile WiMAX networks. Fuzzy inference systems, including Mamdani and Sugeno types, are utilized to navigate uncertainty in system modeling. A novel adaptive multi-criteria algorithm integrates user preferences and radio signal quality indicators to optimize Handover by evaluating parameters like signal strength, QoS, and traffic types. Further, it incorporates advanced Handover protocols (Hard and Soft at level 2; CMIP, PMIP, and MSCTP at level 3) to address mobility cha...
This project involves the development of an inventory management program for a company selling computer articles. Students are expected to define the program's functionalities and present it during a technical pseudo-defense at the end of the semester. The program should enable various functionalities, such as adding clients, products, sales, and generating statistics.
This document presents exercises focused on Object-Oriented Programming concepts in Java, specifically classes and objects. It includes the implementation of a 'Point' class, a 'Personne' class, and a 'Date' class, with detailed methods and constructors. The exercises are designed for second-year students and aim to solidify their understanding of object instantiation and data representation.
The document explores the foundational principles of programming with an emphasis on parallel programming paradigms. It details implicit and explicit approaches to parallelism, highlighting their benefits and limitations. Key concepts such as data, task, and stream parallelism are analyzed, alongside the importance of granularity and degree of parallelism for performance optimization. Paradigms, models like PRAM and message-passing, as well as performance evaluation metrics such as speedup and efficiency, are also discussed in-depth.
This document delves into the foundations of programming with a focus on parallel processing. It introduces different paradigms of parallel programming (implicit and explicit approaches), explaining their respective advantages and limitations. Central concepts such as data, task, and pipeline parallelism are explored, alongside factors like grain size and degree of parallelism's impact on execution efficiency. Methodologies for evaluating the performance of parallel algorithms, such as speedup, efficiency, and super-linear acceleration, are analyzed to better optimize parallel applications.
The document focuses on the foundations of programming and parallelism. It discusses different programming paradigms and evaluates performance aspects. It highlights the differences between implicit and explicit parallel programming approaches and their implications.
This document outlines an exam for students at the Ecole Nationale des Sciences de l’Informatique covering topics in operating systems and concurrent programming. It includes various exercises on scheduling algorithms, process management, and synchronization techniques. Clarity, precision, and conciseness in answers are emphasized.
This document contains an exam issued by the Ecole Nationale des Sciences de l’Informatique for the 2018/2019 academic year focused on operating systems and concurrent programming. It includes various exercises covering process creation, concurrency issues, and synchronization techniques, encouraging clear and concise responses. The exam aims to assess students' understanding of key concepts in concurrent processing and synchronization mechanisms.
This document covers the introduction and usage of Streams in Java programming, emphasizing functional programming concepts. It outlines the features of Streams, how they differ from collections, and how to create and manipulate them. The material is designed for students learning object-oriented programming.
This document introduces the concept of Lambda Expressions in Java, which are considered a major novelty in Java 8. It covers the syntax, functional interfaces, and various use cases of Lambda Expressions. The material is designed for a Java programming course for 2019-2020.
This document covers the principles of Object-Oriented Programming in Java, particularly focusing on interfaces in Java 8. It addresses key concepts such as default methods, functional interfaces, and their significance in API design. Additionally, it discusses the most commonly used functional interfaces provided by JDK 8.
Ce document présente des méthodes numériques pour trouver les zéros d'une fonction, en mettant l'accent sur les méthodes de recoupement par intervalles, de dichotomie et de regula falsi. Il fournit des exercices pratiques pour mettre en œuvre ces méthodes à l'aide de Python. L'auteur aborde également la difficulté de résoudre certaines équations polynomiales algébriquement.
This document provides a comprehensive overview of common MIPS instructions, including their formats, operation codes, and meanings. It explains instruction handling, operational symbols, and the use of registers in MIPS. Additionally, it highlights specific functionalities for various MIPS assembly instructions.
This document provides an overview of the 32 registers in the MIPS architecture. It details the names, numbers, and usage of each register, especially in the context of function calls. Additional notes on which registers should be preserved or are reserved during operations are also included.
This document outlines a practical programming exercise focused on Object-Oriented Programming in Java for second-year students. It includes five exercises requiring students to manipulate arrays, create classes, and process strings. The aim is to master fundamental programming concepts.
Ce document d taille le TP2 du cours de Programmation Orient e Objet pour les tudiants de 2 me ann e TSI, ECOM, et LFIG. Il comprend plusieurs exercices visant ma triser la manipulation des types primitifs et des structures de contr les en Java. Les tudiants devront crire et ex cuter des programmes pour r aliser diverses t ches li es la programmation.
Cette documentation présente un TP sur la programmation orientée objet en Java. Les étudiants doivent écrire des programmes en C et leur traduction en Java. Les exercices incluent le calcul de moyennes, l'analyse d'instructions et le tri d'entiers.
This document is a lab assignment for second-year TSI, ECOM, and LFIG students focusing on Object-Oriented Programming in Java. It includes exercises for calculating averages in C, translating programs to Java, analyzing program outputs, and sorting integers. The document provides detailed code examples and expected results for verification.
This document contains exercises designed to translate C programming constructs into MIPS assembly language instructions. It includes tasks for conditional statements, loops, and array manipulation, along with recursive function design. The exercises also cover the conversion of data into separate categories based on conditions.
This document discusses the foundations of object-oriented programming (OOP), emphasizing methodologies for managing complexity, encouraging reuse, and ensuring maintenance of software. It highlights OOP principles such as abstraction, encapsulation, modularity, and the use of abstract data types. Practical examples are used to demonstrate key concepts, including the impacts of software crises, reuse benefits, and modular design. Lastly, the document explores the importance of maintaining clear interfaces and implementations to ensure scalability and efficient development.
This document serves as a practical work introduction to the Python programming language for Master's students. It covers fundamental programming concepts including data types, control structures, and functions. The content is structured to facilitate understanding through examples and exercises.
This document outlines an exam focused on object-oriented design and Java programming. Students are required to complete specific classes related to a hospital management application. The exam is structured into numbered sections, guiding students on what code to add without rewriting existing lines.















