Cours - Programmation

145 documents à télécharger gratuitement

Cours de programmation partagés par des étudiants et des enseignants. Thèmes couverts : algorithmique, langage C, Java, Python, POO, structures de données.

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
Chapitre 6 : Les types structurés et les enregistrements

Le document traite des enregistrements dans les langages de programmation structurée, les comparant aux tableaux pour souligner leurs particularités. Il explique comment définir un type structuré et déclarer des variables enregistrement, avec des exemples syntaxiques inspirés des langages Pascal et C. Il détaille les manipulations possibles sur les enregistrements, comme l'accès aux champs individuels, l'utilisation d'imbrication pour représenter des dépendances fonctionnelles, et l’emploi de tableaux pour gérer des collections d’enregistrements. Enfin, il montre comment utiliser ces struct...

types structurés
enregistrements
syntaxiques Pascal et C
6p0
Introduction au cours de programmation WEB

This syllabus focuses on practical learning of web technologies, aiming to enable students to design, manage, or redesign dynamic websites. It introduces both the foundational concepts like HTML and CSS and advanced topics such as server-side programming with PHP and AJAX-based dynamic web applications. The methodology includes hands-on practice facilitated through directed coursework, covering topics like HTTP protocols, XML technologies, and security concerns. It highlights the importance of establishing a robust working environment for testing all discussed technologies.

Ramzi GUETARI
HTML
PHP
4p0
La Programmation en Assembleur du Microprocesseur 8086

This document introduces the instruction set of the 8086 microprocessor, categorizing them into data transfer, arithmetic, logical, and branch instructions. It explains advanced addressing modes, enabling manipulation of complex data structures such as matrices and arrays. Core operations include arithmetic and logical computations, addressing techniques, and the use of jumps, rotations, and conditional logic for effective program control. The document also highlights assembly-level methods for subprogram calls to optimize programming efficiency.

assembly programming
8086 microprocessor
instruction set
13p0
Cours 8

This course covers the hierarchy of numbers, introducing imperative programming concepts including assignment and stack representation using lists. It delves into various data structures and operations in Common Lisp, including destructive functions on lists and multiple value returns.

type
print
argument
29p0
Visual Media Processing Using MATLAB Beginner's Guide

This guide provides a range of techniques for enhancing and adding artistic effects to photographs, as well as editing and processing videos using MATLAB. Written by George Siogkas, it combines practical applications in visual media with programming expertise. The book is designed for beginners looking to develop skills in visual media processing.

image
video
will
326p0
Théorie des langages et Compilation – Chapitres 3 et 4

Ce document aborde la théorie des langages et de la compilation, en particulier la définition des grammaires, les langages générés par celles-ci et les formes normales de grammaires. Il inclut des exercices pratiques pour appliquer ces concepts à des langages spécifiques. Des exemples concrets de grammaires et de leur utilisation dans la génération de mots sont présentés.

langages
grammaire
pile
82p0
Les Interfaces d'Entrées/Sorties

Ce document traite des interfaces d'entrées/sorties qui permettent aux microprocesseurs de communiquer avec l'environnement extérieur. Il explique le fonctionnement des ports d'E/S et les méthodes d'adressage, soulignant les distinctions entre l'adressage cartographique et indépendant. Des exemples de lecture et d'écriture sur des ports d'E/S ainsi que l'utilisation de l'interface parallèle 8255 sont également présentés.

port
compteur
adresse
22p0
La PROGRAMMATION en ASSEMBLEUR du MICROPROCESSEUR 8086

Ce document aborde les bases de la programmation en assembleur pour le microprocesseur 8086, en expliquant les différents types d'instructions disponibles ainsi que les modes d'adressage. Il présente les instructions de transfert, arithmétiques, logiques et de branchement, ainsi que la syntaxe associée. Les concepts d'adressage simple et évolué sont également détaillés pour aider à la compréhension des manipulations de données.

microprocesseur
registre
architecture
35p0
Programmation de périphériques

This document provides an introduction to programming peripherals in embedded systems, focusing on General Purpose Input/Output (GPIO) features and configurations. It also covers external interrupt lines (EXTI) and their functionalities in microcontroller systems. Key aspects include various GPIO modes and the use of alternate functions.

input
gpio
gpiox
8p0
Diviser pour régner et Analyse des Algorithmes

Ce document traite des méthodes d'analyse des algorithmes, mettant en avant la technique du 'diviser pour régner'. Il explique les étapes nécessaires pour résoudre des problèmes complexes en les décomposant en sous-problèmes plus simples, et donne plusieurs exemples illustratifs. De plus, il aborde la complexité des algorithmes avec des analyses de cas pour optimiser les solutions.

csi3505
flocchini
paola
19p0
La programmation en assembleur du microprocesseur 8086

The document provides a comprehensive overview of programming the 8086 microprocessor using assembly language. It covers the instruction set, modes of addressing, data transfer, arithmetic and logical operations, and advanced functionalities like branching, procedure calls, and bit manipulations. A detailed discussion is provided on various addressing modes, showcasing operations such as direct, indexed, and based addressing, along with practical examples. Additionally, the text describes arithmetic, logical, and shift instructions, with emphasis on their applications in memory management a...

8086 microprocessor
MOV instruction
assembly language
35p0
Assembly Language Programming Guide: Data Declarations, Stack, and Procedures

This document serves as a comprehensive instructional guide for assembly language programming with a focus on data declarations, stack usage, and procedures. It provides structured explanations of segment declarations (data, stack, and code), variable initialization rules, and pseudo-instruction usage. Detailed examples for defining variables, using the stack, and writing procedures are included. Practical exercises are provided for implementing message display, keyboard input storage, and manipulation of tables in memory, enabling hands-on learning and debugging validation.

