Introduction à l informatique, à Python, et représentation des nombres en machine

Dimension: px
Commencer à balayer dès la page:

Download "Introduction à l informatique, à Python, et représentation des nombres en machine"

Transcription

1 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 Programme Système d exploitation Langage de programmation Python : syntaxe de base 3. Types Variables Opérations Fonctions usuelles Interactivité Représenter des nombres en machine 7 2. Bits Représenter des entiers en machine Et les entiers relatifs? Représenter les réels en machine Préliminaires : nombres à virgule en binaire Première tentative L arithmétique flottante Arrondis et problèmes de précision Annexe : principales différences entre Python 2 et 3 3. Les entiers La commande print La commande input La division entière Qu est-ce-que l informatique?

2 Qu est-ce-qu un ordinateur? Principaux composants Programme Système d exploitation (OS) Langage de programmation 2

3 Python est un langage de programmation dont la première version est apparue en 99. Il s est fortement développé depuis, et est devenu un langage très utilisé. Il s agit d un langage libre et gratuit. Il existe plusieurs version de Python. Le cours est fait en version 3, mais vous pourrez être amenés à utiliser également la version 2 en TP. Vous trouverez en annexe les principales différences entre les 2. Il existe plusieurs environnement de développement libres et gratuits pour python. Il s agit de logiciel permettant de taper du code python, de l exécuter, d accéder à des pages d aide... La plupart des environnements de développement proposent 2 manières de taper du code : On peut exécuter une ligne de code en utilisant l invite de commande (en général matérialisée par >>>). Dès que l on appuie sur la touche entrée, la ligne est exécutée, et le résultat affiché. On peut taper plusieurs ligne à la suite dans un éditeur de texte. Il y a en général un bouton ou un raccourci clavier qui permet l exécution séquentielle de tout le programme écrit. Python : syntaxe de base. Types On peut travailler avec différents types de données en python : Les entiers Les nombres à virgule flottante Les complexes Des chaines de caractère Des booléens Des tuples 3

4 >>> >>> / >>> >>> On peut obtenir le type d un objet à l aide de la commande type. >>> type(2) <class int > >>> type(2.) <class float > >>> type(3>2) <class bool > >>> type(+2j) <class complex > >>> type((,2)) <class tuple > >>> type(2*3.) <class >.2 Variables Une variable permet de stocker une valeur pour la réutiliser par la suite. On utilise le symbole = pour affecter une valeur à une variable. >>> a=3 >>> a 3 >>> b=a >>> b >>> a=-.3 >>> b Il est possible de faire des affectations multiples en utilisant les tuples : 4

5 >>> (a,b)=(2,4) >>> a 2 >>> b 4 Exercice Qu affiche l exécution des lignes de code suivantes : >>> a= >>> b=2 >>> c=a >>> b=c >>> a=b >>> (a,b,c) >>> a= >>> b=2 >>> c=a >>> a=b >>> b=c >>> (a,b,c).3 Opérations Python permet d effectuer toutes les opérations usuelles sur les entiers et les flottants : +,-,*,/. L opérateur puissance est noté **, et la valeur absolue de x abs(x). La division entière est notée //, et le reste de la division entière de a par b a%b. Les priorités entre les opérations sont celles habituellement utilisées en mathématiques. Le résultat est automatique converti en flottant ou en complexe si nécessaire..4 Fonctions usuelles Les fonctions usuelles ne sont pas chargée par défaut dans Python. Il faut les importer (une fois pour toute) à l aide de la commande import math. Les constantes e et π sont alors définies : 5

6 >>> math.e >>> math.pi On a ensuite accés (entre autres) aux fonctions suivantes : >>> e=math.e >>> pi=math.pi >>> math.sqrt(2) >>> math.exp(2) >>> math.log(e).0 >>> math.cos(0).0 >>> math.sin(pi/4) >>> math.tan(pi/4) >>> math.asin() >>> math.acos(0) >>> math.atan() >>> math.cosh(0).0 >>> math.sinh(3) Interactivité La commande print permet d afficher des résultats lors de l exécution d un programme. a=3 print(a) print( a ) print( La valeur de a est,a) La commande input permet de demander une valeur à l utilisateur en cours d exécution. Elle renvoie une chaine de caractère, que l on doit convertir en entier ou en flottant le cas échéant. a=float(input( Entrez un réel : )) print( Le carré de votre réel est,a**2) 6

7 2 Représenter des nombres en machine 2. Bits La mémoire des ordinateurs est constituée de composants élémentaires organisés séquentiellement qui ne peuvent être que dans 2 états (sous tension ou pas). Un tel composant ne peut donc stocker que 2 valeurs : 0 ou. On parle d un bit d information. Ces bits, écrits les uns à la suite des autres, forment des mots binaires. Par exemple 00 et 00 sont deux mots écrits sur trois bits. On appelle octet une suite de 8 bits. Exercice 2 Combien y a-t-il d états possibles de la mémoire d un disque dur de T o? Exercice 3 On souhaite associer à chacun des 365 jours de l année un unique code (ou mot) binaire. De combien de bits doit-on disposer? Exercice 4 Quel problème intrinsèque pose la représentation des nombres en machine? 2.2 Représenter des entiers en machine Pour représenter des entiers naturels en machine, le plus simple est de leur associer leur écriture en base 2. Définition 2. Soit n N. Il existe p N, et des bits a 0... a p tels que n = a p... a 0 est appelé représentation en base 2 de n. On note parfois n = a p... a 0 2. p a i 2 i. i=0 Écriture décimale Écriture binaire Exercice 5 Comment passer d un nombre écrit en binaire à son successeur immédiat? Exercice 6 En posant les opérations (comme vous l avez appris à l école primaire), calculer 0 +, 0 0 et Exercice 7 Déterminer l écriture binaire de 527. Exercice 8 Quels sont les problèmes posés par l écriture binaire pour représenter des nombres entiers en machine? Des idées pour y remédier? 7

