Cours - Programmation
134 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.
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.
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.
This course focuses on functional application functions, association lists, and their manipulation in Common Lisp. It covers fundamental functions like assoc and various parameters for defining functions. Additional topics include comparisons, equality checks, and error handling macros.
This document covers the fundamentals of symbols in Common Lisp, including their definitions, uses, and operations. It explains how to define variables and the difference between 'defparameter' and 'defvar.' It also discusses the implications of expressions and the concept of side effects in programming.
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.
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.
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.
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.
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...
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.
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.
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.
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.
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.
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...
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.
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.
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.
The document provides a comprehensive explanation of pointers in computer programming, covering both direct and indirect addressing techniques to access variables in memory. Core concepts such as pointer definitions, basic operators (& and *), and pointer arithmetic (addition, subtraction, and comparison) are detailed. Special functionalities, such as handling pointers in arrays and strings, are described, emphasizing pointer versatility and constraints. The material highlights differences between variables, pointers, and constants, emphasizing specificity in type compatibility and operations.
This document explains the handling of character strings in the C programming language, treating them as one-dimensional character arrays. Key concepts include memory allocation, initialization, and pointers, as well as differences between arrays and pointers for string manipulation. Examples of proper and improper string declarations are provided, along with demonstrations of character precedence and lexicographical ordering. Additionally, the document discusses libraries and functions designed for string processing, such as those in <stdio.h>, <string.h>, <stdlib.h>, and <ctype.h>.
This document covers the fundamentals of working with strings in the C programming language. It delves into concepts such as string declaration, memory allocation, initialization, and manipulation using pointers. Key examples illustrate correct and incorrect initializations and the nuances between arrays and pointers in handling strings. Additionally, the document explains built-in functions for string operations and key concepts like lexicographical precedence and character conversion.
This document provides a comprehensive overview of handling strings in the C programming language. It covers the declaration, initialization, and memory allocation of character arrays, including the use of escape sequences and nuances such as null-terminated strings. Furthermore, it explores pointers in relation to strings, including their initialization and usage, along with advanced topics such as lexicographical precedence, string conversions, and tests. The document also discusses standard library functions and formatting techniques for input/output operations with strings.
The document explains modular programming in C with the use of functions for structuring code. It highlights the advantages of modularity, including readability, reusability, and error reduction, and provides detailed examples such as calculating factorials, swapping variables, and building hierarchical structures. Additionally, it discusses concepts like local/global variables, function declaration, and parameter handling, emphasizing the difference between value and reference parameter passing.
This document explores the concept of modularity in programming using C functions, covering predefined functions and the structuring of programs into reusable modules to enhance readability and efficiency. Examples are provided, demonstrating key concepts such as variable scope, global versus local variables, and function declaration, definition, and invocation. Particular attention is given to functionality like loops, conditional blocks, parameter handling, and memory optimization. Practical coding examples such as calculating factorials, finding maximum values, calculating averages, and...



