assembly language
DOS interrupts
stack operations
12p0
Programming Exercises in C for First-Year Computer Science Course

This document presents a series of C programming exercises tailored to first-year Computer Science students. The exercises focus on implementing repetitive structures, manipulating strings, and solving mathematical and text-processing problems. Key tasks include reimplementing loop-based programs with alternative structures, solving quadratic equations programmatically, and processing and transforming character-based input. The exercises encourage logical reasoning while developing proficiency in C, covering fundamental programming concepts and use cases.

C programming
for loop
while loop
2p0
Les fichiers textes - Cours atelier de programmation avancée

This document provides an advanced programming guide on handling text files in C. It covers techniques for input and output operations using functions like fprintf, fscanf, fputs, and fgets, illustrating their usage with examples. Detailed code snippets demonstrate how to create, fill, and display student records in both text and binary formats. Additionally, the document discusses edge cases, such as handling errors and end-of-file conditions, and contrasts different functions with examples.

fichiers binaires
fputs
fgets
5p0
Cours programmation en langage C : Fonctions, Tableaux et Matrices

This document provides a detailed course outline for programming in C, focusing on concepts such as functions, arrays, and matrices. It demonstrates how pointers can be used to manipulate memory locations, with particular examples including pointer dereferencing and passing by address. The document also covers implementation of functions for array and matrix manipulation, including examples for filling and displaying both structures. Furthermore, various practical examples are provided to explain memory addressing and function headers.

functions
pointers
arrays
6p0
Cours programmation en langage C - Fonctions, Tableaux et Matrices

The document is a first-year computer science course on C programming, focusing on pointers, one-dimensional arrays, and matrices. It covers basic concepts such as memory addressing, passing variables by reference, and manipulating data structures programmatically. Examples with detailed code snippets showcase how to implement functions for filling and displaying data arrays and matrices. Additionally, the document explains the representation and memory allocation of matrices, emphasizing efficient data access techniques.

pointers
memory addressing
C programming
6p0
Cours Programmation en Langage C: Fonctions, Tableaux et Matrices

This document is a first-year applied computing course material on programming in C, focusing on pointers, functions, arrays, and matrices. It explains various pointer concepts using code examples, including single, double, and triple pointers, and demonstrates their use in modifying memory values or processing arrays. Advanced C programming techniques, such as matrix manipulations with memory address arithmetic, are discussed with examples highlighting both direct and function-based implementations. The document concludes with examples of function prototypes for handling arrays and matrice...

pointers
printf
array and matrix manipulation
6p0
Cours Atelier de Programmation Avancée - Fichiers Binaires

This document delves into handling binary files in C programming, exploring various file operations such as reading, writing, and managing file pointers. It differentiates between binary and formatted data handling, emphasizing practical file manipulation techniques such as sequential and direct access. Examples provided demonstrate key principles, including student and integer data processing within binary files. Management of file states, including EOF detection and pointer movement via functions like fseek, is also discussed.

binary files
fread
fwrite
10p0
Cours sur les Piles et les Files

This document introduces two fundamental data structures: stacks (LIFO) and queues (FIFO). It details the definition, operations, and two modes of implementation (contiguous and linked) for each. For stacks, notable features include memory constraints of contiguous representation and flexibility of chained representation. Similarly for queues, both linear and circular contiguous implementations are compared with the linked version. Applications such as recursion elimination for stacks and event handling for queues emphasize their utility in computing. Comparative analysis highlights trade-o...

stack
queue
LIFO
9p0
Cours sur les Piles et les Files

This document is an educational resource from Ecole Supérieure de Technologie et d’Informatique on advanced data structures, specifically Stacks and Queues. It introduces and defines stacks and queues, explaining their principles and different methods of implementation: contiguous and chained representations. For stacks, it explores common operations like push, pop, and checking for empty or full states, along with advantages and memory constraints of stack types. Similarly, it covers queues, highlighting linear and circular representations with operational details, while comparing both con...

stacks
queues
LIFO
9p0
Cours sur les Piles et les Files

This document provides a comprehensive overview of advanced data structures, focusing on stacks (Last-In-First-Out) and queues (First-In-First-Out). It details their definitions, operations, and implementations using contiguous and linked representations. The document emphasizes the trade-offs between memory efficiency and implementation flexibility for both stacks and queues. Additionally, it explores practical applications, such as recursion elimination and event handling, and concludes with a programming exercise for comparing stack and queue contents.

Piles (stacks)
Files (queues)
Last-In-First-Out (LIFO)
9p0
Cours Algo 2: Les Pointeurs

The document explains the concept of pointers, a specialized type of variable that stores the address of another variable in computer memory. It covers direct and indirect addressing, pointer operations, and their application in working with arrays and strings. Additionally, arithmetic and comparison operations on pointers as well as their limitations are described comprehensively. Key distinctions between pointers and variable names, as well as pointers and array names, are elaborated to clarify their roles in memory management.

pointers
address of operator &
contents of operator *
5p0
Cours Algo 2: Les pointeurs

This document provides an in-depth understanding of pointers in programming, explaining direct and indirect addressing methods. It describes the unique characteristics of pointers, their memory usage, and their operations such as arithmetic, comparison, and assignments. The document highlights the difference between pointers and constants like variable names or array names. Additionally, it explains how pointers relate to arrays and strings and the constraints associated with pointer operations.

pointeur
adressage direct
adressage indirect
5p0

Autres ressources en programmation