Initiation à la programmation

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

Download "Initiation à la programmation"

Transcription

1 Chapitre 4 Initiation à la programmation Un langage de programmation est un jeu d instructions élémentaires donné avec un ensemble de règles d assemblage permettant de réaliser n importe quel calcul. Nous présentons ici une introduction très succincte à Python, langage autorisant la programmation impérative et la programmation orientée-objet, portable sur la plupart des OS (Unix, Mac Os, Windows,... ), placé sous la licence BSD (pour Berkeley Software Distribution) et disponible gratuitement, aussi bien utilisable pour écrire des programmes de quelques lignes que des projets très complexes. Le site officiel de Python est Vous pourrez y télécharger le langage dans la version correspondant au système d exploitation que vous utilisez, ainsi que de la documentation. En particulier, le tutoriel de Guido van Rossum, l auteur principal de Python, est bien conçu pour apprendre le langage ( Un très bon ouvrage en français est Apprendre à programmer avec Python, de Gérard Swinnen, Eds O Reilly. 4.1 Programmer en Python Un programme écrit dans un langage de programmation donné est une suite d instructions élémentaires choisies parmi les instructions proposées par le langage et respectant des règles d assemblage, une syntaxe, précisément définies par le langage. Un programme est écrit à l aide d un éditeur de texte, comme Emacs, et est appelé code source. Il ne constitue pas encore un objet directement exécutable par par la machine. Pour pouvoir être exécuté, il faut qu il soit traduit en instructions directement exécutables par la machine, 39

2 40 CHAPITRE 4. INITIATION À LA PROGRAMMATION c est-à-dire en langage machine. Deux techniques sont utilisées pour cela, l interprétation et la compilation. Dans la première, le programme source est analysé et traduit à la volée en langage machine, les instructions résultantes étant immédiatement exécutées. Dans la seconde, un compilateur analyse et traduit le programme source en un programme objet qui peut à son tour être directement exécuté. Un programme écrit en Python peut être aussi bien interprété que compilé : nous n utiliserons que la première technique. Les programmes sources seront écrits dans des fichiers dont le nom aura l extension.py, par exemple PremierProgramme.py. Ils seront exécutés par la commande python PremierProgramme.py lancée dans un terminal Les données Tout langage de programmation comprend des types de données élémentaires, permettant en général de travailler directement sur des nombres entiers, des nombres réels, des caractères, des chaînes de caractères,..., ainsi qu un certain nombre de constructeurs de types permettant de travailler sur des types de données plus complexes (tableaux, listes, dictionnaires,... ). Nous étudierons principalement dans cette introduction le type entier, permettant de coder des nombres entiers, et le constructeur de listes Les opérations sur les nombres Les opérations usuelles sont prédéfinies : + (addition), - (soustraction), * (multiplication) et / (division). Le programme # prog1.py # écrit par F. Denis, # le 13/10/07 print 31+7 print 31-7 print 31*7 print 31/7 # Attention : division entière print 31.0/7 print 31**7 # exponentiation print 31%7 # reste de la division euclidienne sauvegardé dans le fichier prog1.py, après exécution de la commande python prog1.py, produira l affichage suivant :

3 4.1. PROGRAMMER EN PYTHON Commentaires : print est une instruction d affichage ; les commentaires sont des informations ajoutées par le programmeur au programme source qui ne doivent pas être interprétées par la machine : en Python, il suffit de les faire précéder du caractère # ; par défaut, la division de deux entiers a et b produit un entier, quotient de la division euclidienne de a par b ; si l on souhaite obtenir le résultat de la division réelle, on peut par exemple ajouter un point décimal à l un ou l autre Les variables Une variable est un objet qui possède un nom qui fait référence à un espace de la mémoire vive de l ordinateur dans lequel est stockée une donnée : la valeur de la variable. Les noms des variables en Python sont des séquences de lettres et de chiffres qui doivent commencer par une lettre et ne pas contenir de caractères accentués ou spéciaux. Les lettres minuscules et majuscules sont distinguées. Quelques mots réservés par le langage (comme print) ne doivent pas être utilisés comme nom de variables, afin de ne pas créer d ambiguïté. Un programme est d autant plus lisible que le nom des variables reflète leur sens dans le programme. Par exemple, si des variables doivent désigner la hauteur et la largeur d un rectangle, on préférera utiliser les noms hauteur et largeur plutôt que x et y. L opération consistant à définir la valeur d une variable est appelée affectation. Elle s effectue en Python à l aide du signe =. L affichage de la valeur d une variable se fait au moyen de l instruction print. Le programme suivant n=3 print n n=5 # la variable n change de valeur print n

4 42 CHAPITRE 4. INITIATION À LA PROGRAMMATION n=n+3 # la nouvelle valeur de la variable n dépend de l ancienne print n m=n # la valeur de la variable m est égale à celle de n print m n=n*n print n,m # la valeur de m n est plus égale à celle de n m,n=n,m # affectation simultanée des deux variables n et m. print n,m # les valeurs de m et n ont été permutées produit l affichage Commentaires : l affectation d une valeur à une variable est temporaire : elle peut être modifiée à tout moment ; les variables peuvent être utilisées dans des calculs, les opérations s appliquant alors à leurs valeurs ; la permutation simultanée des valeurs de deux variables est interdite dans la plupart des langages de programmation autres que Python. La commande d affichage print peut prendre plusieurs arguments, qui peuvent être des variables ou des constantes de différents types. L exécution du programme suivant n=12 n2=n*n print le carré de,n, est,n2 produira l affichage le carré de 12 est 144 Remarque : pour pouvoir afficher correctement les caractères accentués (deuxième partie de la table ASCII), il faut indiquer à l interpréteur Python quel jeu de caractères utiliser. Pour cela, il faut ajouter une ligne en tête du programme qui peut être # -*- coding:latin-1 -*-

5 4.1. PROGRAMMER EN PYTHON 43 ou # -*- coding:utf-8 -*- Un programme doit pouvoir communiquer avec un utilisateur, par exemple en lui permettant de définir la valeur d une variable. On appelle saisie cette opération, réalisée en Python au moyen de l instruction input. Le programme # -*- coding:latin-1 -*- n=input( Entrez un nombre : ) print le carré de,n, est,n*n produira d abord l affichage Entrez un nombre : attendant que l utilisateur tape un nombre suivi de la touche Entrée. Le programme calcule alors et affiche le carré de ce nombre. Par exemple, Entrez un nombre : 3 le carré de 3 est Les instructions conditionnelles Les programmes précédents sont des séquences d instructions élémentaires qui sont toutes exécutées les unes à la suites des autres. Un calcul doit donner la possibilité de n effectuer une opération que si telle donnée vérifie telle condition. On appelle instruction d exécution conditionnelle les instructions permettant ce contrôle à l exécution du programme. On utilise essentiellement deux instructions d exécution conditionnelle :... if (condition): instruction1... et... if (condition): instruction1 else: instruction2...

6 44 CHAPITRE 4. INITIATION À LA PROGRAMMATION Dans le premier cas, l instruction 1 n est exécutée que si la condition est vérifiée ; dans le second cas, l instruction 1 est exécutée ssi la condition est vérifiée et l instruction 2 est exécutée ssi la condition n est pas vérifiée. Une condition est une expression logique qui, lorsqu elle est exécutée, est soit vraie, soit fausse. Les conditions élémentaires portant sur des expressions numériques sont construites à l aide d opérateurs de comparaison. x == y # x est égal à y x!= y # x est différent de y x < y # x est plus petit que y x > y # x est plus grand que y x <= y # x est plus petit ou égal à y x >= y # x est plus grand ou égal à y Les expressions logiques élémentaires peuvent être combinées en des expressions complexes en utilisant les opérateurs logiques or, and et not. Le programme suivant affiche si le nombre saisi par l utilisateur est pair ou impair : # -*- coding:latin-1 -*- n=input( Entrez un nombre : ) if (n%2==0): # n est pair ssi le reste de la # division de n par 2 est nul print n, est pair else: print n, est impair Les structures de contrôles peuvent être imbriquées. Le programme suivant contrôle si l utilisateur saisit bien un nombre pair compris entre 0 et 10. # -*- coding:latin-1 -*- n=input( Entrez un nombre pair compris entre 0 et 10 : ) if (n%2==0)and (n>=0) and (n<=10): print n, a les bonnes propriétés else: if (n%2!=0): print n,"n est pas pair"

7 4.1. PROGRAMMER EN PYTHON 45 else: if (n>10): print n, est supérieur à 10 else: print n, est inférieur à 0 Remarque importante : un bloc d instructions est une suite d instructions dont l exécution est solidaire. Le programme précédent peut être défini comme un bloc de deux instructions dont la première est élémentaire et la seconde est composée. La partie else de la seconde instruction est un bloc composé d une instruction composée. En Python, les instructions composant un même bloc doivent être indentées de la même manière, c est-à-dire avec le même décalage. Lorsqu on utilise un éditeur comme Emacs sous Unix ou IDLE sous Windows, configuré pour écrire des programmes en Python, les indentations correspondent aux tabulations et sont proposées automatiquement lors de l écriture Les instructions répétitives Considérons la suite définie par récurrence par u 0 = 1 et n 0, u n+1 = 3u n + 1. Les instructions précédentes ne permettent pas d écrire un programme qui demande un nombre n à l utilisateur et affiche les n premiers termes de la suite. Pour cela, il est nécessaire de pouvoir répéter l exécution d un bloc de programme un certain nombre de fois défini au cours de l exécution du programme. L instruction while permet une telle répétition. Sa syntaxe en Python est définie par... while (condition): bloc d instructions... Tant que la condition est vérifiée, le bloc d instructions dépendant de cette condition est exécutée. Le programme suivant affiche les n premiers termes de la suite définie ci-dessus.

8 46 CHAPITRE 4. INITIATION À LA PROGRAMMATION u=1 nbtermes=input( Combien de termes souhaitez-vous afficher : ) compteur=1 while (compteur<=nbtermes): print u u=3*u+1 compteur=compteur+1 Commentaires : les conditions ont la même structure que dans les instructions conditionnelles ; si la condition est fausse, le bloc qui en dépend n est pas exécuté ; si la condition est vraie, le bloc est exécuté puis la condition est réévaluée ; si la condition ne devient jamais fausse, le bloc est réexécuté indéfiniment! Les fonctions Un bon principe de programmation consiste à isoler, sous forme de fonctions, des morceaux de codes servant à calculer des résultats partiels : cela permet en particulier de les réutiliser et de les tester séparément. La suite définie précédemment peut être calculée par la fonction suivante def u(n): #en-t^ete de la fonction # cette fonction calcule le terme d indice n de la suite # définie par u0=0 et un+1=3un+1 i=0 # une variable locale indiquant l indice d un terme val=1 # la valeur de la suite en 0 while (i<n): # l itération s arr^ete pour i=n val=3*val+1 # calcul du terme suivant i=i+1 # indice suivant return val # valeur cherchée Le code précédent définit une fonction u. La variable n figurant dans l entête de la fonction est un paramètre qui désignera l indice du terme qu on souhaite calculer. Les variables i et val qui figurent dans le code et servent à calculer le résultat sont des variables locales à la fonction : elles n existent que pendant l exécution du code de la fonction. Le résultat de la fonction est renvoyé à l aide de l instruction return. Un programme demandant à l utilisateur un indice et affichant le terme correspondant de la suite pourra alors être codé de la manière suivante :

9 4.1. PROGRAMMER EN PYTHON 47 indice=input( Indice : ) print u(indice) Les fonctions peuvent être composées. Soit v la suite définie par v n = 2u n 1 pour tout entier n. Elle peut être calculée par la fonction suivante : def v(n): # cette fonction calcule le terme d indice n # la suite définie par v=2un-1 return 2*u(n) Les modules Python contient un certain nombre de fonctions intégrées au langage comme abs(x) qui calcule la valeur absolue du nombre x ou max(x1,..., xn) qui calcule le plus grand parmi les nombres x1,..., xn. Un programmeur peut décider d écrire un ensemble de fonctions portant sur un sujet particulier et de les regrouper au sein d un fichier appelé module ou bibliothèque (library en anglais). Ces modules peuvent alors être inclus dans tout programme pour permettre l utilisation des fonctions qu ils contiennent. Des dizaines de modules préprogrammés sont disponibles dans les distributions de Python ou sur le site python.org : il existe par exemple un module math qui contient un grand nombre de fonctions mathématiques et un module random qui permet d accéder à des générateurs de nombres aléatoires. Pour inclure l ensemble des fonctions d un module machin, il suffit d écrire au début du programme : from machin import * où l * peut être remplacée par une liste de fonctions si l on sait exactement de quelles fonctions on a besoin. Par exemple, la fonction suivante calcule le nombre de bits nécessaires pour coder n objets. La fonction log(x,b) calcule le logarithme de x en base b ; la fonction ceil(x) calcule le plus petit entier supérieur ou égal à x. from math import log,ceil def nbbits(n): return ceil(log(n,2)) Les fonctions du module random que nous utiliserons sont :

10 48 CHAPITRE 4. INITIATION À LA PROGRAMMATION seed() qui initialise le générateur de nombre aléatoires en utilisant l horloge du système d exploitation, randint(a,b) qui retourne un entier compris entre a et b, random() qui retourne un réel compris dans l inteervalle [0, 1[. Une fonction qui tire à pile ou face et un programme qui affiche le résultat de 10 lancers : from random import * def PileOuFace(): if (randint(0,1)==0): print "pile" else: print "face" seed() i=1 while (i<=10): PileOuFace() i=i Exercices 1. La suite de Fibonacci est définie par : u 0 = 0, u 1 = 1 et n 0, u n+2 = u n+1 + u n. Ecrivez un programme qui affiche les n premiers termes de la suite, n étant demandé à l utilisateur. 2. La suite de Syracuse d un entier n est définie par u 0 = n, u n+1 = 3u n + 1 si u n est impair et u n+1 = u n /2 si n est pair. On conjecture que pour tout entier n, il existe un terme de sa suite de Syracuse égal à 1. Ecrivez le programme qui demande un entier n à l utilisateur et calcule tous les termes de la suite jusqu au premier terme égal à Pour tout entier n, écrivez un programme qui calcule le plus petit indice i(n) pour lequel u i(n) = Ecrivez un programme qui calcule les 100 premiers termes de la suite i(n).

11 4.2. UN EXEMPLE DE STRUCTURE DE DONNÉES : LES LISTES Un exemple de structure de données : les listes Le constructeur de listes permet de rassembler de façon ordonnée plusieurs éléments dans un seul objet. Ces éléments peuvent être de types différents Définition d une liste Une liste est définie comme une collection d éléments séparés par des virgules, l ensemble étant enfermé dans des crochets : jours = [ lundi, mardi, mercredi, jeudi, vendredi, samedi, dimanche ] ventes = [85, 82, 90, 83, 96, 100, "pas de vente le dimanche"] premiers = [2, 3, 5, 7, 11, 13, 17, 19, 23, 29] Dans cet exemple, la variable jours désigne une liste composée de chaînes de caractères, la variable ventes désigne une lsite composée d entiers et d une chaîne de caractères et enfin la variable premiers désigne la liste composée des 10 premiers nombres premiers Accès aux éléments, extraction d une sous-liste Dans une liste les éléments sont ordonnés, on peut donc directement accéder à un élément à une position données, ou encore considérer tous les élements compris entre deux positions. Attention! En informatique, les numérotations des listes et des tableaux commencent en général à 0. C est le cas en Python. Ainsi le i-ème élément de la liste est en position i 1. >>> print jours[0] lundi >>> print jours[1] mardi >>> print jours[7] IndexError: list index out of range Il est parfois utile d accéder au dernier élément d une liste dont on ne connaît pas le nombre d élément. En Python, le dernier élement d une liste peut être désigné par l indice -1, l avant-dernier par l indice -2, etc.

12 50 CHAPITRE 4. INITIATION À LA PROGRAMMATION >>> print jours[-1] dimanche >>> print jours[-2] samedi >>> print jours[1:3] [ mardi, mercredi ] >>> print jours[:3] [ lundi, mardi, mercredi ] >>> print jours[3:] [ jeudi, vendredi, samedi, dimanche ] Attention lors de l extraction d une sous-liste aux bornes gauches inclues et aux bornes droites exclues Concaténation, répétition On peut, comme on le fait en général pour les mots, concaténer ou répéter des listes. Les opérations correspondantes sont + et. L opération de répétition est par exemple utile pour créer une liste de grande taille ne contenant que des 0 : >>> debut = jours[:3] >>> fin = jours[3:] >>> semaine = debut+fin >>> print semaine [ lundi, mardi, mercredi, jeudi, vendredi, samedi, dimanche ] >>> zeros = [0]*10 >>> print zeros [0, 0, 0, 0, 0, 0, 0, 0, 0, 0] >>> deux_uns = [1, 1] >>> uns = deux_uns*5 >>> print uns [1, 1, 1, 1, 1, 1, 1, 1, 1, 1] Modification d une liste On a vu qu on pouvait accéder directement à un élément d une liste, on peut même le modifier directement!

13 4.2. UN EXEMPLE DE STRUCTURE DE DONNÉES : LES LISTES 51 >>> ventes[6] = 83 >>> print ventes [85, 82, 90, 83, 96, 100, 83] Opérations de base Longueur d une liste. On dispose d une fonction donnant la longueur d une listes, c est-à-dire le nombre d éléments appartenant à cette liste. Cette fonction est len : >>> n = len(ventes) >>> print n 7 >>> print len(jours) 7 Suppression d un élément. On peut également supprimer un élément d une liste en indiquant la position de l élément que l on souhaite supprimer : >>> print jours, len(jours) [ lundi, mardi, mercredi, jeudi, vendredi, samedi, dimanche ] 7 >>> del jours[2] >>> print jours, len(jours) [ lundi, mardi, jeudi, vendredi, samedi, dimanche ] Parcours d une liste Une particularité essentielle des listes est que les éléments sont ordonnés au sein de cette liste. Ceci a permis aux concepteurs de Python de proposer un moyen de parcourir les listes de façon très simple pour l utilisateur : >>> for jour in jours: print jour, lundi mardi jeudi vendredi samedi dimanche >>> proverbe = [ La, raison, du, plus, fort, est, toujours, la, meilleure ] >>> for mot in proverbe: print mot, La raison du plus fort est toujours la meilleure

14 52 CHAPITRE 4. INITIATION À LA PROGRAMMATION Listes d entiers avec range On a souvent besoin de faire parcourir à une variable entière les entiers naturels compris entre 1 et n par exemple. Il existe en Python la fonction range qui permet la construction d une liste contenant ces valeurs : >>> liste = range(10) >>> print liste [0, 1, 2, 3, 4, 5, 6, 7, 8, 9] >>> liste2 = range(5,13) >>> print liste2 [5, 6, 7, 8, 9, 10, 11, 12] On utilisera la fonction range avec un ou deux arguments. Il s agit de bien faire attention au sens de la fonction range dans ces deux cas : avec l appel range(n), la liste commence avec l élément 0 et s arrête à l élément n 1 (elle contient donc n éléments), avec l appel range(n,m), la liste commence avec l élément n et s arrête à l élément m 1. Important : L utilisation de la fonction range combinée avec l opérateur de parcours de liste for permet donc de réaliser la boucle Pour vue précédemment. >>> print range(1,7) [1, 2, 3, 4, 5, 6] >>> for i in range(1,7): if (i%2 == 0): print i, "est pair" else: print i, "est impair" 1 est impair 2 est pair 3 est impair 4 est pair 5 est impair 6 est pair On peut également utiliser le constructeur range pour parcourir un ensemble d indices : >>> premiers = [2, 3, 5, 7, 11, 13]

15 4.3. LES CHAÎNES DE CARACTÈRES 53 >>> for i in range(len(premiers)): print "Le ", i+1, "ème nombre premier est ", premiers[i] Le 1 ème nombre premier est 2 Le 2 ème nombre premier est 3 Le 3 ème nombre premier est 5 Le 4 ème nombre premier est 7 Le 5 ème nombre premier est 11 Le 6 ème nombre premier est Comparaison Enfin, l opérateur de comparaison == est étendu aux listes. Il permet de comparer deux listes en testant si elles ont la même longueur et si pour toute position dans la liste, les élements correspondants dans chacune des deux listes sont égaux. 4.3 Les chaînes de caractères On a déjà utilisé des chaînes de caractères lorsque l on a utilisé la commande print. >>> nom = "Thomas" >>> print nom[1] h >>> print nom[:4] Thom >>> n = abc >>> m = def >>> n+m abcdef >>> j= aujourd hui SyntaxError: invalid syntax >>> j="aujourd hui" # cha^ıne comprenant une apostrophe L implémentation dans Python des chaînes de caractères est en fait assez proche de celles des listes. Plus précisément, les chaînes de caractères peuvent être vues comme des listes (de caractères) telles que : leur définition est simplifiée (voir exemples) elles sont non modifiables. On ne peut donc pas supprimer un élément ou modifier un caractère!

16 54 CHAPITRE 4. INITIATION À LA PROGRAMMATION En résumé, le comportement des opérations vues sur les listes dans le cadre des chaînes de caractères est le suivant : 1. définition : simplifiée 2. accès aux éléments : OK 3. extraction de sous-chaînes : OK 4. concaténation : OK 5. répétition : OK 6. modification : NON 7. longueur : OK 8. suppression : NON 9. parcours : OK 10. liste automatique : NON 11. comparaison : étendue. En plus de ==, on peut également utiliser < et >. Enfin, pour convertir un entier naturel en chaîne de caractères, on utilise la fonction str(). Réciproquement, pour transformer une chaîne de caractères ne contenant que des chiffres en un entier naturel, on utilise la fontion int(). >>> nombre = 143 >>> nom_de_fichier = "file"+nombre Traceback (most recent call last): File "<stdin>", line 1, in <module> TypeError: cannot concatenate str and int objects >>> numero = str(nombre) >>> nom_de_fichier = "file"+numero >>> print nom_de_fichier file143 >>> phrase = "Le numéro gagnant est le 48" >>> winner = int(phrase[25:]) >>> print winner/4 12 Remarque : On ne peut pas concaténer une chaîne de caractères avec un entier. Il faut pour cela transformer l entier en une chaîne de caractères à l aide de la fonction str().

17 4.3. LES CHAÎNES DE CARACTÈRES 55 Number-theoretic and representation functions : ceil(x) Return the ceiling of x as a float, the smallest integer value greater than or equal to x. fabs(x) Return the absolute value of x. floor(x) Return the floor of x as a float, the largest integer value less than or equal to x. fmod(x,y) Return fmod(x, y), as defined by the platform C library. frexp(x) Return the mantissa and exponent of x as the pair (m, e). m is a float and e is an integer such that x == m * 2**e exactly. If x is zero, returns (0.0, 0), otherwise 0.5 = abs(m) 1. This is used to pick apart the internal representation of a float in a portable way. ldexp(x, i) Return x * (2**i). This is essentially the inverse of function frexp(). modf(x) Return the fractional and integer parts of x. Both results carry the sign of x, and both are floats. Power and logarithmic functions : exp(x) Return e**x. log(x[, base]) Return the logarithm of x to the given base. If the base is not specified, return the natural logarithm of x (that is, the logarithm to base e). Changed in version 2.3 : base argument added. log10(x) Return the base-10 logarithm of x. pow(x, y) Return x**y. sqrt(x) Return the square root of x. Trigonometric functions : acos(x) Return the arc cosine of x, in radians. asin(x) Return the arc sine of x, in radians. atan(x) Return the arc tangent of x, in radians. cos(x) Return the cosine of x radians. hypot(x, y) Return the Euclidean norm, sqrt(x*x + y*y). This is the length of the vector from the origin to point (x, y). sin(x) Return the sine of x radians. tan(x) Return the tangent of x radians. Angular conversion : degrees(x) Converts angle x from radians to degrees. radians(x) Converts angle x from degrees to radians. Hyperbolic functions : cosh(x) Return the hyperbolic cosine of x. sinh(x) Return the hyperbolic sine of x. tanh(x) Return the hyperbolic tangent of x. The module also defines two mathematical constants : pi The mathematical constant pi. e The mathematical constant e. Figure 4.1 Les fonctions du module math

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

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

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

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

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

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

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

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

I. Introduction aux fonctions : les fonctions standards

I. Introduction aux fonctions : les fonctions standards Chapitre 3 : Les fonctions en C++ I. Introduction aux fonctions : les fonctions standards A. Notion de Fonction Imaginons que dans un programme, vous ayez besoin de calculer une racine carrée. Rappelons

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

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

Les chaînes de caractères

Les chaînes de caractères Les chaînes de caractères Dans un programme informatique, les chaînes de caractères servent à stocker les informations non numériques comme par exemple une liste de nom de personne ou des adresses. Il

Plus en détail

Calcul Formel et Numérique, Partie I

Calcul Formel et Numérique, Partie I Calcul Formel et Numérique N.Vandenberghe nvdb@irphe.univ-mrs.fr Table des matières 1 Introduction à Matlab 2 1.1 Quelques généralités.......................... 2 2 Où trouver des informations 2 3 Opérations

Plus en détail

MATLAB : COMMANDES DE BASE. Note : lorsqu applicable, l équivalent en langage C est indiqué entre les délimiteurs /* */.

MATLAB : COMMANDES DE BASE. Note : lorsqu applicable, l équivalent en langage C est indiqué entre les délimiteurs /* */. Page 1 de 9 MATLAB : COMMANDES DE BASE Note : lorsqu applicable, l équivalent en langage C est indiqué entre les délimiteurs /* */. Aide help, help nom_de_commande Fenêtre de travail (Command Window) Ligne

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

Algorithmes et mathématiques. 1. Premiers pas avec Python. Exo7. 1.1. Hello world!

Algorithmes et mathématiques. 1. Premiers pas avec Python. Exo7. 1.1. Hello world! Exo7 Algorithmes et mathématiques Vidéo partie 1. Premiers pas avec Python Vidéo partie 2. Ecriture des entiers Vidéo partie 3. Calculs de sinus, cosinus, tangente Vidéo partie 4. Les réels Vidéo partie

Plus en détail

Utilisation d objets : String et ArrayList

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

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

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

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

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

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

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

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

Chap III : Les tableaux

Chap III : Les tableaux Chap III : Les tableaux Dans cette partie, on va étudier quelques structures de données de base tels que : Les tableaux (vecteur et matrice) Les chaînes de caractères LA STRUCTURE DE TABLEAU Introduction

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

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

Chapitre 2 Devine mon nombre!

Chapitre 2 Devine mon nombre! Python 3 : objectif jeux Chapitre 2 Chapitre 2 Devine mon nombre! 2.1. Thèmes abordés dans ce chapitre commentaires modules externes, import variables boucle while condition : if... elif... else la fonction

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

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

TP, première séquence d exercices.

TP, première séquence d exercices. TP, première séquence d exercices. Benoît Valiron benoit.valiron@lipn.univ-paris13.fr 7 novembre 2010 Introduction Vous écrirez les réponses aux questions courtes sur une feuille à rendre à la fin de la

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

Premiers pas avec Mathematica

Premiers pas avec Mathematica Premiers pas avec Mathematica LP206 : Mathématiques pour physiciens I Année 2010/2011 1 Introduction Mathematica est un logiciel de calcul formel qui permet de manipuler des expressions mathématiques symboliques.

Plus en détail

Algorithmique avec Algobox

Algorithmique avec Algobox Algorithmique avec Algobox 1. Algorithme: Un algorithme est une suite d instructions qui, une fois exécutée correctement, conduit à un résultat donné Un algorithme doit contenir uniquement des instructions

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

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

Plus en détail

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

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

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

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

Corrigé des TD 1 à 5

Corrigé des TD 1 à 5 Corrigé des TD 1 à 5 1 Premier Contact 1.1 Somme des n premiers entiers 1 (* Somme des n premiers entiers *) 2 program somme_entiers; n, i, somme: integer; 8 (* saisie du nombre n *) write( Saisissez un

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

Introduction à MATLAB R

Introduction à MATLAB R Introduction à MATLAB R Romain Tavenard 10 septembre 2009 MATLAB R est un environnement de calcul numérique propriétaire orienté vers le calcul matriciel. Il se compose d un langage de programmation, d

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

Éléments d informatique Cours 3 La programmation structurée en langage C L instruction de contrôle if

Éléments d informatique Cours 3 La programmation structurée en langage C L instruction de contrôle if Éléments d informatique Cours 3 La programmation structurée en langage C L instruction de contrôle if Pierre Boudes 28 septembre 2011 This work is licensed under the Creative Commons Attribution-NonCommercial-ShareAlike

Plus en détail

Introduction à la programmation Travaux pratiques: séance d introduction INFO0201-1

Introduction à la programmation Travaux pratiques: séance d introduction INFO0201-1 Introduction à la programmation Travaux pratiques: séance d introduction INFO0201-1 B. Baert & F. Ludewig Bruno.Baert@ulg.ac.be - F.Ludewig@ulg.ac.be Qu est-ce que la programmation? Programmer Ecrire un

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

Structure d un programme et Compilation Notions de classe et d objet Syntaxe

Structure d un programme et Compilation Notions de classe et d objet Syntaxe Cours1 Structure d un programme et Compilation Notions de classe et d objet Syntaxe POO 1 Programmation Orientée Objet Un ensemble d objet qui communiquent Pourquoi POO Conception abstraction sur les types

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

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

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

Calcul Formel et Numérique, Partie I

Calcul Formel et Numérique, Partie I Calcul Formel et Numérique NicolasVandenberghe nvdb@irphe.univ-mrs.fr Table des matières 1 Introduction à Matlab 2 1.1 Quelques généralités.......................... 2 1.2 Où trouver des informations......................

Plus en détail

Définitions. Numéro à préciser. (Durée : )

Définitions. Numéro à préciser. (Durée : ) Numéro à préciser (Durée : ) On étudie dans ce problème l ordre lexicographique pour les mots sur un alphabet fini et plusieurs constructions des cycles de De Bruijn. Les trois parties sont largement indépendantes.

Plus en détail

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

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

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

1 I ) Une première approche de l algorithme en seconde, saison 2010 _ 2011. Antoine ROMBALDI

1 I ) Une première approche de l algorithme en seconde, saison 2010 _ 2011. Antoine ROMBALDI 1 I ) Une première approche de l algorithme en seconde, saison 2010 _ 2011. Antoine ROMBALDI L objectif est de rendre les élèves capables : De décrire certains algorithmes en langage naturel. D en réaliser

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

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

Initiation à l algorithmique

Initiation à l algorithmique Informatique S1 Initiation à l algorithmique procédures et fonctions 2. Appel d une fonction Jacques TISSEAU Ecole Nationale d Ingénieurs de Brest Technopôle Brest-Iroise CS 73862-29238 Brest cedex 3 -

Plus en détail

Programmation C++ (débutant)/instructions for, while et do...while

Programmation C++ (débutant)/instructions for, while et do...while Programmation C++ (débutant)/instructions for, while et do...while 1 Programmation C++ (débutant)/instructions for, while et do...while Le cours du chapitre 4 : le for, while et do...while La notion de

Plus en détail

ACTIVITÉ DE PROGRAMMATION

ACTIVITÉ DE PROGRAMMATION ACTIVITÉ DE PROGRAMMATION The purpose of the Implementation Process is to realize a specified system element. ISO/IEC 12207 Sébastien Adam Une introduction 2 Introduction Ø Contenu Utilité de l ordinateur,

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

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

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

Langage et Concepts de ProgrammationOrientée-Objet 1 / 40

Langage et Concepts de ProgrammationOrientée-Objet 1 / 40 Déroulement du cours Introduction Concepts Java Remarques Langage et Concepts de Programmation Orientée-Objet Gauthier Picard École Nationale Supérieure des Mines de Saint-Étienne gauthier.picard@emse.fr

Plus en détail

SOCLE COMMUN - La Compétence 3 Les principaux éléments de mathématiques et la culture scientifique et technologique

SOCLE COMMUN - La Compétence 3 Les principaux éléments de mathématiques et la culture scientifique et technologique SOCLE COMMUN - La Compétence 3 Les principaux éléments de mathématiques et la culture scientifique et technologique DOMAINE P3.C3.D1. Pratiquer une démarche scientifique et technologique, résoudre des

Plus en détail

Rappels sur les suites - Algorithme

Rappels sur les suites - Algorithme DERNIÈRE IMPRESSION LE 14 septembre 2015 à 12:36 Rappels sur les suites - Algorithme Table des matières 1 Suite : généralités 2 1.1 Déition................................. 2 1.2 Exemples de suites............................

Plus en détail

Le chiffre est le signe, le nombre est la valeur.

Le chiffre est le signe, le nombre est la valeur. Extrait de cours de maths de 6e Chapitre 1 : Les nombres et les opérations I) Chiffre et nombre 1.1 La numération décimale En mathématique, un chiffre est un signe utilisé pour l'écriture des nombres.

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

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