8 Une solution fréquemment adoptée consiste à décider d un nombre de bits fixés sur lequel représenter les entiers (par exemple 32 ou 64). C est ce qui se passe dans un processeur, qui est capable d effectuer des opérations sur des entiers de nombre de bit fixé on parle de processeur 32 ou 64 bits (ces derniers tendant à se généraliser depuis plusieurs années). Écriture décimale Écriture binaire sur 8 bits Exercice 9 Quel est l inconvénient de ce choix? Rem Ce n est pas le choix effectué en Python, qui utilise un mécanisme beaucoup plus complexe permettant de représenter des entiers de taille arbitraire (ou tout du moins de taille seulement limitée par la mémoire vive de l ordinateur...). Exercice 0 Une image numérique est un ensemble de pixels. Chaque pixel a une couleur qui se décompose comme somme de 3 canaux (rouge, vert et bleu). On veut disposer de 256 niveaux possibles pour chaque canal. Combien de place en mémoire va prendre une image de pixels? 2.2. Et les entiers relatifs? Exercice Proposer une solution pour représenter les entiers relatifs. Le complément à deux z Z Codage sur 4 bits Exercice 2. Sur 32 bits, quels sont les plus grands et plus petits entiers relatifs représentables avec la méthode proposée? 2. Même question pour les entiers naturels. Exercice 3 Que risque-t-il de se passer si l on prend le plus grand entier représentable, et qu on lui ajoute? 8

