Introduction au langage



Documents pareils
TP 1. Prise en main du langage Python

Algorithmique et Programmation, IMA

Initiation à la programmation en Python

Découverte de Python

STAGE IREM 0- Premiers pas en Python

Présentation du langage et premières fonctions

1. Structure d un programme C. 2. Commentaire: /*..texte */ On utilise aussi le commentaire du C++ qui est valable pour C: 3.

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

Recherche dans un tableau

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

Utilisation d objets : String et ArrayList

Notions fondamentales du langage C# Version 1.0

Cours d Algorithmique-Programmation 2 e partie (IAP2): programmation 24 octobre 2007impérative 1 / 44 et. structures de données simples

Représentation d un entier en base b

Chap III : Les tableaux

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

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

Cours d introduction à l informatique. Partie 2 : Comment écrire un algorithme? Qu est-ce qu une variable? Expressions et instructions

TP, première séquence d exercices.

Rappel. Analyse de Données Structurées - Cours 12. Un langage avec des déclaration locales. Exemple d'un programme

Langage Java. Classe de première SI

Chapitre 2 Devine mon nombre!

Le Langage C Version 1.2 c 2002 Florence HENRY Observatoire de Paris Université de Versailles florence.henry@obspm.fr

ALGORITHMIQUE ET PROGRAMMATION En C


1 Recherche en table par balayage

UEO11 COURS/TD 1. nombres entiers et réels codés en mémoire centrale. Caractères alphabétiques et caractères spéciaux.

INTRODUCTION A JAVA. Fichier en langage machine Exécutable

Programme Compte bancaire (code)

Programmer en JAVA. par Tama

Solutions du chapitre 4

LES TYPES DE DONNÉES DU LANGAGE PASCAL

Algorithmique et programmation : les bases (VBA) Corrigé

SUPPORT DE COURS. Langage C

INF 321 : mémento de la syntaxe de Java

Cours d initiation à la programmation en C++ Johann Cuenin

Introduction au langage C

Introduction à MATLAB R

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

Initiation à la Programmation en Logique avec SISCtus Prolog

Introduction à l algorithmique et à la programmation M1102 CM n 3

DM 1 : Montre Autoquartz ETA

Licence Bio Informatique Année Premiers pas. Exercice 1 Hello World parce qu il faut bien commencer par quelque chose...

Programmation en Java IUT GEII (MC-II1) 1

Les structures. Chapitre 3

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

PROGRAMMER EN MQL4. Apprenez à automatiser vos stratégies sur MetaTrader 4

Cours intensif Java. 1er cours: de C à Java. Enrica DUCHI LIAFA, Paris 7. Septembre Enrica.Duchi@liafa.jussieu.fr

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

Examen Médian - 1 heure 30

INITIATION AU LANGAGE C SUR PIC DE MICROSHIP

Cours Informatique Master STEP

Centre CPGE TSI - Safi 2010/2011. Algorithmique et programmation :

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

Conventions d écriture et outils de mise au point

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

Cours de C++ François Laroussinie. 2 novembre Dept. d Informatique, ENS de Cachan

V- Manipulations de nombres en binaire

Algorithmes et Programmes. Introduction à l informatiquel. Cycle de vie d'un programme (d'un logiciel) Cycle de vie d'un programme (d'un logiciel)

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

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

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)

EPREUVE OPTIONNELLE d INFORMATIQUE CORRIGE

Plan du cours. Historique du langage Nouveautés de Java 7

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

1. Structure d'un programme FORTRAN 95

# let rec concat l1 l2 = match l1 with [] -> l2 x::l 1 -> x::(concat l 1 l2);; val concat : a list -> a list -> a list = <fun>

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

Licence Sciences et Technologies Examen janvier 2010

Claude Delannoy. 3 e édition C++

Initiation à LabView : Les exemples d applications :

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

Cours d algorithmique pour la classe de 2nde

2 Comment fonctionne un ordinateur, dans les grandes lignes

L informatique en BCPST

Algorithme. Table des matières

Cours d Algorithmique et de Langage C v 3.0

Initiation à l algorithmique

I. Introduction aux fonctions : les fonctions standards

4. Groupement d objets

INF111. Initiation à la programmation impérative en C amini/cours/l1/inf111/ Massih-Reza Amini

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

Programmation Web. Madalina Croitoru IUT Montpellier

STS SE. FreeRTOS. Programmation réseau WIFI. Programmation réseau. Socket Tcp. FlyPort smart Wi-Fi module

Algorithmique, Structures de données et langage C

Représentation des Nombres

Cours d Informatique

Perl Orienté Objet BioPerl There is more than one way to do it

I00 Éléments d architecture

Java Licence Professionnelle CISII,

Algorithmes récursifs

LES DECIMALES DE π BERNARD EGGER

TP n 2 Concepts de la programmation Objets Master 1 mention IL, semestre 2 Le type Abstrait Pile

Poker. A rendre pour le 25 avril

INTRODUCTION AUX SYSTEMES D EXPLOITATION. TD2 Exclusion mutuelle / Sémaphores

TP3 : Manipulation et implantation de systèmes de fichiers 1

ACTIVITÉ DE PROGRAMMATION

Projet L1, S2, 2015: Simulation de fourmis, Soutenance la semaine du 4 mai.

URECA Initiation Matlab 2 Laurent Ott. Initiation Matlab 2