Initiation à LabView : Les exemples d applications :

Initiation à LabView : Les exemples d applications : Initiation à LabView : Les exemples d applications : c) Type de variables : Créer un programme : Exemple 1 : Calcul de c= 2(a+b)(a-3b) ou a, b et c seront des réels. «Exemple1» nom du programme : «Exemple

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

I. Programmation I. 1 Ecrire un programme en Scilab traduisant l organigramme montré ci-après (on pourra utiliser les annexes):

I. Programmation I. 1 Ecrire un programme en Scilab traduisant l organigramme montré ci-après (on pourra utiliser les annexes): Master Chimie Fondamentale et Appliquée : spécialité «Ingénierie Chimique» Examen «Programmation, Simulation des procédés» avril 2008a Nom : Prénom : groupe TD : I. Programmation I. 1 Ecrire un programme

Plus en détail

TD3: tableaux avancées, première classe et chaînes

TD3: tableaux avancées, première classe et chaînes TD3: tableaux avancées, première classe et chaînes de caractères 1 Lestableaux 1.1 Élémentsthéoriques Déclaration des tableaux Pour la déclaration des tableaux, deux notations sont possibles. La première

Plus en détail

DE L ALGORITHME AU PROGRAMME INTRO AU LANGAGE C 51

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

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

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

