Tableaux (introduction) et types de base
|
|
- Gautier Valentin Lebeau
- il y a 2 ans
- Total affichages :
Transcription
1 Tableaux (introduction) et types de base A. Motivation B. Les tableaux C. Construction des tableaux D. Utilisation des tableaux E. Retour sur les fonctions récursives et les tests F. Types de base et représentation des données Les entiers : types int, long Les réels : types float, double Les caractères : type char Les chaînes de caractères : type string Les booléens : type bool
2 Résumé des épisodes précédents... Pour le moment nous avons vu les instructions suivantes : Lecture : cin >> variable ; Écriture : cout << expression ; Affectation : variable = expression Instruction conditionnelle : if Instructions itératives : while, do... while, for Fonctions
3 Résumé des épisodes précédents... Pour le moment nous avons vu les instructions suivantes : Lecture : cin >> variable ; Écriture : cout << expression ; Affectation : variable = expression Instruction conditionnelle : if Instructions itératives : while, do... while, for Fonctions Pourquoi aller plus loin?
4 Résumé des épisodes précédents... Pour le moment nous avons vu les instructions suivantes : Lecture : cin >> variable ; Écriture : cout << expression ; Affectation : variable = expression Instruction conditionnelle : if Instructions itératives : while, do... while, for Fonctions Pourquoi aller plus loin? Passage à l échelle!
5 Résumé des épisodes précédents... Pour le moment nous avons vu les instructions suivantes : Lecture : cin >> variable ; Écriture : cout << expression ; Affectation : variable = expression Instruction conditionnelle : if Instructions itératives : while, do... while, for Fonctions Pourquoi aller plus loin? Passage à l échelle! Manipuler de grosses quantités de données
6 A. Motivation Exemple (Fil conducteur) Implantation d un annuaire
7 B. Les tableaux À retenir Un tableau est une valeur composite formée de plusieurs valeurs du même type Une valeur (ou élément) d un tableau t est désignée par son index i dans le tableau ; on la note t[i]. En C++ : cet index est un entier entre 0 et l 1, où l est le nombre d éléments du tableau
8 B. Les tableaux À retenir Un tableau est une valeur composite formée de plusieurs valeurs du même type Une valeur (ou élément) d un tableau t est désignée par son index i dans le tableau ; on la note t[i]. En C++ : cet index est un entier entre 0 et l 1, où l est le nombre d éléments du tableau Exemple Voici un tableaux d entiers : Avec cet exemple, t[0] vaut 1, t[1] vaut 4, t[2] vaut 1,... Noter que l ordre et les répétitions sont importantes!
9 Les tableaux en C++ Exemple vector<int> t; t = vector<int>(10); t[0] = 1; t[1] = 4; t[2] = 1; t[3] = 5; t[4] = 9; t[5] = 2; t[6] = 6; t[7] = 5; t[8] = 3; t[9] = 5; cout << t[5] + t[9] << endl;
10 C. Construction des tableaux Déclaration d un tableau d entiers vector<int> t;
11 C. Construction des tableaux Déclaration d un tableau d entiers vector<int> t; Pour un tableau de nombres réels, on utiliserait vector<double>, etc.
12 C. Construction des tableaux Déclaration d un tableau d entiers vector<int> t; Pour un tableau de nombres réels, on utiliserait vector<double>, etc. vector est un template
13 C. Construction des tableaux Déclaration d un tableau d entiers vector<int> t; Pour un tableau de nombres réels, on utiliserait vector<double>, etc. vector est un template Allocation d un tableau de 10 entiers t = vector<int>(10);
14 C. Construction des tableaux Déclaration d un tableau d entiers vector<int> t; Pour un tableau de nombres réels, on utiliserait vector<double>, etc. vector est un template Allocation d un tableau de 10 entiers t = vector<int>(10); Initialisation du tableau t[0] = 1; t[1] = 4;
15 Les trois étapes de la construction d un tableau À retenir Une variable de type tableau se construit en trois étapes :
16 Les trois étapes de la construction d un tableau À retenir Une variable de type tableau se construit en trois étapes : 1. Déclaration 2. Allocation Sans elle : faute de segmentation (au mieux!) 3. Initialisation Sans elle : même problème qu avec les variables usuelles
17 Les trois étapes de la construction d un tableau À retenir Une variable de type tableau se construit en trois étapes : 1. Déclaration 2. Allocation Sans elle : faute de segmentation (au mieux!) 3. Initialisation Sans elle : même problème qu avec les variables usuelles Raccourci Déclaration, allocation et initialisation en un coup : vector<int> t = { 1, 4, 1, 5, 9, 2, 6, 5, 3, 5 };
18 Les trois étapes de la construction d un tableau À retenir Une variable de type tableau se construit en trois étapes : 1. Déclaration 2. Allocation Sans elle : faute de segmentation (au mieux!) 3. Initialisation Sans elle : même problème qu avec les variables usuelles Raccourci Déclaration, allocation et initialisation en un coup : vector<int> t = { 1, 4, 1, 5, 9, 2, 6, 5, 3, 5 }; Introduit par la norme C++ de 2011!
19 D. Utilisation des tableaux Syntaxe t[i] s utilise comme une variable usuelle : // Exemple d accès en lecture x = t[2] + 3*t[5]; y = sin(t[3]*3.14); // Exemple d accès en écriture t[4] = 2 + 3*x; cin >> t[5];
20 D. Utilisation des tableaux Syntaxe t[i] s utilise comme une variable usuelle : // Exemple d accès en lecture x = t[2] + 3*t[5]; y = sin(t[3]*3.14); // Exemple d accès en écriture t[4] = 2 + 3*x; cin >> t[5]; Attention! En C++ les indices ne sont pas vérifiés! Le comportement de t[i] n est pas spécifié en cas de débordement Source no 1 des trous de sécurité!!!
21 D. Utilisation des tableaux Syntaxe t[i] s utilise comme une variable usuelle : // Exemple d accès en lecture x = t[2] + 3*t[5]; y = sin(t[3]*3.14); // Exemple d accès en écriture t[4] = 2 + 3*x; cin >> t[5]; Attention! En C++ les indices ne sont pas vérifiés! Le comportement de t[i] n est pas spécifié en cas de débordement Source no 1 des trous de sécurité!!! Accès avec vérifications : t.at(i) au lieu de t[i]
22 Quelques autres opérations sur les tableaux t.size(); // Taille du tableau t.push_back(3); // Ajout d un élément à la fin Fonctions et tableaux void affiche(vector<int> tableau) { for ( int i=0; i < tableau.size(); i++ ) { cout << tableau[i] << " "; } cout << endl; } int main() { vector<int> t = { 1, 2, 3, 4 }; affiche(t); }
23 E. Retour sur les fonctions récursives et les tests Exécuter pas-à-pas l exécution du programme suivant pour n = 4 : int factorielle(int n) { if (n == 0) { return 1; } else { return n * factorielle(n-1); } } int main() { int n; cin >> n; cout << n << "! = " << factorielle(n) << endl; return 0; }
24 F. Types de base et représentation des données
25 F. Types de base et représentation des données Questions Quelle information peut-on représenter sur 1 bit?
26 F. Types de base et représentation des données Questions Quelle information peut-on représenter sur 1 bit? Sur deux bits?
27 F. Types de base et représentation des données Questions Quelle information peut-on représenter sur 1 bit? Sur deux bits? Sur quatre bits?
28 F. Types de base et représentation des données Questions Quelle information peut-on représenter sur 1 bit? Sur deux bits? Sur quatre bits? Sur huit bits?
29 F. Types de base et représentation des données Questions Quelle information peut-on représenter sur 1 bit? Sur deux bits? Sur quatre bits? Sur huit bits? À retenir Le type d une variable décrit la structure de donnée : Comment l information est représentée par une suite de bits
30 F. 1. Les entiers : types int, long Entiers machine Représentés sur un mot machine
31 F. 1. Les entiers : types int, long Entiers machine Représentés sur un mot machine Sur une machine à n bits on peut représenter 2 n entiers, soit les entiers compris entre 2 n 1 et 2 n 1 1 Les bornes sont données par -INT_MAX-1 et INT_MAX Voir Exemples/int.cpp
32 F. 1. Les entiers : types int, long Entiers machine Représentés sur un mot machine Sur une machine à n bits on peut représenter 2 n entiers, soit les entiers compris entre 2 n 1 et 2 n 1 1 Les bornes sont données par -INT_MAX-1 et INT_MAX Voir Exemples/int.cpp Attention! Différence entier machine / entier mathématique!
33 F. 1. Les entiers : types int, long Entiers machine Représentés sur un mot machine Sur une machine à n bits on peut représenter 2 n entiers, soit les entiers compris entre 2 n 1 et 2 n 1 1 Les bornes sont données par -INT_MAX-1 et INT_MAX Voir Exemples/int.cpp Attention! Différence entier machine / entier mathématique! Il est aussi possible de calculer avec des «vrais» entiers!
34 Quelques variantes Entiers longs : long ; voir Exemples/long.cpp Entiers courts : short ; voir Exemples/long.cpp Entiers non signés : unsigned int, unsigned long,... Remarque Le nombre de bits utilisés (et donc les bornes) dépendent du compilateur, du système d exploitation, du processeur,...
35 Les opérations sur les entiers L opposé (opération unaire, notée -) L addition (opération binaire, notée +) La soustraction (opération binaire, notée -) La multiplication (opération binaire, notée *) La division entière (opération binaire, notée /) Le reste de la division entière (opération binaire, notée %)
36 Les opérations sur les entiers L opposé (opération unaire, notée -) L addition (opération binaire, notée +) La soustraction (opération binaire, notée -) La multiplication (opération binaire, notée *) La division entière (opération binaire, notée /) Le reste de la division entière (opération binaire, notée %) Attention! La multiplication n est pas implicite, le symbole * doit toujours être indiqué explicitement entre les deux opérandes
37 Les opérations sur les entiers L opposé (opération unaire, notée -) L addition (opération binaire, notée +) La soustraction (opération binaire, notée -) La multiplication (opération binaire, notée *) La division entière (opération binaire, notée /) Le reste de la division entière (opération binaire, notée %) Attention! La multiplication n est pas implicite, le symbole * doit toujours être indiqué explicitement entre les deux opérandes Opérations en place Incrémentation (opérateur ++) : n++ raccourci pour n = n+1
38 Les opérations sur les entiers L opposé (opération unaire, notée -) L addition (opération binaire, notée +) La soustraction (opération binaire, notée -) La multiplication (opération binaire, notée *) La division entière (opération binaire, notée /) Le reste de la division entière (opération binaire, notée %) Attention! La multiplication n est pas implicite, le symbole * doit toujours être indiqué explicitement entre les deux opérandes Opérations en place Incrémentation (opérateur ++) : n++ raccourci pour n = n+1 Décrémentation (opérateur --) n-- raccourci pour n = n-1
39 Les opérations sur les entiers (2) Exemples opération résultat * / % 5 2
40 F. 2. Les réels : types float, double Motivation Représenter des nombres réels?
41 F. 2. Les réels : types float, double Motivation Représenter des nombres réels? Nombres approchés (chiffres significatifs) Grande variations d ordres de grandeur
42 F. 2. Les réels : types float, double Motivation Représenter des nombres réels? Nombres approchés (chiffres significatifs) Grande variations d ordres de grandeur Nombres à virgule flottante Représentation par mantisse et exposant : e+05
43 F. 2. Les réels : types float, double Motivation Représenter des nombres réels? Nombres approchés (chiffres significatifs) Grande variations d ordres de grandeur Nombres à virgule flottante Représentation par mantisse et exposant : e+05 Voir : Exemples/float.cpp et Exemples/double.cpp.
44 F. 2. Les réels : types float, double Motivation Représenter des nombres réels? Nombres approchés (chiffres significatifs) Grande variations d ordres de grandeur Nombres à virgule flottante Représentation par mantisse et exposant : e+05 Voir : Exemples/float.cpp et Exemples/double.cpp. Un certain nombre de bits pour la mantisse Les bits restant pour l exposant Les détails de la représentation varient suivant les langages de programmation, les machines et les normes utilisées Normes IEEE très précises sur les règles d arrondis
45 Opérations sur les réels Notes L opposé (opération unaire, notée -) L addition (opération binaire, notée +) La soustraction (opération binaire, notée -) La multiplication (opération binaire, notée *) La division (opération binaire, notée /)
46 Les opérations sur les réels Exemples opération résultat notation scientifique E E * E / E+00 Voir Exemples/float.cpp
47 F. 3. Les caractères : type char Permettent de stocker un seul caractère : Une lettre de l alphabet (sans accent) : a,..., z, A,..., Z Un chiffre 0,..., 9 Un caractères du clavier +, /, ) Quelques caractères spéciaux
48 F. 3. Les caractères : type char Permettent de stocker un seul caractère : Une lettre de l alphabet (sans accent) : a,..., z, A,..., Z Un chiffre 0,..., 9 Un caractères du clavier +, /, ) Quelques caractères spéciaux Notés entre apostrophes (exempler : A ) pour distinguer le caractère A de la variable A
49 F. 3. Les caractères : type char Permettent de stocker un seul caractère : Une lettre de l alphabet (sans accent) : a,..., z, A,..., Z Un chiffre 0,..., 9 Un caractères du clavier +, /, ) Quelques caractères spéciaux Notés entre apostrophes (exempler : A ) pour distinguer le caractère A de la variable A La table ASCII associe un numéro unique entre 0 et 127 à chaque caractère, ce qui permet d introduire un ordre
50 F. 3. Les caractères : type char Permettent de stocker un seul caractère : Une lettre de l alphabet (sans accent) : a,..., z, A,..., Z Un chiffre 0,..., 9 Un caractères du clavier +, /, ) Quelques caractères spéciaux Notés entre apostrophes (exempler : A ) pour distinguer le caractère A de la variable A La table ASCII associe un numéro unique entre 0 et 127 à chaque caractère, ce qui permet d introduire un ordre Et les lettres accentuées? Les caractères chinois?...
51 F. 3. Les caractères : type char Permettent de stocker un seul caractère : Une lettre de l alphabet (sans accent) : a,..., z, A,..., Z Un chiffre 0,..., 9 Un caractères du clavier +, /, ) Quelques caractères spéciaux Notés entre apostrophes (exempler : A ) pour distinguer le caractère A de la variable A La table ASCII associe un numéro unique entre 0 et 127 à chaque caractère, ce qui permet d introduire un ordre Et les lettres accentuées? Les caractères chinois?... Voir : Unicode, UTF-8 Voir Exemples/char.cpp
52 F. 4. Les chaînes de caractères : type string Permettent de stocker une suite de caractères : un mot, une phrase,... Notées entre guillemets doubles Exemple : "Bonjour" Se comportent essentiellement comme des tableaux de caractères Opérations opération exemple résultat concaténation "bonjour"+ "toto" "bonjourtoto" indexation "bonjour"[3] j longueur "bonjour".length()" 7
53 F. 5. Les booléens : type bool Notes Les variables booléennes ne peuvent prendre que deux valeurs : vrai (mot clé true) faux (mot clé false) Les opérations possibles sur les booléens sont : la négation (opération unaire, mot clé not) la conjonction (opération binaire, mot clé and) la disjonction (opération binaire, mot clé or)...
54 Les tables de vérité not false true true false and false true false false false true false true or false true false false true true true true De plus le type booléen est ordonné : false < true.
55 Expressions booléennes : comparaisons La condition dans une expression booléenne résulte dans la majorité des cas d une ou plusieurs comparaisons : symbole C++ symbole mathématique < < <= == =!= >= > >
56 Expressions booléennes : encadrements Attention! Les encadrements ne peuvent pas être écrits directement en C++ Ils doivent être réalisés à l aide de deux comparaisons connectées par l opérateur and Exemple L encadrement mathématique : 0 x 15 se traduit en C++ par l expression booléenne : (0 <= x) and (x <= 15)
57 Évaluation paresseuse des expressions booléennes Exemple Quelle est la valeur des expressions suivantes : false and ( 3*x + 1 >= 2 or 1/(1+x) < 42 ) true or ( 3*x + 1 >= 2 or 1/(1+x) < 42 ) Deux possibilités : l évaluation complète : évaluer tous les opérandes des expressions booléennes
58 Évaluation paresseuse des expressions booléennes Exemple Quelle est la valeur des expressions suivantes : false and ( 3*x + 1 >= 2 or 1/(1+x) < 42 ) true or ( 3*x + 1 >= 2 or 1/(1+x) < 42 ) Deux possibilités : l évaluation complète : évaluer tous les opérandes des expressions booléennes l évaluation paresseuse : stopper l évaluation dès que l on peut : Pour une conjonction a and b on peut s arrêter si a est faux Pour une disjonction a or b on peut s arrêter si a est vrai
59 Les expressions Une expression peut être : une valeur constante Exemples : 2, 56.7, u ou true une variable toute combinaison d opérations valides mettant en œuvre des constantes et/ou des variables
60 Ordre de priorité Exercice Quelle est la valeur des expressions suivantes : 6 / 3 * * <= 2 * 8 not 1 < 2 and 1 == 2
61 Ordre de priorité Exercice Quelle est la valeur des expressions suivantes : 6 / 3 * * <= 2 * 8 not 1 < 2 and 1 == 2 Notes Les expressions sont évaluées de gauche à droite suivant l ordre de priorité décroissante suivant : Unaire Binaire not * / % and or <, <=, =,!=, >= >
62 Le parenthésage Notes Les parenthèses servent à modifier l ordre de priorité Exemples opérations valeurs * 2 13 (5 + 4) * 2 18
Eléments de syntaxe du langage Java
c jan. 2014, v3.0 Java Eléments de syntaxe du langage Java Sébastien Jean Le but de ce document est de présenter es éléments de syntaxe du langage Java : les types primitifs, les opérateurs arithmétiques
Cours d introduction à l informatique. Partie 2 : Comment écrire un algorithme? Qu est-ce qu une variable? Expressions et instructions
Cours d introduction à l informatique Partie 2 : Comment écrire un algorithme? Qu est-ce qu une variable? Expressions et instructions Qu est-ce qu un Une recette de cuisine algorithme? Protocole expérimental
Info0101 Intro. à l'algorithmique et à la programmation. Cours 3. Le langage Java
Info0101 Intro. à l'algorithmique et à la programmation Cours 3 Le langage Java Pierre Delisle, Cyril Rabat et Christophe Jaillet Université de Reims Champagne-Ardenne Département de Mathématiques et Informatique
1 Valeur d une expression
PCSI Informatique: Cours2 1 VALEUR D UNE EXPRESSION Expressions et variables en informatique 1 Valeur d une expression Expression : suite de caractères qui a un sens pour la machine Valeur d une expression
Premiers exemples de traitements
#include #include Premiers exemples de traitements void main() float b(0.0); float c(0.0); float delta(0.0); cin >> b >> c; delta = b*b - 4*c; if (delta < 0.0) cout
IN 102 - Cours 1. 1 Informatique, calculateurs. 2 Un premier programme en C
IN 102 - Cours 1 Qu on le veuille ou non, les systèmes informatisés sont désormais omniprésents. Même si ne vous destinez pas à l informatique, vous avez de très grandes chances d y être confrontés en
Introduction à l algorithmique et à la programmation 2013-2014. Cyril Nicaud Cyril.Nicaud@univ-mlv.fr. Cours 1 / 5
Introduction à l algorithmique et à la programmation IUT 1ère année 2013-2014 Cyril Nicaud Cyril.Nicaud@univ-mlv.fr Cours 1 / 5 Déroulement du cours Organisation : 5 séances de 2h de cours 10 séances de
Introduction à l informatique, à Python, et représentation des nombres en machine
Introduction à l informatique, à Python, et représentation des nombres en machine Table des matières Qu est-ce-que l informatique? Qu est-ce-qu un ordinateur? 2 Principaux composants...............................................
Informatique. Programmation en Python.
BCPST 1 B 13 septembre 2015 Informatique. Programmation en Python. Ce document est un support de cours, il vous permet d avoir sa structure et ses éléments les plus importants. Au cours des séances en
Licence ST Université Claude Bernard Lyon I LIF1 : Algorithmique et Programmation C Bases du langage C 1 Conclusion de la dernière fois Introduction de l algorithmique générale pour permettre de traiter
Expressions, types et variables en Python
Expressions, types et variables en Python 2015-08-26 1 Expressions Les valeurs désignent les données manipulées par un algorithme ou une fonction. Une valeur peut ainsi être : un nombre, un caractère,
Mise à niveau en Java
Mise à niveau en Java Cours 1 Stéphane Airiau Université Paris-Dauphine Stéphane Airiau (Université Paris-Dauphine) - Java Cours 1 1 Aujourd hui Eléments de base Variables, opérateurs, type d une expression
Logiciel de Base. I. Représentation des nombres
Logiciel de Base (A1-06/07) Léon Mugwaneza ESIL/Dépt. Informatique (bureau A118) mugwaneza@univmed.fr I. Représentation des nombres Codage et représentation de l'information Information externe formats
Algorithmique Partie 1
Algorithmique Partie 1 IUT Informatique de Lens, 1ère Année Université d Artois Frédéric Koriche koriche@cril.fr 2011 - Semestre 1 Modalités Sommaire 1 Modalités 2 Programmation 3 Données 4 Opérateurs
1. Structure d un programme C. 2. Commentaire: /*..texte */ On utilise aussi le commentaire du C++ qui est valable pour C: 3.
1. Structure d un programme C Un programme est un ensemble de fonctions. La fonction "main" constitue le point d entrée pour l exécution. Un exemple simple : #include int main() { printf ( this
Numération II. Laval. January 24, 2013. Bellepierre
Bellepierre January 24, 2013 Opération en base 4 Les nombres sont tous écrit en base 4... La table d addition + 1 2 3 1 2 3 10 2 3 10 11 3 10 11 12 Exemple 1 1 1 1 2 3 + 2 2 2 1 0 1 1 Opération en base
Informatique / Programmation
Informatique / Programmation Programmation orientée objet avec Java 02 : Expressions et opérateurs Jacques Bapst jacques.bapst@hefr.ch Expressions [1] Les expressions sont des entités composées de littéraux,
Le langage Java - Syntaxe
Le langage Java - Syntaxe LES BASES: litéraux, types, expressions, instructions LE LANGAGE JAVA - SYNTAXE LES COMMENTAIRES LES IDENTIFICATEURS LISTES DES MOTS RÉSERVÉS: LES LITÉRAUX BOOLÉENS LA DÉCLARATION
Langage Élémentaire Algorithmique Spécifications du langage
Langage Élémentaire Algorithmique Spécifications du langage Lionel Clément Version provisoire Novembre 2012 Le but de ce projet est de livrer un compilateur pour un langage élémentaire algorithmique (Léa).
UEO11 COURS/TD 1. nombres entiers et réels codés en mémoire centrale. Caractères alphabétiques et caractères spéciaux.
UEO11 COURS/TD 1 Contenu du semestre Cours et TDs sont intégrés L objectif de ce cours équivalent a 6h de cours, 10h de TD et 8h de TP est le suivant : - initiation à l algorithmique - notions de bases
Introduction au langage C
Introduction au langage C Cours 1: Opérations de base et premier programme Alexis Lechervy Alexis Lechervy (UNICAEN) Introduction au langage C 1 / 23 Les premiers pas Sommaire 1 Les premiers pas 2 Les
Langage C notes de cours
Langage C notes de cours K. El Omari IUT GTE, UPPA 1 Présentation générale 1.1 Introduction La programmation par le langage C (ainsi que par d autres langages dit compilés) est basée sur : 1. la rédaction
Introduction à la Programmation 1
Introduction à la Programmation 1 Séance de cours/td Université Paris-Diderot Objectifs: Découverte du type String. Comprendre qu il y a des types différents. Maîtriser les expressions booléennes dans
INF121: Algorithmique et Programmation Fonctionnelle
INF121: Algorithmique et Programmation Fonctionnelle Cours 1: Identificateurs, types de base et fonctions Année 2013-2014 Identificateurs La notion d identificateur Un concept fondamental dans les langages
1/24. I passer d un problème exprimé en français à la réalisation d un. I expressions arithmétiques. I structures de contrôle (tests, boucles)
1/4 Objectif de ce cours /4 Objectifs de ce cours Introduction au langage C - Cours Girardot/Roelens Septembre 013 Du problème au programme I passer d un problème exprimé en français à la réalisation d
TP 1. Prise en main du langage Python
TP. Prise en main du langage Python Cette année nous travaillerons avec le langage Python version 3. ; nous utiliserons l environnement de développement IDLE. Étape 0. Dans votre espace personnel, créer
ISMIN 1A Programmation 1 : Examen de programmation C. Réponses. Partie 1. Questions ouvertes
ISMIN 1A Programmation 1 : Examen de programmation C Réponses Partie 1. Questions ouvertes 1. Soit la déclaration suivante, char tab[] = "". Que contient le tableau tab? Réponse : tab[0] = \0. tab est
Manipulations binaires en C++
Manipulations binaires en C++ Tous les exercices devront être résolus sans utiliser les opérateurs *, / et % Rappels En informatique, les nombres sont stockés sous forme binaire. Même si ce n'est pas nécessaire,
Bases de programmation. Cours 5. Structurer les données
Bases de programmation. Cours 5. Structurer les données Pierre Boudes 1 er décembre 2014 This work is licensed under the Creative Commons Attribution-NonCommercial-ShareAlike 3.0 License. Types char et
Objectifs du cours d aujourd hui. Informatique I : Cours d introduction à l informatique et à la programmation Types avancés (1)
Objectifs du cours d aujourd hui Informatique I : Cours d introduction à l informatique et à la programmation Types avancés (1) Jamila Sam Haroud Présenter des structures de données plus avancées (que
Cours 7 : fonctions recursives, arithmétique binaire, flottants 1
Cours 7 : fonctions recursives, arithmétique binaire, flottants 1 Les types énumérés On peut aussi définir des types qui ont un nombre fini de valeurs (ex: jours de la semaine, couleurs primaires, etc.)
Informatique UE 102. Jean-Yves Antoine. Architecture des ordinateurs et Algorithmique de base. UFR Sciences et Techniques Licence S&T 1ère année
UFR Sciences et Techniques Licence S&T 1ère année Informatique UE 102 Architecture des ordinateurs et Algorithmique de base Jean-Yves Antoine http://www.info.univ-tours.fr/~antoine/ UFR Sciences et Techniques
xkcd Le langage Python La GUI tkinter Christian Nguyen Département d informatique Université de Toulon et du Var 2012-2013
La GUI tkinter Département d informatique Université de Toulon et du Var 2012-2013 Présentation Python est né en 1990, son concepteur est De Guido Van Rossum(Pays Bas). Il présente les caractéristiques
Fascicule de Génie Electrique (Terminale S option SI)
Le langage C Ressource Centre d intérêt CI10 : Traitement de Thématique I11 - Les systèmes numériques : Mise en œuvre d un microcontrôleur avec des composants logiciels réutilisables. 1 Les constantes
Informatique? Numérique? L informatique est la science du traitement de l information.
Informatique? Numérique? L informatique est la science du traitement de l information. L information est traitée par un ordinateur sous forme numérique : ce sont des valeurs discrètes. Cela signifie que,
CHAPITRE 3 : Types de base, Opérateurs et Expressions
CHAPITRE 3 : Types de base, Opérateurs et Expressions 1. Types simples Un type définit l'ensemble des valeurs que peut prendre une variable, le nombre d'octets à réserver en mémoire et les opérateurs que
Traduction des arbres programmatiques en C
Traduction des arbres programmatiques en C Table des matières 1 Premier exemple : helloworld.c 1 2 Méthode de programmation 2 3 Déclaration de variables 2 4 Structures de contrôle 3 5 Opérateurs C 5 6
Systèmes Informatiques TD 3: langage C opérations élémentaires
Systèmes Informatiques TD 3: langage C opérations élémentaires P. Bakowski bako@ieee.org Opérateurs logiques/arithmétiques Le langage C offre une liste importante d opérateurs logiques et arithmétiques.
Programmation en Python - Cours 2 : Premiers programmes. MPSI - Lycée Thiers
Programmation en Python - Cours 2 : Premiers programmes Diverses utilisations de python Utilisation en mode interactif Ecriture d un programme python Utilisation en mode interactif Ecriture d un programme
Cours C++ Lorsque je lance Dev C++, il apparaître l'écran ci-contre.
Cours C++ Définition : Le langage C est un langage de programmation inventé par MM. Kernighan et Ritchie au début des années 70. Au début des années 90, Bjarne Stroustrup fait évoluer le langage vers le
UE C avancé cours 1: introduction et révisions
Introduction Types Structures de contrôle Exemple UE C avancé cours 1: introduction et révisions Jean-Lou Desbarbieux et Stéphane Doncieux UMPC 2004/2005 Introduction Types Structures de contrôle Exemple
Problème : débordement de la représentation ou dépassement
Arithmétique entière des ordinateurs (représentation) Écriture décimale : écriture positionnelle. Ex : 128 = 1 10 2 + 2 10 1 + 8 10 0 Circuit en logique binaire Écriture binaire (base 2) Ex : (101) 2 =
Cours d Algorithmique-Programmation 2 e partie (IAP2): programmation 24 octobre 2007impérative 1 / 44 et. structures de données simples
Cours d Algorithmique-Programmation 2 e partie (IAP2): programmation impérative et structures de données simples Introduction au langage C Sandrine Blazy - 1ère année 24 octobre 2007 Cours d Algorithmique-Programmation
Algorithmique et Programmation, IMA
Algorithmique et Programmation, IMA Cours 2 : C Premier Niveau / Algorithmique Université Lille 1 - Polytech Lille Notations, identificateurs Variables et Types de base Expressions Constantes Instructions
Introduction au langage C - types et variables
Chapitre 2 Introduction au langage C - types et variables 1 Le Langage C Le langage C est un langage de bas niveau dans le sens où il permet l accès à des données que manipulent les ordinateurs (bits,
en Visual Basic Premiers pas
V0 (16-10-2009) Licence Université Lille 1 Pour toutes remarques : Alexandre.Sedoglavic@univ-lille1.fr Première année DEUST 2008-09 Ce cours est porte sur la programmation en s appuyant sur le langage
LE LANGAGE C ADAPTÉ AU MICROCONTRÔLEURS
LE LANGAGE C ADAPTÉ AU MICROCONTRÔLEURS 1. PRÉSENTATION. Le langage C a fait son apparition en 1972 pour le développement du système d exploitation Unix. Il est devenu un standard de la norme ANSI en 1983.
Algorithmique (M1 LTTAC UE3 du S1 & M2 LCE) Univ. Lille 3 2015-2016 15/09/15 ; page 1 N. Gasiglia
15/09/15 ; page 1 N. Gasiglia Quelques instructions de base Préambule Quand un programme a besoin d échanger des informations avec l utilisateur qui l exécute, ou avec un fichier qui en contient ou dans
Langage procédural C
Langage procédural Le langage C Laboratoire ISIR (email: ouarti@isir.upmc.fr) 2012 Qu est ce qu un algorithme Ici nous n étudierons que les algorithmes séquentiels Chaque instruction se fait l une à la
TD 5 LES POINTEURS. Définition: Pointeur
TD 5 LES POINTEURS d'après le site de F. Faber http://www.ltam.lu/tutoriel_ansi_c Définition: Pointeur Un pointeur est une variable spéciale qui peut contenir l'adresse d'une autre variable. En C, chaque
Cours 2 : Comment construire un programme?
1/64 Introduction à la programmation Cours 2 : Comment construire un programme? Yann Régis-Gianas yrg@pps.univ-paris-diderot.fr Université Paris Diderot Paris 7 2/64 Le cours d aujourd hui 1. Striptease
Introduction au langage
Introduction au langage Un langage de programmation : de haut niveau interprété orienté objet si on le souhaite rapide à écrire et proche du pseudo-code simple tant qu on fait des choses simples Un programme
Héritage en java : Calculatrice SDC
Programmation orientée objet L3 MIAGE Héritage en java : Calculatrice SDC Travail à rendre : le code complet du projet SDC sous forme d une archive tar.gz. L archive comportera trois répertoires : un répertoire
Cours d Algorithmique et de Langage C 2005 - v 3.0
Cours d Algorithmique et de Langage C 2005 - v 3.0 Bob CORDEAU cordeau@onera.fr Mesures Physiques IUT d Orsay 15 mai 2006 Avant-propos Avant-propos Ce cours en libre accès repose sur trois partis pris
Chapitre 2 : Représentation des nombres en machine
Chapitre 2 : Représentation des nombres en machine Introduction La mémoire des ordinateurs est constituée d une multitude de petits circuits électroniques qui ne peuvent être que dans deux états : sous
C.P.G.E - Meknès Langage Python 3 Haouati Abdelali
3. Langage Python 3 2 a. Introduction Présentation du langage Python : Python est un langage portable, dynamique, extensible, gratuit, qui permet (sans l imposer) une approche modulaire et orientée objet
S. Laporte C# mode console DAIGL TS1
Bases du langage C# I. C# en mode console (mode texte) Avantages par rapport au mode graphique (Application Windows): - C'est un mode plus proche de l'approche algorithmique (pas de notions de composants,
Introduction au langage C++
Introduction au langage C++ Chapitres traités Langage de bas niveau Langage de bas niveau (langage machine) Pourquoi le codage binaire? Les composants à l'intérieur de l'ordinateur sont des composants
LIF1 : ALGORITHMIQUE ET PROGRAMMATION IMPÉRATIVE, INITIATION
Licence STS Université Claude Bernard Lyon I LIF1 : ALGORITHMIQUE ET PROGRAMMATION IMPÉRATIVE, INITIATION 1 COURS 7 : Structures et Fichiers OBJECTIFS DE LA SÉANCE Deux notions abordées dans ce cours Celle
INITIATION AU LANGAGE C SUR PIC DE MICROSHIP
COURS PROGRAMMATION INITIATION AU LANGAGE C SUR MICROCONTROLEUR PIC page 1 / 7 INITIATION AU LANGAGE C SUR PIC DE MICROSHIP I. Historique du langage C 1972 : naissance du C dans les laboratoires BELL par
Présentation du langage et premières fonctions
1 Présentation de l interface logicielle Si les langages de haut niveau sont nombreux, nous allons travaillé cette année avec le langage Python, un langage de programmation très en vue sur internet en
Cours 3. La conditionnelle: instructions si et selon Les boucles Comment raisonner sur les boucles: les invariants de boucle
Cours 3 : Instructions qui changent l ordre d exécution séquentiel 1 Cours 3 Instructions qui changent l ordre d exécution séquentiel La conditionnelle: instructions si et selon Les boucles Comment raisonner
Cours Info - 12. Représentation des nombres en machine. D.Malka MPSI 2014-2015. D.Malka Cours Info - 12 MPSI 2014-2015 1 / 45
Cours Info - 12 Représentation des nombres en machine D.Malka MPSI 2014-2015 D.Malka Cours Info - 12 MPSI 2014-2015 1 / 45 Sommaire Sommaire 1 Bases de numération par position 2 Représentation des entiers
Programmation VBA. Identificateurs. Types de base. Déclaration d une variable. Commentaires. Activer l onglet Développeur (Excel)
Activer l onglet Développeur (Excel) Programmation VBA Michel Reid Cliquez sur le bouton Office (coin supérieur gauche) Cliquez sur le bouton Options Excel Dans la section Standard, cochez la case Afficher
DE L ALGORITHME AU PROGRAMME INTRO AU LANGAGE C 51
DE L ALGORITHME AU PROGRAMME INTRO AU LANGAGE C 51 PLAN DU COURS Introduction au langage C Notions de compilation Variables, types, constantes, tableaux, opérateurs Entrées sorties de base Structures de
Formation Unix/Linux (6) Le Shell: programmation et écriture de scripts
Formation Unix/Linux (6) Le Shell: programmation et écriture de scripts Olivier BOEBION Mars 2004 1 Les expressions conditionnelles et les structures de contrôle 1.1 La commande test La commande interne
Le Langage. JavaScript
Chapitre 2 : Le Langage JavaScript Le Langage JavaScript Rémy Courdier 1996-2002 - Le langage Java - Version du cours 2.6.2 1 Les types primitifs de JavaScript Types de bases Boolean (Booléen) : peut prendre
STAGE IREM 0- Premiers pas en Python
Université de Bordeaux 16-18 Février 2014/2015 STAGE IREM 0- Premiers pas en Python IREM de Bordeaux Affectation et expressions Le langage python permet tout d abord de faire des calculs. On peut évaluer
Algorithmie ISI301 TP 1 : Python et premiers algorithmes
Algorithmie ISI301 TP 1 : Python et premiers algorithmes 1 Python : apprentissage Pour avoir une vision plus large des différentes possibilités du langage Python, nous ne pouvons que vous conseiller d
Introduction à l arithmétique des ordinateurs
Introduction à l arithmétique des ordinateurs Peut-on vraiment calculer avec un ordinateur? F. Langrognet F. Langrognet Introduction à l arithmétique des ordinateurs Fev 2015 1 / 193 PLAN 1 Calculer avec
1. Base de connaissance du langage C# 2. Initiation de l environnement de développement 3. Exercices
Sihao DENG sihao.deng@utbm.fr http://deng.sihao.perso.sfr.fr/mn41 1. Base de connaissance du langage C# 2. Initiation de l environnement de développement 3. Exercices Langage C Références: http://deng.sihao.perso.sfr.fr/mn41/lo11.pdf
INF 2005 Programmation orientée objet avec C++ Texte 2
INF 2005 Programmation orientée objet avec C++ Texte 2 1. Mots clés du langage C++ et premiers pas... 2 1.1 Les mots clés du langage C++... 2 1.2 Familiarisation avec le langage... 3 2. Les entrées-sorties...
Cours de C++ François Laroussinie. 2 novembre 2005. Dept. d Informatique, ENS de Cachan
Cours de C++ François Laroussinie Dept. d Informatique, ENS de Cachan 2 novembre 2005 Première partie I Introduction Introduction Introduction Algorithme et programmation Algorithme: méthode pour résoudre
Algorithmique et Analyse d Algorithmes
Algorithmique et Analyse d Algorithmes L3 Info Cours 5 : Structures de données linéaires Benjamin Wack 2015-2016 1 / 37 La dernière fois Logique de Hoare Dichotomie Aujourd hui Type Abstrait de Données
Généralités Composants élémentaires d'un programme Instructions simples. JL Damoiseaux - Dpt R&T
JAVA - I Généralités Composants élémentaires d'un programme Instructions simples 2 JAVA? Un langage de programmation (orienté objets) Une architecture basée sur une Machine Virtuelle Un ensemble très important
PLAN DU COURS ENTRÉE SORTIE FONCTION PRINTF. Fonction de la bibliothèque stdio.h. Affichage d'un texte:
PLAN DU COURS Introduction au langage C Notions de compilation Variables, types, constantes, Tableaux, opérateurs Entrées sorties de base Structures de contrôle Algorithmes de recherche Algorithmes de
Introduction à Java. Matthieu Herrb CNRS-LAAS. Mars 2014. http://homepages.laas.fr/matthieu/cours/java/java.pdf
Introduction à Java Matthieu Herrb CNRS-LAAS http://homepages.laas.fr/matthieu/cours/java/java.pdf Mars 2014 Plan 1 Concepts 2 Éléments du langage 3 Classes et objets 4 Packages 2/28 Histoire et motivations
Informatique Chapitre 4: Types et typages
Informatique Chapitre 4: Types et typages Booléens et listes Jérôme DIDIER 8/10/2014 Objectifs du cours Compétences visées Savoir que les variables peuvent avoir plusieurs types et les connaitre ; Type
M Younsi Tel :0645755250 www.formation-informatiques.fr mousse.younsi@ formation-informatiques.fr
U2 MATHÉMATIQUES POUR L INFORMATIQUE Dans ce document, on trouve toutes les notions que le référentiel du BTS SIO impose pour l epreuve U22. Les éléments en rouge sont des rappels concernant la notion
} 7 Variables (composantes)
Chapitre 4 Tableaux Jusqu ici, nous avons employé les variables pour stocker les valeurs individuelles de types primitifs : une variable de type int pour stocker un entier, une variable de type boolean
Anne Tasso. Java. Le livre de. premier langage. 10 e édition. Avec 109 exercices corrigés. Groupe Eyrolles, 2000-2015, ISBN : 978-2-212-14154-2
Anne Tasso Java Le livre de premier langage 10 e édition Avec 109 exercices corrigés Groupe Eyrolles, 2000-2015, ISBN : 978-2-212-14154-2 Table des matières Avant-propos Organisation de l ouvrage..............................
Langage C. E. Boucharé
Langage C E. Boucharé Table des Matières Introduction.............................................................................. 1 Chapitre 1. Les types de données de C....................................................
Cours 2 : Python, les bases
Cours 2 : Python, les bases Langage de programmation Les êtres humains parlent français, anglais,... L'ordinateur parle en binaire => nécessité de trouver un langage commun! De nombreux langages de programmation
Fiche de révisions - Algorithmique
Fiche de révisions - Algorithmique Rédigé par : Jimmy Paquereau 1. Généralités Algorithme : un algorithme est la description d une procédure à suivre afin de résoudre un problème donné. Il n est pas nécessairement
Codage d information. Codage d information : -Définition-
Introduction Plan Systèmes de numération et Représentation des nombres Systèmes de numération Système de numération décimale Représentation dans une base b Représentation binaire, Octale et Hexadécimale
BAZIN Danil et PRIEZ Jean-Baptiste. LEX & YACC : Calculatrice Évoluée
BAZIN Danil et PRIEZ Jean-Baptiste LEX & YACC : Calculatrice Évoluée Table des matières 1 Introduction 3 2 Description 4 3 La grammaire utilisée 6 4 Lexèmes et FLEX 8 5 Analyse syntaxique et YACC 8 5.1
Résumé du cours de Programmation Java
Résumé du cours de Programmation Java Carole Frindel et Céline Robardet TABLE DES MATIÈRES 1 Notions élémentaires 1 1.1 Qu est-ce qu un programme?......................................... 1 1.2 Les variables...................................................
Programmation en Python - Cours 2 : Premiers programmes
Programmation en Python - Cours 2 : Premiers programmes 2013/2014 Diverses utilisations de python Utilisation en mode interactif Ecriture d un programme python Saisie de données par l utilisateur : input(),
Programmation sous Python
Erwan Biland Lycée Chateaubriand - BCPST 1C Année scolaire 2014-2015 Objects du Utilisation de la console (shell ) Python calculatrice Fichier machin.py Manipulation des variables Création/affectation,
Rappels Entrées -Sorties
Fonctions printf et scanf Syntaxe: écriture, organisation Comportement Données hétérogènes? Gestion des erreurs des utilisateurs 17/11/2013 Cours du Langage C ibr_guelzim@yahoo.fr ibrahimguelzim.atspace.co.uk
Programmer en JAVA. par Tama (tama@via.ecp.fr( tama@via.ecp.fr)
Programmer en JAVA par Tama (tama@via.ecp.fr( tama@via.ecp.fr) Plan 1. Présentation de Java 2. Les bases du langage 3. Concepts avancés 4. Documentation 5. Index des mots-clés 6. Les erreurs fréquentes
Qualité logicielle, tests, débogage
Qualité logicielle, tests, débogage A. Accro aux tests? Une introduction au test logiciel................ 4 Pourquoi le test logiciel? Des tests, pour gagner du temps! Pour aller plus loin Les objectifs
Principes de la programmation impérative
Séquence d instructions Variables et types Types élaborés Procédures, arguments Gestion de la mémoire Langage compilé, interprété Principes de la programmation impérative Séquence d instructions Variables
Java. Java. Le livrede. Avec 80 exercices corrigés. Avec 80 exercices corrigés. Le livre. Anne Tasso. 5 e édition. Un best-seller qui a déjà conquis
Anne Tasso Un best-seller qui a déjà conquis des milliers d'étudiants! Java Le livre Java Le livrede de premier premier langage langage Avec 80 exercices corrigés Avec 80 exercices corrigés 5 e édition
1. Eléments de base du langage C
1 1. Eléments de base du langage C Généralités Programme et sous-programme Fonction C Structure d un programme C Vocabulaire de base et syntaxe Exemples 2 Généralités Crée en 1972 par D. Ritchie pour écrire
Les types utilisateurs (VBA) Corrigé
PAD INPT ALGORITHMIQUE ET PROGRAMMATION 1 Cours VBA, Semaine 2 avril mai 2013 Corrigé Résumé Ce document décrit comment traduire en VBA les types utilisateur du langage algorithmique. Table des matières
Système et Programmation (en C)
Système et Programmation (en C) ENSTA - TC 1ère année François Pessaux U2IS 2015-2016 francois.pessaux @ ensta-paristech.fr Introduction François Pessaux IN102 Système et Programmation (en C) 2/31 But
TP Interface graphique et C++ numéro 1
TP Interface graphique et C++ numéro 1 Master IGC - 1 re année année 2010-2011 Ce premier TP a pour objectif de vous familiariser avec le compilateur C++, les entréessorties du langage et l utilisation
Utilisation d objets : String et ArrayList
Chapitre 6 Utilisation d objets : String et ArrayList Dans ce chapitre, nous allons aborder l utilisation d objets de deux classes prédéfinies de Java d usage très courant. La première, nous l utilisons
Java Licence Professionnelle CISII, 2009-10
Java Licence Professionnelle CISII, 2009-10 Cours 4 : Programmation structurée (c) http://www.loria.fr/~tabbone/cours.html 1 Principe - Les méthodes sont structurées en blocs par les structures de la programmation