9 2.3 Représenter les réels en machine La représentation des réels se heurte aux même difficultés, auxquelles s ajoute le fait qu un réel a une infinité de décimales, qui ne vont pas pouvoir toutes être préservées. Sur un nombre de bits donnés, on peut donc seulement représenter des approximations de nombres réels Préliminaires : nombres à virgule en binaire Exercice 4. Donner l écriture décimale de, 2 et de 0, Donner l écriture en base 2 de 9, 75. Tout nombre réel admet une écriture en base 2 parfois avec une infinité de chiffres après la virgule. Par exemple, 0, 6 est représenté par 0, Exercice 5 Calculer les 4 premiers chiffres après la virgule dans l écriture en binaire de 0, 6. Exercice 6 Calculer tous les autres! Première tentative Exercice 7 On propose la représentation suivante pour représenter des réels positifs, sur 64 bits : On pose b = 0, 000, et la séquence de 64 bits a a 0 code alors le réel b a a 0 2. Quels sont les réels représentables de cette façon? Quel inconvénient voyez-vous à cette méthode? L arithmétique flottante L idée suivante (une légère simplification d une norme très utilisée) permet de représenter à la fois des nombres très petits et très grands : Un nombre réel est décomposé sous la forme sm2 n où s est son signe (représenté par un bit : 0 pour +, pour ) n est l exposant il s agit d un entier relatif représenté sur bits en complément à deux (et donc compris entre 024 et 023) m est la mantisse il s agit d un nombre réel compris dans [, 2[, représenté par son écriture binaire à virgule. Comme son chiffre des unités est toujours, on peut l omettre, et ainsi coder 52 chiffres après la virgule. Rem On parle nombre à virgule flottante, la virgule pouvant être déplacée en utilisant l exposant. C est à mettre en parallèle avec l écriture scientifique :.234E 4 =, = 0, E5 =, = Exercice 8. Quel est le plus grand nombre réel représentable à l aide de cette méthode? 2. Quel est le plus petit nombre réel strictement positif représentable à l aide de cette méthode? Exercice 9 Quel est l inconvénient de cette méthode par rapport à la méthode sur 64 bits évoquée dans la section précédente? Exercice 20 Comment est représenté 3 avec cette méthode? Arrondis et problèmes de précision Python utilise une norme proche de l arithmétique flottante décrite ci-dessus pour représenter les réels. Tous les réels ne sont pas représentables, et il faut donc arrondir le résultat de chaque calcul au réel représentable le plus proche. Exercice 2 Quel est la représentation de 0, 4 avec cette convention? 9

10 >>> >>> -2**(-52) >>> -2**(-54).0 >>> -2**(-52) == False >>> -2**(-54) == True >>> +2**(-54)- 0.0 >>> -+2**(-54) e-7 Rem Il ne faut jamais utiliser de tests d égalité entre flottants. Pour comparer a et b, on teste si a b ɛ, où ɛ est un petit réel strictement positif. 0

11 3 Annexe : principales différences entre Python 2 et 3 Pour référence, voici sous forme d exemples les différences qui nous concernent entre Python 2 et 3. (Il y a de nombreuses autres différences, mais qui dépassent le cadre du cours...) 3. Les entiers En python 2, il y a deux types d entiers : Les int, codés sur un nombre fixe de bits (32 ou 64 selon le processeur et le système d exploitation). Les long qui peuvent représenter des entiers de taille arbitraire. Python 2 passe des int aux long lorsque c est nécessaire. Il ajoute alors un L à la fin d un entier pour signifier qu il s agit d un long. En Python 3, tout est géré de façon transparente pour le développeur, et il n y a qu un seul type : int. Python 3 Python 2 >>> type(l) <type long > >>> type() <type int > >>> 2** >>> 2** >>> type(2**64) <type int > >>> type(2) <type int > >>> 2** >>> 2** L >>> type(2**64) <type long > >>> type(2) <type int > 3.2 La commande print Par de parenthèses en Python 2. Python 3 >>> print( Bonjour., a vaut, 2) Bonjour. a vaut 2 Python 2 >>> print( Bonjour, a vaut, 2) ( Bonjour., a vaut, 2) >>> print Bonjour, a vaut, 2 Bonjour. a vaut La commande input La conversion en entier ou en flottant est faite automatiquement :

12 Python 3 >>> n=input( Entrez un entier ) Entrez un entier 3 >>> type(n) <class str > Python 2 >>> n=input( Entrez un entier ) Entrez un entier 3 >>> type(n) <class int > 3.4 La division entière Si les opérandes sont entières, la divion / est une division entière en Python 2. Python 3 >>> 3/2.5 >>> 3//2 >>> 3/2.0.5 >>> 3 // Python 2 >>> 3/2 >>> 3//2 >>> 3/2.0.5 >>> 3 //

TP 1. Prise en main du langage Python

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

Plus en détail

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. 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

Plus en détail

USTL - Licence ST-A 1ère année 2005-2006 Codage de l information TP 1 :

USTL - Licence ST-A 1ère année 2005-2006 Codage de l information TP 1 : USTL - Licence ST-A 1ère année 2005-2006 Codage de l information TP 1 : Objectifs du TP Ce TP a pour but 1. de découvrir quelques opérations logiques sur les nombres 2. et quelques formats de fichiers.

Plus en détail

Logiciel de Base. I. Représentation des nombres

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

Plus en détail

Chapitre 10 Arithmétique réelle

Chapitre 10 Arithmétique réelle Chapitre 10 Arithmétique réelle Jean Privat Université du Québec à Montréal INF2170 Organisation des ordinateurs et assembleur Automne 2013 Jean Privat (UQAM) 10 Arithmétique réelle INF2170 Automne 2013

Plus en détail

Conversion d un entier. Méthode par soustraction

Conversion d un entier. Méthode par soustraction Conversion entre bases Pour passer d un nombre en base b à un nombre en base 10, on utilise l écriture polynomiale décrite précédemment. Pour passer d un nombre en base 10 à un nombre en base b, on peut

Plus en détail

Initiation à la programmation en Python

Initiation à la programmation en Python I-Conventions Initiation à la programmation en Python Nom : Prénom : Une commande Python sera écrite en caractère gras. Exemples : print 'Bonjour' max=input("nombre maximum autorisé :") Le résultat de

Plus en détail

Présentation du langage et premières fonctions

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

Plus en détail

Informatique Générale

Informatique Générale Informatique Générale Guillaume Hutzler Laboratoire IBISC (Informatique Biologie Intégrative et Systèmes Complexes) guillaume.hutzler@ibisc.univ-evry.fr Cours Dokeos 625 http://www.ens.univ-evry.fr/modx/dokeos.html

Plus en détail

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 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

Plus en détail

Représentation des Nombres

Représentation des Nombres Chapitre 5 Représentation des Nombres 5. Representation des entiers 5.. Principe des représentations en base b Base L entier écrit 344 correspond a 3 mille + 4 cent + dix + 4. Plus généralement a n a n...

Plus en détail

Programmation C. Apprendre à développer des programmes simples dans le langage C

Programmation C. Apprendre à développer des programmes simples dans le langage C Programmation C Apprendre à développer des programmes simples dans le langage C Notes de cours sont disponibles sur http://astro.u-strasbg.fr/scyon/stusm (attention les majuscules sont importantes) Modalités

Plus en détail

Info0101 Intro. à l'algorithmique et à la programmation. Cours 3. Le langage Java

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

Plus en détail

IFT2880 Organisation des ordinateurs et systèmes

IFT2880 Organisation des ordinateurs et systèmes Représentation des nombres flottants Notation exponentielle Représentations équivalentes dans la base 10 de 1,234 1 2 3, 4 0 0. 0 x 1 0-2 1 2, 3 4 0. 0 x 1 0-1 1, 2 3 4. 0 x 1 0 1 2 3. 4 x 1 0 1 2. 3 4

Plus en détail

2 Comment fonctionne un ordinateur, dans les grandes lignes

2 Comment fonctionne un ordinateur, dans les grandes lignes Programmation 1 Cours n 1 GB3, 2 nd semestre 2014-2015 Cours de Python Gilles Bernot Les notes de cours et les feuilles de TD sont disponibles (avec un peu de retard par rapport au déroulement du cours)

Plus en détail

Codage d information. Codage d information : -Définition-

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

Plus en détail

Représentation d un entier en base b

Représentation d un entier en base b Représentation d un entier en base b 13 octobre 2012 1 Prérequis Les bases de la programmation en langage sont supposées avoir été travaillées L écriture en base b d un entier est ainsi défini à partir

Plus en détail

ALGORITHMIQUE ET PROGRAMMATION En C

ALGORITHMIQUE ET PROGRAMMATION En C Objectifs ALGORITHMIQUE ET PROGRAMMATION Une façon de raisonner Automatiser la résolution de problèmes Maîtriser les concepts de l algorithmique Pas faire des spécialistes d un langage Pierre TELLIER 2

Plus en détail

STAGE IREM 0- Premiers pas en Python

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

Plus en détail

Architecture des ordinateurs TD1 - Portes logiques et premiers circuits

Architecture des ordinateurs TD1 - Portes logiques et premiers circuits Architecture des ordinateurs TD1 - Portes logiques et premiers circuits 1 Rappel : un peu de logique Exercice 1.1 Remplir la table de vérité suivante : a b a + b ab a + b ab a b 0 0 0 1 1 0 1 1 Exercice

Plus en détail

Cours 1 : Introduction Ordinateurs - Langages de haut niveau - Application

Cours 1 : Introduction Ordinateurs - Langages de haut niveau - Application Université de Provence Licence Math-Info Première Année V. Phan Luong Algorithmique et Programmation en Python Cours 1 : Introduction Ordinateurs - Langages de haut niveau - Application 1 Ordinateur Un

Plus en détail

Bases de programmation. Cours 5. Structurer les données

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

Plus en détail

Architecture matérielle des systèmes informatiques

Architecture matérielle des systèmes informatiques Architecture matérielle des systèmes informatiques IDEC, Renens. Version novembre 2003. Avertissement : ce support de cours n est pas destiné à l autoformation et doit impérativement être complété par

Plus en détail

Algorithme. Table des matières

Algorithme. Table des matières 1 Algorithme Table des matières 1 Codage 2 1.1 Système binaire.............................. 2 1.2 La numérotation de position en base décimale............ 2 1.3 La numérotation de position en base binaire..............

Plus en détail

L informatique en BCPST

L informatique en BCPST L informatique en BCPST Présentation générale Sylvain Pelletier Septembre 2014 Sylvain Pelletier L informatique en BCPST Septembre 2014 1 / 20 Informatique, algorithmique, programmation Utiliser la rapidité

Plus en détail

Arithmétique binaire. Chapitre. 5.1 Notions. 5.1.1 Bit. 5.1.2 Mot

Arithmétique binaire. Chapitre. 5.1 Notions. 5.1.1 Bit. 5.1.2 Mot Chapitre 5 Arithmétique binaire L es codes sont manipulés au quotidien sans qu on s en rende compte, et leur compréhension est quasi instinctive. Le seul fait de lire fait appel au codage alphabétique,

Plus en détail

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/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

Plus en détail

LES TYPES DE DONNÉES DU LANGAGE PASCAL

LES TYPES DE DONNÉES DU LANGAGE PASCAL LES TYPES DE DONNÉES DU LANGAGE PASCAL 75 LES TYPES DE DONNÉES DU LANGAGE PASCAL CHAPITRE 4 OBJECTIFS PRÉSENTER LES NOTIONS D ÉTIQUETTE, DE CONS- TANTE ET DE IABLE DANS LE CONTEXTE DU LAN- GAGE PASCAL.

Plus en détail

IN 102 - Cours 1. 1 Informatique, calculateurs. 2 Un premier programme en C

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

Plus en détail

Cours 1 : Introduction. Langages objets. but du module. contrôle des connaissances. Pourquoi Java? présentation du module. Présentation de Java

Cours 1 : Introduction. Langages objets. but du module. contrôle des connaissances. Pourquoi Java? présentation du module. Présentation de Java Langages objets Introduction M2 Pro CCI, Informatique Emmanuel Waller, LRI, Orsay présentation du module logistique 12 blocs de 4h + 1 bloc 2h = 50h 1h15 cours, 45mn exercices table, 2h TD machine page

Plus en détail

IV- Comment fonctionne un ordinateur?

IV- Comment fonctionne un ordinateur? 1 IV- Comment fonctionne un ordinateur? L ordinateur est une alliance du hardware (le matériel) et du software (les logiciels). Jusqu à présent, nous avons surtout vu l aspect «matériel», avec les interactions

Plus en détail

TP 1 : 1 Calculs en binaire, octal et hexadécimal

TP 1 : 1 Calculs en binaire, octal et hexadécimal Univ. Lille 1 - Licence Informatique 2ème année 2013-14 Objectifs du TP Ce TP a pour but Codage de l'information TP 1 : 1. de découvrir quelques opérations logiques sur les nombres 2. et quelques formats

Plus en détail

Système binaire. Algèbre booléenne

Système binaire. Algèbre booléenne Algèbre booléenne Système binaire Système digital qui emploie des signaux à deux valeurs uniques En général, les digits employés sont 0 et 1, qu'on appelle bits (binary digits) Avantages: on peut utiliser

Plus en détail

MICROINFORMATIQUE NOTE D APPLICATION 1 (REV. 2011) ARITHMETIQUE EN ASSEMBLEUR ET EN C

MICROINFORMATIQUE NOTE D APPLICATION 1 (REV. 2011) ARITHMETIQUE EN ASSEMBLEUR ET EN C Haute Ecole d Ingénierie et de Gestion Du Canton du Vaud MICROINFORMATIQUE NOTE D APPLICATION 1 (REV. 2011) ARITHMETIQUE EN ASSEMBLEUR ET EN C Programmation en mode simulation 1. DOCUMENTS DE RÉFÉRENCE...

Plus en détail

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

Plus en détail

Licence Sciences et Technologies Examen janvier 2010

Licence Sciences et Technologies Examen janvier 2010 Université de Provence Introduction à l Informatique Licence Sciences et Technologies Examen janvier 2010 Année 2009-10 Aucun document n est autorisé Les exercices peuvent être traités dans le désordre.

Plus en détail

Découverte de Python

Découverte de Python Découverte de Python Python est un des langages informatiques au programme des concours à partir de la session 2015. Ce tutoriel vous permettra de vous mettre à peu près à niveau de ce qui a été fait en

Plus en détail

Algorithmique et Programmation, IMA

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

Plus en détail

INITIATION AU LANGAGE C SUR PIC DE MICROSHIP

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

Plus en détail

Rappels Entrées -Sorties

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

Plus en détail

V- Manipulations de nombres en binaire

V- Manipulations de nombres en binaire 1 V- Manipulations de nombres en binaire L ordinateur est constitué de milliards de transistors qui travaillent comme des interrupteurs électriques, soit ouverts soit fermés. Soit la ligne est activée,

Plus en détail

Cours d Informatique

Cours d Informatique Cours d Informatique 1ère année SM/SMI 2007/2008, Info 2 Département de Mathématiques et d Informatique, Université Mohammed V elbenani@hotmail.com sayah@fsr.ac.ma 2007/2008 Info2, 1ère année SM/SMI 1

Plus en détail

Définition 0,752 = 0,7 + 0,05 + 0,002 SYSTÈMES DE NUMÉRATION POSITIONNELS = 7 10 1 + 5 10 2 + 2 10 3

Définition 0,752 = 0,7 + 0,05 + 0,002 SYSTÈMES DE NUMÉRATION POSITIONNELS = 7 10 1 + 5 10 2 + 2 10 3 8 Systèmes de numération INTRODUCTION SYSTÈMES DE NUMÉRATION POSITIONNELS Dans un système positionnel, le nombre de symboles est fixe On représente par un symbole chaque chiffre inférieur à la base, incluant

Plus en détail

La mémoire. Un ordinateur. L'octet. Le bit

La mémoire. Un ordinateur. L'octet. Le bit Introduction à l informatique et à la programmation Un ordinateur Un ordinateur est une machine à calculer composée de : un processeur (ou unité centrale) qui effectue les calculs une mémoire qui conserve

Plus en détail

Recherche dans un tableau

Recherche dans un tableau Chapitre 3 Recherche dans un tableau 3.1 Introduction 3.1.1 Tranche On appelle tranche de tableau, la donnée d'un tableau t et de deux indices a et b. On note cette tranche t.(a..b). Exemple 3.1 : 3 6

Plus en détail

Cours d Algorithmique et de Langage C 2005 - v 3.0

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

Plus en détail

Créer le schéma relationnel d une base de données ACCESS

Créer le schéma relationnel d une base de données ACCESS Utilisation du SGBD ACCESS Polycopié réalisé par Chihab Hanachi et Jean-Marc Thévenin Créer le schéma relationnel d une base de données ACCESS GENERALITES SUR ACCESS... 1 A PROPOS DE L UTILISATION D ACCESS...

Plus en détail

DM 1 : Montre Autoquartz ETA

DM 1 : Montre Autoquartz ETA Lycée Masséna DM 1 : Montre Autoquartz ETA 1 Présentation de la montre L essor de l électronique nomade s accompagne d un besoin accru de sources d énergies miniaturisées. Les contraintes imposées à ces

Plus en détail

Maple: premiers calculs et premières applications

Maple: premiers calculs et premières applications TP Maple: premiers calculs et premières applications Maple: un logiciel de calcul formel Le logiciel Maple est un système de calcul formel. Alors que la plupart des logiciels de mathématiques utilisent

Plus en détail

Atelier C TIA Portal CTIA04 : Programmation des automates S7-300 Opérations numériques

Atelier C TIA Portal CTIA04 : Programmation des automates S7-300 Opérations numériques Atelier C TIA Portal CTIA04 : Programmation des automates S7-300 Opérations numériques CTIA04 Page 1 1. Les types de données sous S7 300 Il existe plusieurs types de données utilisées pour la programmation

Plus en détail

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 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

Plus en détail

Puissances d un nombre relatif

Puissances d un nombre relatif Puissances d un nombre relatif Activités 1. Puissances d un entier relatif 1. Diffusion d information (Activité avec un tableur) Stéphane vient d apprendre à 10h, la sortie d une nouvelle console de jeu.

Plus en détail

I00 Éléments d architecture

I00 Éléments d architecture I00 I Exemples d ordinateur Pour les informaticiens, différentes machines de la vie courante sont des ordinateurs : par exemple les ordinateurs portables, les ordinateurs fixes, mais aussi les supercalculateurs,

Plus en détail

Introduction à NetCDF

Introduction à NetCDF Introduction à NetCDF École normale supérieure L3 géosciences 2014/2015 Lionel GUEZ guez@lmd.ens.fr Laboratoire de météorologie dynamique Explications préliminaires Deux distinctions générales sur les

Plus en détail

Partie 1. Professeur : Haouati Abdelali. CPGE Lycée Omar Ibn Lkhattab - Meknès www.haouati.com haouaticpge@gmail.com

Partie 1. Professeur : Haouati Abdelali. CPGE Lycée Omar Ibn Lkhattab - Meknès www.haouati.com haouaticpge@gmail.com Partie 1 Professeur : Haouati Abdelali CPGE Lycée Omar Ibn Lkhattab - Meknès www.haouati.com haouaticpge@gmail.com Partie I : Généralités et algorithmique de base 1. Environnement matériel et logiciel

Plus en détail

Projet Matlab : un logiciel de cryptage

Projet Matlab : un logiciel de cryptage Projet Matlab : un logiciel de cryptage La stéganographie (du grec steganos : couvert et graphein : écriture) consiste à dissimuler une information au sein d'une autre à caractère anodin, de sorte que

Plus en détail

Introduction à l informatique en BCPST

Introduction à l informatique en BCPST Introduction à l informatique en BCPST Alexandre Benoit BCPST L informatique en BCPST «L enseignement de l informatique en classes préparatoires de la filière BCPST a pour objectif d introduire puis de

Plus en détail

Algorithmique et programmation : les bases (VBA) Corrigé

Algorithmique et programmation : les bases (VBA) Corrigé PAD INPT ALGORITHMIQUE ET PROGRAMMATION 1 Cours VBA, Semaine 1 mai juin 2006 Corrigé Résumé Ce document décrit l écriture dans le langage VBA des éléments vus en algorithmique. Table des matières 1 Pourquoi

Plus en détail

Chapitre 1 I:\ Soyez courageux!

Chapitre 1 I:\ Soyez courageux! Chapitre 1 I:\ Soyez courageux! Pour ne rien vous cacher, le langage d'assembleur (souvent désigné sous le terme "Assembleur", bien que ce soit un abus de langage, puisque "Assembleur" désigne le logiciel

Plus en détail

Manuel d utilisation 26 juin 2011. 1 Tâche à effectuer : écrire un algorithme 2

Manuel d utilisation 26 juin 2011. 1 Tâche à effectuer : écrire un algorithme 2 éducalgo Manuel d utilisation 26 juin 2011 Table des matières 1 Tâche à effectuer : écrire un algorithme 2 2 Comment écrire un algorithme? 3 2.1 Avec quoi écrit-on? Avec les boutons d écriture........

Plus en détail

Programmation Web. Madalina Croitoru IUT Montpellier

Programmation Web. Madalina Croitoru IUT Montpellier Programmation Web Madalina Croitoru IUT Montpellier Organisation du cours 4 semaines 4 ½ h / semaine: 2heures cours 3 ½ heures TP Notation: continue interrogation cours + rendu à la fin de chaque séance

Plus en détail

Priorités de calcul :

Priorités de calcul : EXERCICES DE REVISION POUR LE PASSAGE EN QUATRIEME : Priorités de calcul : Exercice 1 : Calcule en détaillant : A = 4 + 5 6 + 7 B = 6 3 + 5 C = 35 5 3 D = 6 7 + 8 E = 38 6 3 + 7 Exercice : Calcule en détaillant

Plus en détail

Architecture de l ordinateur

Architecture de l ordinateur Architecture de l ordinateur Emmanuel Lazard Université Paris-Dauphine mars 2011 Computers are my forte! BRAZIL (Terry Gilliam, 1985) Ce document a initialement été publié sous forme de livre : Emmanuel

Plus en détail

TD : Codage des images

TD : Codage des images TD : Codage des images Les navigateurs Web (Netscape, IE, Mozilla ) prennent en charge les contenus textuels (au format HTML) ainsi que les images fixes (GIF, JPG, PNG) ou animée (GIF animée). Comment

Plus en détail

Cours 1 : La compilation

Cours 1 : La compilation /38 Interprétation des programmes Cours 1 : La compilation Yann Régis-Gianas yrg@pps.univ-paris-diderot.fr PPS - Université Denis Diderot Paris 7 2/38 Qu est-ce que la compilation? Vous avez tous déjà

Plus en détail

Comme chaque ligne de cache a 1024 bits. Le nombre de lignes de cache contenu dans chaque ensemble est:

Comme chaque ligne de cache a 1024 bits. Le nombre de lignes de cache contenu dans chaque ensemble est: Travaux Pratiques 3. IFT 1002/IFT 1005. Structure Interne des Ordinateurs. Département d'informatique et de génie logiciel. Université Laval. Hiver 2012. Prof : Bui Minh Duc. Tous les exercices sont indépendants.

Plus en détail

Python - introduction à la programmation et calcul scientifique

Python - introduction à la programmation et calcul scientifique Université de Strasbourg Environnements Informatique Python - introduction à la programmation et calcul scientifique Feuille de TP 1 Avant de commencer Le but de ce TP est de vous montrer les bases de

Plus en détail

Microprocesseur + Logiciel

Microprocesseur + Logiciel Microprocesseur + Logiciel Robot EVALBOT MOHAMED AKIL BUREAU 5253 UNITE IGI 1001 PROGRAMMATION DES MICROPROCESSEURS Présentation [IGI1001] CONTEXTE SCIENTIFIQUE... 4 1. OBJECTIFS DE L UNITE... 6 2. OBJECTIFS

Plus en détail

INTRODUCTION A JAVA. Fichier en langage machine Exécutable

INTRODUCTION A JAVA. Fichier en langage machine Exécutable INTRODUCTION A JAVA JAVA est un langage orienté-objet pur. Il ressemble beaucoup à C++ au niveau de la syntaxe. En revanche, ces deux langages sont très différents dans leur structure (organisation du

Plus en détail

INF 321 : mémento de la syntaxe de Java

INF 321 : mémento de la syntaxe de Java INF 321 : mémento de la syntaxe de Java Table des matières 1 La structure générale d un programme 3 2 Les composants élémentaires de Java 3 2.1 Les identificateurs.................................. 3 2.2

Plus en détail

SHERLOCK 7. Version 1.2.0 du 01/09/09 JAVASCRIPT 1.5

SHERLOCK 7. Version 1.2.0 du 01/09/09 JAVASCRIPT 1.5 SHERLOCK 7 Version 1.2.0 du 01/09/09 JAVASCRIPT 1.5 Cette note montre comment intégrer un script Java dans une investigation Sherlock et les différents aspects de Java script. S T E M M E R I M A G I N

Plus en détail

Cours d algorithmique pour la classe de 2nde

Cours d algorithmique pour la classe de 2nde Cours d algorithmique pour la classe de 2nde F.Gaudon 10 août 2009 Table des matières 1 Avant la programmation 2 1.1 Qu est ce qu un algorithme?................................. 2 1.2 Qu est ce qu un langage

Plus en détail

CORRIGE LES NOMBRES DECIMAUX RELATIFS. «Réfléchir avant d agir!»

CORRIGE LES NOMBRES DECIMAUX RELATIFS. «Réfléchir avant d agir!» Corrigé Cours de Mr JULES v3.3 Classe de Quatrième Contrat 1 Page 1 sur 13 CORRIGE LES NOMBRES DECIMAUX RELATIFS. «Réfléchir avant d agir!» «Correction en rouge et italique.» I. Les nombres décimaux relatifs.

Plus en détail

TP : Gestion d une image au format PGM

TP : Gestion d une image au format PGM TP : Gestion d une image au format PGM Objectif : L objectif du sujet est de créer une classe de manipulation d images au format PGM (Portable GreyMap), et de programmer des opérations relativement simples

Plus en détail

Le langage C. Séance n 4

Le langage C. Séance n 4 Université Paris-Sud 11 Institut de Formation des Ingénieurs Remise à niveau INFORMATIQUE Année 2007-2008 Travaux pratiques d informatique Le langage C Séance n 4 But : Vous devez maîtriser à la fin de

Plus en détail

Compléments de documentation Scilab : affichage de texte et formatage de nombres

Compléments de documentation Scilab : affichage de texte et formatage de nombres Université des Sciences et Technologies de Lille U.F.R. de Mathématiques Pures et Appliquées Agrégation externe Année 2002-2003 Compléments de documentation Scilab : affichage de texte et formatage de

Plus en détail

1 Définition et Appel d une fonction. V. Phan Luong. Cours 4 : Fonctions

1 Définition et Appel d une fonction. V. Phan Luong. Cours 4 : Fonctions Université de Provence Licence Math-Info Première Année V. Phan Luong Algorithmique et Programmation en Python Cours 4 : Fonctions La construction de fonctions dans un langage de programmation permet aux

Plus en détail

Initiation. àl algorithmique et à la programmation. en C

Initiation. àl algorithmique et à la programmation. en C Initiation àl algorithmique et à la programmation en C Initiation àl algorithmique et à la programmation en C Cours avec 129 exercices corrigés Illustration de couverture : alwyncooper - istock.com Dunod,

Plus en détail

Représentation d un nombre en machine, erreurs d arrondis

Représentation d un nombre en machine, erreurs d arrondis Chapitre Représentation d un nombre en machine, erreurs d arrondis Ce chapitre est une introduction à la représentation des nombres en machine et aux erreurs d arrondis, basé sur [], [].. Un exemple :

Plus en détail

Conception de circuits numériques et architecture des ordinateurs

Conception de circuits numériques et architecture des ordinateurs Conception de circuits numériques et architecture des ordinateurs Frédéric Pétrot Année universitaire 2014-2015 Structure du cours C1 C2 C3 C4 C5 C6 C7 C8 C9 C10 C11 Codage des nombres en base 2, logique

Plus en détail

I- Définitions des signaux.

I- Définitions des signaux. 101011011100 010110101010 101110101101 100101010101 Du compact-disc, au DVD, en passant par l appareil photo numérique, le scanner, et télévision numérique, le numérique a fait une entrée progressive mais

Plus en détail

Définition : On obtient les nombres entiers en ajoutant ou retranchant des unités à zéro.

Définition : On obtient les nombres entiers en ajoutant ou retranchant des unités à zéro. Chapitre : Les nombres rationnels Programme officiel BO du 8/08/08 Connaissances : Diviseurs communs à deux entiers, PGCD. Fractions irréductibles. Opérations sur les nombres relatifs en écriture fractionnaire.

Plus en détail

UE Programmation Impérative Licence 2ème Année 2014 2015

UE Programmation Impérative Licence 2ème Année 2014 2015 UE Programmation Impérative Licence 2 ème Année 2014 2015 Informations pratiques Équipe Pédagogique Florence Cloppet Neilze Dorta Nicolas Loménie prenom.nom@mi.parisdescartes.fr 2 Programmation Impérative

Plus en détail

IFT1215 Introduction aux systèmes informatiques

IFT1215 Introduction aux systèmes informatiques Introduction aux circuits logiques de base IFT25 Architecture en couches Niveau 5 Niveau 4 Niveau 3 Niveau 2 Niveau Niveau Couche des langages d application Traduction (compilateur) Couche du langage d

Plus en détail

Initiation à la Programmation en Logique avec SISCtus Prolog

Initiation à la Programmation en Logique avec SISCtus Prolog Initiation à la Programmation en Logique avec SISCtus Prolog Identificateurs Ils sont représentés par une suite de caractères alphanumériques commençant par une lettre minuscule (les lettres accentuées

Plus en détail

Algèbre binaire et Circuits logiques (2007-2008)

Algèbre binaire et Circuits logiques (2007-2008) Université Mohammed V Faculté des Sciences Département de Mathématiques et Informatique Filière : SMI Algèbre binaire et Circuits logiques (27-28) Prof. Abdelhakim El Imrani Plan. Algèbre de Boole 2. Circuits

Plus en détail

Cours 7 : Utilisation de modules sous python

Cours 7 : Utilisation de modules sous python Cours 7 : Utilisation de modules sous python 2013/2014 Utilisation d un module Importer un module Exemple : le module random Importer un module Exemple : le module random Importer un module Un module est

Plus en détail

Notions fondamentales du langage C# Version 1.0

Notions fondamentales du langage C# Version 1.0 Notions fondamentales du langage C# Version 1.0 Z 2 [Notions fondamentales du langage Csharp] [Date : 25/03/09] Sommaire 1 Tout ce qu il faut savoir pour bien commencer... 3 1.1 Qu est ce qu un langage

Plus en détail

DOCM 2013 http://docm.math.ca/ Solutions officielles. 1 2 10 + 1 2 9 + 1 2 8 = n 2 10.

DOCM 2013 http://docm.math.ca/ Solutions officielles. 1 2 10 + 1 2 9 + 1 2 8 = n 2 10. A1 Trouvez l entier positif n qui satisfait l équation suivante: Solution 1 2 10 + 1 2 9 + 1 2 8 = n 2 10. En additionnant les termes du côté gauche de l équation en les mettant sur le même dénominateur

Plus en détail

Préparation à l examen EFA en Macro

Préparation à l examen EFA en Macro Préparation à l examen EFA en Macro Exercice sur les macros en Word / Excel Les questions suivantes doivent constituer un bref rafraîchissement et vous aider à situer le niveau de vos connaissances : Question

Plus en détail

Programmation en langage C

Programmation en langage C Programmation en langage C Anne CANTEAUT INRIA - projet CODES B.P. 105 78153 Le Chesnay Cedex Anne.Canteaut@inria.fr http://www-rocq.inria.fr/codes/anne.canteaut/cours C 2 Table des matières 3 Table des

Plus en détail

CQP 112 Introduc/on à la programma/on. Thème 2 : Architecture d un système informa/que. Département d informa/que

CQP 112 Introduc/on à la programma/on. Thème 2 : Architecture d un système informa/que. Département d informa/que CQP 112 Introduc/on à la programma/on Thème 2 : Architecture d un système informa/que Département d informa/que CQP 112 : Introduc/on à la programma/on Plan 1. Historique des ordinateurs 2. Composants

Plus en détail

Introduction au langage C

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

Plus en détail

Cours Informatique 1. Monsieur SADOUNI Salheddine

Cours Informatique 1. Monsieur SADOUNI Salheddine Cours Informatique 1 Chapitre 2 les Systèmes Informatique Monsieur SADOUNI Salheddine Un Système Informatique lesystème Informatique est composé de deux parties : -le Matériel : constitué de l unité centrale

Plus en détail

PROJET ALGORITHMIQUE ET PROGRAMMATION II

PROJET ALGORITHMIQUE ET PROGRAMMATION II PROJET 1 ALGORITHMIQUE ET PROGRAMMATION II CONTENU DU RAPPORT A RENDRE : o Fiche signalétique du binôme o Listing des différents fichiers sources o CD sources o Il sera tenu compte de la présentation du

Plus en détail

1 Recherche en table par balayage

1 Recherche en table par balayage 1 Recherche en table par balayage 1.1 Problème de la recherche en table Une table désigne une liste ou un tableau d éléments. Le problème de la recherche en table est celui de la recherche d un élément

Plus en détail

EVALUATIONS MI-PARCOURS CM2

EVALUATIONS MI-PARCOURS CM2 Les enseignants de CM2 de la circonscription de METZ-SUD proposent EVALUATIONS MI-PARCOURS CM2 Mathématiques Livret enseignant NOMBRES ET CALCUL Circonscription de METZ-SUD Page 1 Séquence 1 : Exercice

Plus en détail

Algorithmique & Langage C IUT GEII S1. Notes de cours (première partie) cours_algo_lgc1.17.odp. Licence

Algorithmique & Langage C IUT GEII S1. Notes de cours (première partie) cours_algo_lgc1.17.odp. Licence Licence Algorithmique & Langage C Paternité - Pas d'utilisation Commerciale Partage des Conditions Initiales à l'identique 2.0 France Vous êtes libres : * de reproduire, distribuer et communiquer cette

Plus en détail