URECA Initiation Matlab 2 Laurent Ott. Initiation Matlab 2

URECA Initiation Matlab 2 Laurent Ott. Initiation Matlab 2 Initiation Matlab 2 1 Chaînes de caractères (string) Une chaîne de caractères (string en anglais) est une suite ordonnée de caractères (du texte, par exemple). Sous matlab, les chaînes de caractères sont

Plus en détail

Conventions d écriture et outils de mise au point

Conventions d écriture et outils de mise au point Logiciel de base Première année par alternance Responsable : Christophe Rippert Christophe.Rippert@Grenoble-INP.fr Introduction Conventions d écriture et outils de mise au point On va utiliser dans cette

Plus en détail

length : A N add : Z Z Z (n 1, n 2 ) n 1 + n 2

length : A N add : Z Z Z (n 1, n 2 ) n 1 + n 2 1 Univ. Lille1 - Licence info 3ème année 2013-2014 Expression Logique et Fonctionnelle... Évidemment Cours n o 1 : Introduction à la programmation fonctionnelle 1 Introduction La programmation fonctionnelle

Plus en détail

Langage Java. Classe de première SI

Langage Java. Classe de première SI Langage Java Table des matières 1. Premiers pas...2 1.1. Introduction...2 1.2. Mon premier programme...2 1.3. Les commentaires...2 2. Les variables et les opérateurs...2 3. La classe Scanner...3 4. Les