Transcription:

Introduction au langage Un langage de programmation : de haut niveau interprété orienté objet si on le souhaite rapide à écrire et proche du pseudo-code simple tant qu on fait des choses simples Un programme basique en PYTHON exemple1.py print " entrez un entier " a = input () if a % 2 == 0 : print " pair " else : print " impair " pas de main : directement dans le fichier print affiche à l écran la chaîne de caractères donnée, et va à la ligne input attend des données au clavier pas de points virgules à la fin des lignes, on va à la ligne! pas d accolades, l indentation fait tout les variables ne sont pas déclarées! PYTHON n est pas trop pénible au niveau parenthèses et opérateurs

typage en PYTHON En PYTHON on ne déclare pas les variables et le type d une variable peut varier au cours du temps. Le typage est dynamique. ex2_2.py a = 3 print 5*a print type(a) a="bonjour" print a + " les gens" print type(a) résultat de l éxécution (terminal) : 15 <type int > bonjour les gens <type str > En PYTHON les types correspondent aux valeurs et non aux identificateurs À la ligne 1, un espace mémoire typé int est affecté au nom a. À la ligne 4, un nouvel espace mémoire, typé str, est affecté à a Souvenez vous que ce n est pas le cas en C!! Types à connaître en PYTHON (liste non exhaustive) types numériques int : entiers positifs ou négatifs - en théorie pas de limite de taille float : nombre réels "à virgule",ex. 345.3688 bool : booléen True / False types séquentiels str : string = chaine de caractères "papa" list : liste d éléments de tout type : notation entre crochets ; correspond au tableau ["papa",2,["b","c"],-3.2]

Opérateurs Opérateurs arithmétiques + addition - soustraction * multiplication / division % modulo ** puissance exemples 2**7-1 % 4 renvoie 3 4/2 renvoie 2 4.0/2 renvoie 2.0 Opérateurs de comparaison (de valeurs) == égal à!= différent de < plus petit que > plus grand que Opérateurs logiques and "et" logique or "ou" logique not "non" logique 4.0/2==2 renvoie True not((1+1==2) and (4>1)) renvoie False La boucle while en PYTHON while expression boolenne : bloc d instructions indenté print "entrez un nombre" x = input() print "quel exposant?" k = input() y = 1 i = 1 while i <= k: print y y = y * x i = i + 1 print "fin du programme"

La boucle for.. in La boucle for en PYTHON consiste à parcourir une séquence (suite) d éléments. Elle est très différente de la boucle for en C. for x in [2,10, -4]: print x**2, 4 100 16 for i in [2,7,4,1]: for j in [3,5,2]: print i*j, 6 10 4 21 35 14 12 20 8 3 5 2 for l in " abcd ": print l*5 aaaaa bbbbb ccccc ddddd for x in ["ba","go","lu"]: for y in ["ba","bi","do"]: print x+y baba babi bado goba gobi godo luba ludi ludo boucle pour i de 0 à n-1 La fonction range() permet d obtenir des listes d entiers range(n) renvoie la liste [0, 1, 2, 3,...,n-1] ex. range(5) renvoie la liste [0,1,2,3,4] range(n,m) ou n < m renvoie la liste [n,n+1,n+2,...,m-1] ex. range(3,9) renvoie la liste [3,4,5,6,7,8] for x in range (10): print x**2, résultat 0 1 4 9 16 25 36 49 64 81 for x in range (3): for y in range (4): print x+y, résultat 0 1 2 1 2 3 2 3 4 3 4 5

Tableaux : le type list Les objets de type list ressemblent aux tableaux du C : ils contiennent des éléments, indicés par des entiers positifs ou nuls. On peut imaginer (seulement) en mémoire les éléments d un tableau list comme placés dans des cases contiguës indices 0 1 2 t = [2,4,-2]... 2 4-2... t en mémoire A la différence du C, les éléments d un objet list peuvent être de tous type! maliste = [ 2, -3.4, [print, "salut", [0, -3] ] ] Tableaux : le type list En PYTHON : type list >>> t = [ 2, 4, -2 ] >>> t [1] 4 >>> t [2] = 5 >>> t [2,4,5] indice t[ 2 ] = 5 valeur à affecter Opérations sur les séquences opération type du retour description exemple retour x in s bool appartenance? -1 in [3,4,-1] True x not in s bool non-appart.? "c" not in "chat" False s+t type de la séquence concaténation [2,1]+[3,0] [2,1,3,0] len(s) int longueur len("paris") 5 min(s) type des éléments minimum min([3,5,2,4)] 2 max(s) type des éléments maximum max([3,5,2,4)] 5

création d un tableau Création d un tableau contenant les carrés des entiers de 1 à 100. Première possibilité : avec initialisation tab1 = [0] * 100 # 0 ou autre... for i in range ( len ( tab1 ) ): tab1 [i] = i*i Deuxième possibilité : sans initialisation tab1 = [] for i in range ( 100) ): tab1. append ( i* i ) # append = ajouter au bout En PYTHON la longueur des tableaux n est pas figée! On peut insérer, supprimer, ajouter à la fin... Très pratique mais algorithmiquement traître! parcourir un tableau Rien de plus simple : si tab est du type list version "parcours par les éléments" for x in tab : print x version "parcours par les indices" for i in range ( len ( tab )) : print "le tableau a l indice ",i," vaut ",tab [i]