Plus en détail

UE C avancé cours 1: introduction et révisions

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

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

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

Exercices types Algorithmique et simulation numérique Oral Mathématiques et algorithmique Banque PT

Exercices types Algorithmique et simulation numérique Oral Mathématiques et algorithmique Banque PT Exercices types Algorithmique et simulation numérique Oral Mathématiques et algorithmique Banque PT Ces exercices portent sur les items 2, 3 et 5 du programme d informatique des classes préparatoires,

Plus en détail

Introduction à R. Florence Yerly. Dept. de mathématiques, Université de Fribourg (CH) SP 2011

Introduction à R. Florence Yerly. Dept. de mathématiques, Université de Fribourg (CH) SP 2011 Dept. de mathématiques, Université de Fribourg (CH) SP 2011 Qu est ce que R? Un logiciel de statistiques libre et gratuit ; Un logiciel multi-plateforme (UNIX, Windows MacOS X) R permet de faire des calculs

Plus en détail

Initiation à la programmation OEF pour Wims (exercices).

Initiation à la programmation OEF pour Wims (exercices). page 1 sur 9 Initiation à la programmation OEF pour Wims (exercices). Les titres des différentes parties de ce document, en grisé, sont donnés en référence au document Wims «DocAide Exercices OEF» rédigé

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

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

Compilation (INF 564)

Compilation (INF 564) Présentation du cours Le processeur MIPS Programmation du MIPS 1 Compilation (INF 564) Introduction & architecture MIPS François Pottier 10 décembre 2014 Présentation du cours Le processeur MIPS Programmation

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

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

Solutions du chapitre 4

Solutions du chapitre 4 Solutions du chapitre 4 Structures de contrôle: première partie 4.9 Identifiez et corrigez les erreurs (il peut y en avoir plus d une par segment de code) de chacune des proposition suivantes: a) if (

Plus en détail

INF 232: Langages et Automates. Travaux Dirigés. Université Joseph Fourier, Université Grenoble 1 Licence Sciences et Technologies

INF 232: Langages et Automates. Travaux Dirigés. Université Joseph Fourier, Université Grenoble 1 Licence Sciences et Technologies INF 232: Langages et Automates Travaux Dirigés Université Joseph Fourier, Université Grenoble 1 Licence Sciences et Technologies Année Académique 2013-2014 Année Académique 2013-2014 UNIVERSITÉ JOSEPH

Plus en détail

http://cermics.enpc.fr/scilab

http://cermics.enpc.fr/scilab scilab à l École des Ponts ParisTech http://cermics.enpc.fr/scilab Introduction à Scilab Graphiques, fonctions Scilab, programmation, saisie de données Jean-Philippe Chancelier & Michel De Lara cermics,

Plus en détail

Nombres, mesures et incertitudes en sciences physiques et chimiques. Groupe des Sciences physiques et chimiques de l IGEN

Nombres, mesures et incertitudes en sciences physiques et chimiques. Groupe des Sciences physiques et chimiques de l IGEN Nombres, mesures et incertitudes en sciences physiques et chimiques. Groupe des Sciences physiques et chimiques de l IGEN Table des matières. Introduction....3 Mesures et incertitudes en sciences physiques

Plus en détail

Présentation du PL/SQL

Présentation du PL/SQL I Présentation du PL/ Copyright Oracle Corporation, 1998. All rights reserved. Objectifs du Cours A la fin de ce chapitre, vous saurez : Décrire l intéret du PL/ Décrire l utilisation du PL/ pour le développeur

Plus en détail

Cours Informatique Master STEP

Cours Informatique Master STEP Cours Informatique Master STEP Bases de la programmation: Compilateurs/logiciels Algorithmique et structure d'un programme Programmation en langage structuré (Fortran 90) Variables, expressions, instructions

Plus en détail