td3a correction session7az

Save this PDF as:
 WORD  PNG  TXT  JPG

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

Download "td3a correction session7az"

Transcription

1 td3a correction session7az August 19, Séance 7 : PIG et JSON et streaming avec les données vélib (correction avec Azure) Plan Récupération des données Connexion au cluster et import des données Exercice 1 : convertir les valeurs numériques Exercice 2 : stations fermées Exercice 3 : stations fermées, journée complète Exercice 4 : astuces Récupération Connexion Exo 1 Exo2 Exo3 Astuces 1.1 Récupération des données In [1]: import pyensae import os, datetime In [2]: if not os.path.exists("velib") : os.mkdir("velib") files=pyensae.download_data("data_velib_paris_ _22-23.zip", website="xdtd", whereto="ve files[:2] Out[2]: [ velib\\paris txt, velib\\paris txt ] 1.2 Connexion au cluster et import des données In [4]: import pyquickhelper, pyensae params={"blob_storage":"", "password1":"", "hadoop_server":"", "password2":"", "username":"alias pyquickhelper.open_html_form(params=params,title="server + hadoop + credentials", key_save="blob Out[4]: <IPython.core.display.HTML at 0xb28f810> In [1]: import pyensae blobstorage = blobhp["blob_storage"] blobpassword = blobhp["password1"] hadoop_server = blobhp["hadoop_server"] hadoop_password = blobhp["password2"] username = blobhp["username"] client, bs = %hd_open client, bs 1

2 Out[1]: (<pyensae.remote.azure connection.azureclient at 0x7f82430>, <azure.storage.blobservice.blobservice at 0xaad3a50>) On uploade les données (sauf si vous l avez déjà fait une fois) : In [3]: files = [ os.path.join("velib",_) for _ in os.listdir("velib") if ".txt" in _] In [4]: #client.upload(bs, "hdblobstorage", "velib_1h1", files) In [5]: df=%blob_ls hdblobstorage/velib_1h1 df.head() Out[5]: name \ 0 velib 1h1/paris txt 1 velib 1h1/paris txt 2 velib 1h1/paris txt 3 velib 1h1/paris txt 4 velib 1h1/paris txt last modified content type content length \ 0 Tue, 25 Nov :28:03 GMT application/octet-stream Tue, 25 Nov :28:10 GMT application/octet-stream Tue, 25 Nov :28:18 GMT application/octet-stream Tue, 25 Nov :28:25 GMT application/octet-stream Tue, 25 Nov :28:32 GMT application/octet-stream blob type 0 BlockBlob 1 BlockBlob 2 BlockBlob 3 BlockBlob 4 BlockBlob 1.3 Exercice 1 : convertir les valeurs numériques Le programme suivant prend comme argument les colonnes à extraire des fichiers textes qui sont enregistrés au format python. Le streaming sur Azure est sensiblement différent du streaming présenté avec Cloudera. Cette version fonctionne également avec Cloudera. La réciproque n est pas vraie. Les scripts python sont interprétés avec la machine virtuelle java tout comme pig. La solution suivante s inspire de Utilisation de Python avec Hive et Pig dans HDInsight. Voir également Writing Jython UDFs. Cette écriture impose de comprendre la façon dont PIG décrit les données et l utilisation de schema. Le nom du script doit être jython.py pour ce notebook sinon le compilateur PIG ne sait pas dans quel langage interpréter ce script. La version de jython utilisée sur le cluster est (2.5:c56500f08d34+, Aug , 14:54:35) [OpenJDK 64-Bit Server VM (Azul Systems, Inc.)]. La correction inclut encore un bug mais cela devrait être bientôt corrigé. Cela est dû aux différences Python/Jython. In [6]: import pyensae In [87]: %%PYTHON jython.py import datetime, sys, {(available_bike_stands:int, available_bikes:int, lat:double, lng:double, def extract_columns_from_js(row): 2

3 # pour un programmeur python, les schéma sont contre plut^ot intuitifs, # { } veut dire une liste, # ( ) un tuple dont chaque colonne est nommé # j écrirai peut-^etre une fonction détermine le schéma en fonction des données # il faut utiliser des expressions régulières pour découper la ligne # car cette expression ne fonctionne pas sur des lignes trop longues # eval ( row ) --> revient à évaluer une ligne de 500 Ko # Hadoop s arr^ete sans réellement proposer de message d erreurs qui mettent sur la bonne vo # dans ces cas-là, il faut relancer le job après avoir commenter des lignes # jusqu à trouver celle qui provoque l arr^et brutal du programme # arr^et qui ne se vérifie pas en local cols = ["available_bike_stands","available_bikes","lat","lng","name","status"] exp = re.compile ("(\\{.*?\\})") rec = exp.findall(row) res = [] for r in rec : station = eval(r) vals = [ str(station[c]) for c in cols ] res.append(tuple(vals)) return res La vérification qui suit ne fonctionne que si la fonction à tester prend comme entrée une chaîne de caractères mais rien n empêche de de créer une telle fonction de façon temporaire juste pour vérifier que le script fonctionne (avec Jython 2.5.3) : In [88]: %%jython jython.py extract_columns_from_js [{ address : RUE DES CHAMPEAUX (PRES DE LA GARE ROUTIERE) BAGNOLET, collect_date : d [{ address : RUE DES CHAMPEAUX (PRES DE LA GARE ROUTIERE) BAGNOLET, collect_date : d Out[88]: <IPython.core.display.HTML at 0xc1abcb0> On écrit le script PIG qui utilise plus de colonnes : In [4]: %%PIG json_velib_python.pig REGISTER $CONTAINER/$SCRIPTPIG/jython.py using jython as myfuncs; jspy = LOAD $CONTAINER/velib_1h1/*.txt USING PigStorage( \t ) AS (arow:chararray); DESCRIBE jspy ; matrice = FOREACH jspy GENERATE myfuncs.extract_columns_from_js(arow); DESCRIBE matrice ; multiply = FOREACH matrice GENERATE FLATTEN(brow) ; DESCRIBE multiply ; STORE multiply INTO $CONTAINER/$PSEUDO/velibpy_results/firstjob USING PigStorage( \t ) ; On supprime la précédente exécution si besoin puis on vérifie que le répertoire contenant les résultats est vide : In [5]: if client.exists(bs, client.account_name, "$PSEUDO/velibpy_results/firstjob"): r = client.delete_folder (bs, client.account_name, "$PSEUDO/velibpy_results/firstjob") print(r) 3

4 [ xavierdupre/velibpy results/firstjob, xavierdupre/velibpy results/firstjob/ SUCCESS, xavierdupre/ve In [6]: %hd_pig_submit json_velib_python.pig jython.py -stop_on_failure Out[6]: { id : job } In [9]: st = %hd_job_status job_ _0095 st["id"],st["percentcomplete"],st["status"]["jobcomplete"] Out[9]: ( job , 100% complete, True) On récupère l erreur : In [10]: %tail_stderr job_ _ Out[10]: <IPython.core.display.HTML at 0xaa9fff0> In [11]: %blob_ls /$PSEUDO/velibpy_results Out[11]: name \ 0 xavierdupre/velibpy results 1 xavierdupre/velibpy results/firstjob 2 xavierdupre/velibpy results/firstjob/ SUCCESS 3 xavierdupre/velibpy results/firstjob/part-m last modified content type content length \ 0 Thu, 27 Nov :56:03 GMT application/octet-stream 0 1 Thu, 27 Nov :39:39 GMT 0 2 Thu, 27 Nov :39:39 GMT application/octet-stream 0 3 Thu, 27 Nov :39:39 GMT application/octet-stream blob type 0 BlockBlob 1 BlockBlob 2 BlockBlob 3 BlockBlob On récupère les informations qu on affiche sous forme de dataframe : In [12]: if os.path.exists("velib_exo1.txt") : os.remove("velib_exo1.txt") %blob_downmerge /$PSEUDO/velibpy_results/firstjob velib_exo1.txt Out[12]: velib exo1.txt In [13]: %head velib_exo1.txt Out[13]: <IPython.core.display.HTML at 0xaa9fb70> In [14]: import pandas df = pandas.read_csv("velib_hd.txt", sep="\t",names=["available_bike_stands","available_bikes", df.head() Out[14]: available bike stands available bikes lat lng \

5 name status CHAMPEAUX (BAGNOLET) OPEN POISSONNIÈRE - ENGHIEN OPEN METRO ROME OPEN RUE DE LA PAIX OPEN DE GAULLE (PANTIN) OPEN 1.4 Exercice 2 : stations fermées Les stations fermées ne le sont pas tout le temps. On veut calculer le ratio minutes/stations fermées / total des minutes/stations. Le script python permettant de lire les données ne change pas, il suffit juste de déclarer les sorties numériques comme telles. Quelques détails sur les tables : jspy : contient les données brutes dans une liste de fichiers matrice : d après le job qui précède, la table contient une ligne par stations et par minute, chaque ligne décrit le status de la station grstation : table matrice groupée par status fermees : pour chaque groupe, on aggrégé le nombre de minutes multipliés par le nombre de vélos gr*,dist* : distribution du nombre de stations (Y) en fonction du nombre de vélos ou places disponibles En cas d exécution précédentes : In [122]: for sub in [ "multiply.txt"]: if client.exists(bs, client.account_name, "$PSEUDO/velibpy_results/" + sub): r = client.delete_folder (bs, client.account_name, "$PSEUDO/velibpy_results/" + sub) print(r) [ xavierdupre/velibpy results/fermees.txt ] [ xavierdupre/velibpy results/distribution bikes.txt ] [ xavierdupre/velibpy results/distribution stands.txt ] On va exécuter le job en deux fois. Le premier job met tout à plat. Le second calcule les aggrégations. La plupart du temps, le travaille de recherche concerne la seconde partie. Mais si le job n est pas scindé, la première partie est toujours exécutée à chaque itération. Dans ce cas-ci, on scinde le job en deux. La première partie forme une table à partir des données initiales. La seconde les agrègre. In [155]: %%PIG json_velib_python2.pig REGISTER $CONTAINER/$SCRIPTPIG/jython.py using jython as myfuncs; jspy = LOAD $CONTAINER/velib_1h1/*.txt USING PigStorage( \t ) AS (arow:chararray); DESCRIBE jspy ; matrice = FOREACH jspy GENERATE myfuncs.extract_columns_from_js(arow); DESCRIBE matrice ; multiply = FOREACH matrice GENERATE FLATTEN(brow) ; DESCRIBE multiply ; STORE multiply INTO $CONTAINER/$PSEUDO/velibpy_results/multiply.txt USING PigStorage( \t ) ; In [156]: %hd_pig_submit json_velib_python2.pig jython.py -stop_on_failure 5

6 Out[156]: { id : job } In [163]: st = %hd_job_status job_ _0125 st["id"],st["percentcomplete"],st["status"]["jobcomplete"] Out[163]: ( job , 100% complete, True) In [165]: %blob_ls /$PSEUDO/velibpy_results/multiply.txt Out[165]: name \ 0 xavierdupre/velibpy results/multiply.txt 1 xavierdupre/velibpy results/multiply.txt/ SUCCESS 2 xavierdupre/velibpy results/multiply.txt/part-... last modified content type content length \ 0 Fri, 28 Nov :46:41 GMT 0 1 Fri, 28 Nov :46:41 GMT application/octet-stream 0 2 Fri, 28 Nov :46:41 GMT application/octet-stream blob type 0 BlockBlob 1 BlockBlob 2 BlockBlob In [167]: for sub in ["fermees.txt", "distribution_bikes.txt", "distribution_stands.txt"]: if client.exists(bs, client.account_name, "$PSEUDO/velibpy_results/" + sub): r = client.delete_folder (bs, client.account_name, "$PSEUDO/velibpy_results/" + sub) print(r) [ xavierdupre/velibpy results/fermees.txt, xavierdupre/velibpy results/fermees.txt/ temporary, xavier [ xavierdupre/velibpy results/distribution bikes.txt, xavierdupre/velibpy results/distribution bikes.tx [ xavierdupre/velibpy results/distribution stands.txt, xavierdupre/velibpy results/distribution stands. In [168]: %%PIG json_velib_python3.pig multiply = LOAD $CONTAINER/$PSEUDO/velibpy_results/multiply.txt USING PigStorage( \t ) AS (available_bike_stands:int, available_bikes:int, lat:double, lng:double, name:chararra DESCRIBE multiply ; grstation = GROUP multiply BY status ; DESCRIBE grstation ; fermees = FOREACH grstation GENERATE group,sum(multiply.available_bikes) AS available_bikes,sum(multiply.available_bike_stands) AS available_bike_stands ; DESCRIBE fermees ; gr_av = GROUP multiply BY available_bikes ; DESCRIBE gr_av; dist_av = FOREACH gr_av GENERATE group, COUNT(multiply) ; DESCRIBE dist_av; gr_pl = GROUP multiply BY available_bike_stands ; 6

7 DESCRIBE gr_pl; dist_pl = FOREACH gr_pl GENERATE group, COUNT(multiply) ; DESCRIBE dist_pl; STORE fermees INTO $CONTAINER/$PSEUDO/velibpy_results/fermees.txt USING PigStorage( \t ) ; STORE dist_av INTO $CONTAINER/$PSEUDO/velibpy_results/distribution_bikes.txt USING PigStorag STORE dist_pl INTO $CONTAINER/$PSEUDO/velibpy_results/distribution_stands.txt USING PigStora In [169]: %hd_pig_submit json_velib_python3.pig -stop_on_failure Out[169]: { id : job } In [173]: st = %hd_job_status job_ _0127 st["id"],st["percentcomplete"],st["status"]["jobcomplete"] Out[173]: ( job , 100% complete, True) In [177]: %tail_stderr job_ _ Out[177]: <IPython.core.display.HTML at 0xc285b50> In [178]: %blob_ls /$PSEUDO/velibpy_results Out[178]: name \ 0 xavierdupre/velibpy results 1 xavierdupre/velibpy results/distribution bikes... 2 xavierdupre/velibpy results/distribution bikes... 3 xavierdupre/velibpy results/distribution bikes... 4 xavierdupre/velibpy results/distribution stand... 5 xavierdupre/velibpy results/distribution stand... 6 xavierdupre/velibpy results/distribution stand... 7 xavierdupre/velibpy results/fermees.txt 8 xavierdupre/velibpy results/fermees.txt/ SUCCESS 9 xavierdupre/velibpy results/fermees.txt/part-r xavierdupre/velibpy results/firstjob 11 xavierdupre/velibpy results/firstjob/ SUCCESS 12 xavierdupre/velibpy results/firstjob/part-m xavierdupre/velibpy results/multiply.txt 14 xavierdupre/velibpy results/multiply.txt/ SUCCESS 15 xavierdupre/velibpy results/multiply.txt/part-... last modified content type content length \ 0 Thu, 27 Nov :56:03 GMT application/octet-stream 0 1 Fri, 28 Nov :50:54 GMT 0 2 Fri, 28 Nov :50:54 GMT application/octet-stream 0 3 Fri, 28 Nov :50:54 GMT application/octet-stream Fri, 28 Nov :50:55 GMT 0 5 Fri, 28 Nov :50:55 GMT application/octet-stream 0 6 Fri, 28 Nov :50:55 GMT application/octet-stream Fri, 28 Nov :50:54 GMT 0 8 Fri, 28 Nov :50:54 GMT application/octet-stream 0 9 Fri, 28 Nov :50:53 GMT application/octet-stream Thu, 27 Nov :39:39 GMT 0 11 Thu, 27 Nov :39:39 GMT application/octet-stream 0 12 Thu, 27 Nov :39:39 GMT application/octet-stream

8 13 Fri, 28 Nov :46:41 GMT 0 14 Fri, 28 Nov :46:41 GMT application/octet-stream 0 15 Fri, 28 Nov :46:41 GMT application/octet-stream blob type 0 BlockBlob 1 BlockBlob 2 BlockBlob 3 BlockBlob 4 BlockBlob 5 BlockBlob 6 BlockBlob 7 BlockBlob 8 BlockBlob 9 BlockBlob 10 BlockBlob 11 BlockBlob 12 BlockBlob 13 BlockBlob 14 BlockBlob 15 BlockBlob In [179]: if os.path.exists("distribution_bikes.txt") : os.remove("distribution_bikes.txt") %blob_downmerge /$PSEUDO/velibpy_results/distribution_bikes.txt distribution_bikes.txt Out[179]: distribution bikes.txt In [180]: import pandas df = pandas.read_csv("distribution_bikes.txt", sep="\t", names=["nb_velos", "nb_stations_minut df.head() Out[180]: nb velos nb stations minutes In [182]: import matplotlib.pyplot as plt plt.style.use( ggplot ) df.plot(x="nb_velos",y="nb_stations_minutes",kind="bar",figsize=(16,4)) Out[182]: <matplotlib.axes. subplots.axessubplot at 0xae39f90> 8

9 In [183]: if os.path.exists("distribution_stands.txt") : os.remove("distribution_stands.txt") %blob_downmerge /$PSEUDO/velibpy_results/distribution_stands.txt distribution_stands.txt Out[183]: distribution stands.txt In [184]: df = pandas.read_csv("distribution_stands.txt", sep="\t", names=["nb_places", "nb_stations_min df.plot(x="nb_places",y="nb_stations_minutes",kind="bar",figsize=(16,4)) Out[184]: <matplotlib.axes. subplots.axessubplot at 0xab50d50> In [185]: if os.path.exists("fermees.txt") : os.remove("fermees.txt") %blob_downmerge /$PSEUDO/velibpy_results/fermees.txt fermees.txt Out[185]: fermees.txt In [186]: df = pandas.read_csv("fermees.txt", sep="\t", names=["status", "nb_velos_stations_minutes", "n df=df.set_index("status") df = df.t df["%close"] = df.closed / (df.closed + df.open) df Out[186]: status OPEN CLOSED %close nb velos stations minutes nb places stations minutes Ce dernier tableau n est vrai que dans la mesure où les nombres reportées sont fiables lorsque les stations sont fermées. 1.5 Exercice 3 : stations fermées, journée complète Appliquer cela à une journée complète revient à lancer le même job sur des données plus grandes. On verra bientôt commencer éviter de recopier le job une seconde fois (introduisant une source potentielle d erreur). In [40]: 9

10 1.6 Exercice 4 : astuces Les erreurs de PIG ne sont pas très explicite surtout si elles se produisent dans le script python. Un moyen simple de débugger est d attraper les exceptions produites par python et de les récupérer sous PIG (le reste du job est enlevé). On peut tout-à-fait imaginer ajouter la version de python installée sur le cluster ainsi que la liste de modules In [70]: %%PYTHON jython.py import def information(row): return (";".join([str(sys.version), str(sys.executable)])).replace("\n"," ") On vérifie que le script fonctionne avec jython : In [71]: %%jython jython.py information n importe quoi Out[71]: <IPython.core.display.HTML at 0xb066630> In [78]: %%PIG info.pig REGISTER $CONTAINER/$SCRIPTPIG/jython.py using jython as myfuncs; jspy = LOAD $CONTAINER/velib_1h1/*.txt USING PigStorage( \t ) AS (arow:chararray); one = LIMIT jspy 1 ; infos = FOREACH one GENERATE myfuncs.information(arow); STORE infos INTO $CONTAINER/$PSEUDO/results/infos USING PigStorage( \t ) ; In [79]: if client.exists(bs, client.account_name, "$PSEUDO/results/infos"): r = client.delete_folder (bs, client.account_name, "$PSEUDO/results/infos") print(r) In [80]: %hd_pig_submit info.pig jython.py -stop_on_failure Out[80]: { id : job } In [83]: st = %hd_job_status job_ _0107 st["id"],st["percentcomplete"],st["status"]["jobcomplete"] Out[83]: ( job , 100% complete, True) In [84]: %tail_stderr job_ _ Out[84]: <IPython.core.display.HTML at 0xaa9f770> In [85]: if os.path.exists("infos.txt") : os.remove("infos.txt") %blob_downmerge /$PSEUDO/results/infos infos.txt Out[85]: infos.txt In [86]: %head infos.txt Out[86]: <IPython.core.display.HTML at 0xc1ab5f0> In [ ]: 10

pyensae StockPrices September 1, 2015 1 Manipulation de séries financières avec la classe StockPrices

pyensae StockPrices September 1, 2015 1 Manipulation de séries financières avec la classe StockPrices pyensae StockPrices September 1, 2015 1 Manipulation de séries financières avec la classe StockPrices La classe StockPrices facilite la récupération de données financières via le site Yahoo Finance ainsi

Plus en détail

Initiation à la programmation en Python

Initiation à la programmation en Python Initiation à la programmation en Python Damien Vergnaud École Normale Supérieure 4 mars 2009 Damien Vergnaud (École Normale Supérieure) Initiation à la programmation en Python 4 mars 2009 1 / 25 Table

Plus en détail

Informatique TP1 : Découverte de Python CPP 1A

Informatique TP1 : Découverte de Python CPP 1A Informatique TP1 : Découverte de Python CPP 1A Romain Casati, Wafa Johal, Frederic Devernay, Matthieu Moy Avril - juin 2014 1 Découverte de l IDE : IDLE IDLE est un environnement de développement (Integrated

Plus en détail

1 TD 8 : SQL. (correction page??) Abordé lors de cette séance programmation algorithme. SQL index

1 TD 8 : SQL. (correction page??) Abordé lors de cette séance programmation algorithme. SQL index 1 TD 8 : SQL (correction page??) Abordé lors de cette séance programmation algorithme SQL index Le langage SQL est utilisé pour manipuler des bases de données 1. Pour faire simple, on utilise les bases

Plus en détail

TP 7 : Manipulation d images.

TP 7 : Manipulation d images. Lycée Masséna TP 7 : Manipulation d images. On va voir deux choses dans ce TP : les tableaux Numpy, qui sont très pratiques pour les opérations terme à terme entre tableaux de nombres à plusieurs dimensions.

Plus en détail

Introduction à l algorithmique et à la programmation 2013-2014. Cyril Nicaud Cyril.Nicaud@univ-mlv.fr. Cours 1 / 5

Introduction à l algorithmique et à la programmation 2013-2014. Cyril Nicaud Cyril.Nicaud@univ-mlv.fr. Cours 1 / 5 Introduction à l algorithmique et à la programmation IUT 1ère année 2013-2014 Cyril Nicaud Cyril.Nicaud@univ-mlv.fr Cours 1 / 5 Déroulement du cours Organisation : 5 séances de 2h de cours 10 séances de

Plus en détail

Semaine 0 :: Installation et présentation de Python

Semaine 0 :: Installation et présentation de Python Semaine 0 :: Installation et présentation de Python Ce document est un complément des vidéos présentes dans le MOOC. 1. Installation de Python L environnement Python est disponible sur de nombreuses plates

Plus en détail

PHP et mysql. Code: php_mysql. Olivier Clavel - Daniel K. Schneider - Patrick Jermann - Vivian Synteta Version: 0.9 (modifié le 13/3/01 par VS)

PHP et mysql. Code: php_mysql. Olivier Clavel - Daniel K. Schneider - Patrick Jermann - Vivian Synteta Version: 0.9 (modifié le 13/3/01 par VS) PHP et mysql php_mysql PHP et mysql Code: php_mysql Originaux url: http://tecfa.unige.ch/guides/tie/html/php-mysql/php-mysql.html url: http://tecfa.unige.ch/guides/tie/pdf/files/php-mysql.pdf Auteurs et

Plus en détail

Introduction à la Programmation 1

Introduction à la Programmation 1 Introduction à la Programmation 1 Séance de cours/td Université Paris-Diderot Objectifs: Découverte du type String. Comprendre qu il y a des types différents. Maîtriser les expressions booléennes dans

Plus en détail

TP : commande awk. D'après le cours en ligne de Isabelle Vollant http://www.shellunix.com/awk.html

TP : commande awk. D'après le cours en ligne de Isabelle Vollant http://www.shellunix.com/awk.html TP : commande awk D'après le cours en ligne de Isabelle Vollant http://www.shellunix.com/awk.html Nous reprenons dans ce TP une grande partie du cours de Isabelle Vollant en simplifiant quelques informations.

Plus en détail

Comment compiler un programme MATLAB

Comment compiler un programme MATLAB Comment compiler un programme MATLAB 1- Introduction Le compilateur MATLAB génère un code source C à partir d une fonction MATLAB. Le code C généré par le compilateur MATLAB peut être: soit un code source

Plus en détail

Documentation Talend. Charly Riviere CDG35

Documentation Talend. Charly Riviere CDG35 Documentation Talend Charly Riviere CDG35 1. Présentation générale Talend est un ETL pour "Extract Transform Load". Comme son nom l'indique il permet d'extraire des données pour ensuite les transformer

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

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

Introduction au Java Development Kit Et quelques instructions en Java. 1 Création des répertoires d accueil des programmes Java

Introduction au Java Development Kit Et quelques instructions en Java. 1 Création des répertoires d accueil des programmes Java HLIN406 - Janvier 2015 Le Java Development Kit offre un ensemble d outils de développement d applications Java. Pour utiliser ces outils, JDK ne propose pas d interface utilisateur, on doit donc écrire

Plus en détail

Formation Python. Sandra Dèrozier & Franck Samson 13 Juin 2014

Formation Python. Sandra Dèrozier & Franck Samson 13 Juin 2014 Formation Python Sandra Dèrozier & Franck Samson 13 Juin 2014 Programme Présentation rapide de Python Présentation d Eclipse Gestion de fichiers Fonctions Utilisation des exceptions Expressions régulières

Plus en détail

Programmation en Python - Cours 2 : Premiers programmes

Programmation en Python - Cours 2 : Premiers programmes Programmation en Python - Cours 2 : Premiers programmes 2013/2014 Diverses utilisations de python Utilisation en mode interactif Ecriture d un programme python Saisie de données par l utilisateur : input(),

Plus en détail

Programmer avec Xcas : version 0.8.6 et 0.9

Programmer avec Xcas : version 0.8.6 et 0.9 Programmer avec Xcas : version 0.8.6 et 0.9 I. L environnement de travail de Xcas Xcas permet d écrire des programmes, comme n importe quel langage de programmation. C est un langage fonctionnel. L argument

Plus en détail

Avant de programmer en Java DOS Set Path=C:\JDK\bin Path=C:\JDK\bin C:\JDK\bin Set Path=%Path%;C:\JDK\bin C:\JDK\bin C:\JDK\

Avant de programmer en Java DOS Set Path=C:\JDK\bin Path=C:\JDK\bin C:\JDK\bin Set Path=%Path%;C:\JDK\bin C:\JDK\bin C:\JDK\ Exercices corrigés de programmation OO Java Préparés par : Mlle Imene Sghaier Année Académique : 2006-2007 Premiers Pas I. Avant de programmer en Java Le JDK de Sun (Java Development Kit) est l outil essentiel

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

Projet de Programmation Fonctionnelle

Projet de Programmation Fonctionnelle Projet de Programmation Fonctionnelle L objectif de ce projet est de concevoir, en Objective Caml, un évaluateur pour le langage mini-ml (un sous ensemble du langage Objective Caml). Votre programme devra

Plus en détail

TD 8 - Manipulation de Fichiers. Informatique MPSI/PCSI - Lycée Thiers

TD 8 - Manipulation de Fichiers. Informatique MPSI/PCSI - Lycée Thiers TD 8 - Manipulation de Fichiers Informatique MPSI/PCSI - Lycée Thiers Exercice 1 / / Exercice 1 : / En python, créer un fichier essai.txt (à l aide de la commande f = open( essai.txt, w ), dans lequel

Plus en détail

Démarrage rapide. Protection de logiciels sous MAC avec DinkeyDongle. Contact commercial : Tél. : 02 47 35 70 35 Email : com@aplika.

Démarrage rapide. Protection de logiciels sous MAC avec DinkeyDongle. Contact commercial : Tél. : 02 47 35 70 35 Email : com@aplika. Démarrage rapide Protection de logiciels sous MAC avec DinkeyDongle Contact commercial : Tél. : 02 47 35 70 35 Email : com@aplika.fr Contact Technique : Tél. : 02 47 35 53 36 Email : support@aplika.fr

Plus en détail

TP 1 - Utilisation de Python

TP 1 - Utilisation de Python TP 1 - Utilisation de Python L objectif de ce TP est d apprendre à faire réaliser des calculs et des tâches répétitives à un ordinateur. Pour faire cela, il est nécessaire de communiquer avec l ordinateur

Plus en détail

Quelques éléments de compilation en C et makefiles

Quelques éléments de compilation en C et makefiles Quelques éléments de compilation en C et makefiles Guillaume Feuillade 1 Compiler un programme C Le principe de la compilation consiste à passer d un ensemble de fichiers de code à un programme exécutable

Plus en détail

Le mécanisme d exception du langage Java

Le mécanisme d exception du langage Java Le mécanisme d exception du langage Java 1 / 39 Plan 1 Introduction aux exceptions en Java 2 Exemples de code avec gestion des exceptions 3 Créer ses propres exceptions 4 Instruction try/catch/finally

Plus en détail

Le prototype de la fonction main()

Le prototype de la fonction main() Le prototype de la fonction main() 1. Introduction...1 2. Paramètres et type de retour de la fonction main()...1 3. Exemple 1...2 4. La fonction exit() du C...2 5. Détecter le code de retour d un programme

Plus en détail

Hadoop / Big Data. Benjamin Renaut MBDS 2014-2015

Hadoop / Big Data. Benjamin Renaut <renaut.benjamin@tokidev.fr> MBDS 2014-2015 Hadoop / Big Data Benjamin Renaut MBDS 2014-2015 TP 1 - Correction Méthodologie Map/Reduce - programmation Hadoop. Rappel 1 La première partie du TP consistait à mettre en

Plus en détail

L1 Option Programmation Web côté Serveur - Contrôle continu n 1

L1 Option Programmation Web côté Serveur - Contrôle continu n 1 L Option Programmation Web côté Serveur - Contrôle continu n Veuillez noircir les cases correspondantes à votre numéro d étudiant ( case/colonne). Si votre N est, il faut noircir le dans la ère colonne,

Plus en détail

2- Téléchargement et installation version actuelle 6.1

2- Téléchargement et installation version actuelle 6.1 1- EDI NetBeans (Environnement : Microsoft Windows Linux Ubuntu) EDI, Environnement de Développement Intégré Anglais : IDE, Integrated Development Environment Programme regroupant : Un éditeur de texte

Plus en détail

Algorithmique et Programmation 2 LMI 1 Semestre 2 Cours 2 La séquence et l alternative

Algorithmique et Programmation 2 LMI 1 Semestre 2 Cours 2 La séquence et l alternative Algorithmique et Programmation 2 LMI 1 Semestre 2 Cours 2 La séquence et l alternative 2 janvier 2009 1 Les structures de contrôle En Scheme, le programmation se fait par composition de fonctions, et même

Plus en détail

Hadoop / Big Data. Benjamin Renaut MBDS 2014-2015

Hadoop / Big Data. Benjamin Renaut <renaut.benjamin@tokidev.fr> MBDS 2014-2015 Hadoop / Big Data Benjamin Renaut MBDS 2014-2015 TP 3 TP noté Méthodologie Map/Reduce - programmation Hadoop - Sqoop Préparation du TP 1 Importer la machine virtuelle.ova du

Plus en détail

Atelier 0: Initiation aux outils de développement C sous Linux

Atelier 0: Initiation aux outils de développement C sous Linux 1)Objectifs: Atelier 0: Initiation aux outils de développement C sous Linux S'initier à l'utilisation de quelques outils de développement avec le langage C sous Linux. Développer en C sous Linux à partir

Plus en détail

Big Data. Cyril Amsellem Consultant avant-vente. 16 juin 2011. Talend 2010 1

Big Data. Cyril Amsellem Consultant avant-vente. 16 juin 2011. Talend 2010 1 Big Data Cyril Amsellem Consultant avant-vente 16 juin 2011 Talend 2010 1 Big Data Architecture globale Hadoop Les projets Hadoop (partie 1) Hadoop-Core : projet principal. HDFS : système de fichiers distribués

Plus en détail

Comment installer le gestionnaire de licence avec une nouvelle version de Arche / Effel / Melody?

Comment installer le gestionnaire de licence avec une nouvelle version de Arche / Effel / Melody? Comment installer le gestionnaire de licence avec une nouvelle version de Arche / Effel / Melody? Le driver de licence ne doit être installé que sur une seule machine du réseau. Cette machine doit être

Plus en détail

Ricco Rakotomalala http://eric.univ-lyon2.fr/~ricco/cours/cours_programmation_python.html. R.R. Université Lyon 2

Ricco Rakotomalala http://eric.univ-lyon2.fr/~ricco/cours/cours_programmation_python.html. R.R. Université Lyon 2 Ricco Rakotomalala http://eric.univ-lyon2.fr/~ricco/cours/cours_programmation_python.html 1 Découpage des programmes PROCÉDURES ET FONCTIONS 2 Généralités sur les fonctions et les modules sous Python Pourquoi

Plus en détail

Informatique TP4 : Manipulations de fichiers Manipulations de chaînes et de tableaux CPP 1A

Informatique TP4 : Manipulations de fichiers Manipulations de chaînes et de tableaux CPP 1A Informatique TP4 : Manipulations de fichiers Manipulations de chaînes et de tableaux CPP 1A Djamel Aouane, Frederic Devernay, Matthieu Moy Mars - avril 2015 1 Manipulations de fichiers Pour organiser des

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

II. Conversions. I. Initialisation. III. Méthode point. TD Python Traitement d images MP*

II. Conversions. I. Initialisation. III. Méthode point. TD Python Traitement d images MP* Le but de ce TD est d utiliser les procédures et fonctions Python pour traiter des fichiers images. II. Conversions I. Initialisation Importer le module numpy sous l appellation np. On utilise le module

Plus en détail

1 Lecture de fichiers

1 Lecture de fichiers Programmation 1 Cours n 6 GB3, 2 nd semestre 2014-2015 Cours de Python Gilles Bernot 1 Lecture de fichiers Un fichier est une suite de caractères mémorisés sur le disque dur de la machine dans un endroit

Plus en détail

Hadoop / Big Data. Benjamin Renaut MBDS 2014-2015

Hadoop / Big Data. Benjamin Renaut <renaut.benjamin@tokidev.fr> MBDS 2014-2015 Hadoop / Big Data Benjamin Renaut MBDS 2014-2015 9 Apache Pig Présentation 9-1 Pig est un autre outil associé à Hadoop au même titre que Sqoop. Son but est de permettre de

Plus en détail

Examen Programmation ENSAE première année 2008 (rattrapage) Examen écrit (1 heure) Tous documents autorisés.

Examen Programmation ENSAE première année 2008 (rattrapage) Examen écrit (1 heure) Tous documents autorisés. Examen Programmation ENSAE première année 2008 (rattrapage) Examen écrit (1 heure) Tous documents autorisés. 1 0.0.1 Suite récurrente (Fibonacci) * Réécrire la fonction u de façon à ce qu elle ne soit

Plus en détail

Série 2 Premiers programmes

Série 2 Premiers programmes Licence pro. GTSBD 2013-2014 Structures de données, langage Python Série 2 Premiers programmes Programmes avec des affectations, des lectures et des écritures Exo 2.1 Le problème de la machine qui rend

Plus en détail

Traitement d'image ou Programmer des fonctions de logiciels de retouche d'images!

Traitement d'image ou Programmer des fonctions de logiciels de retouche d'images! I. Bien ranger ses affaires. Traitement d'image ou Programmer des fonctions de logiciels de retouche d'images! Pour bien travailler il est très important de savoir où sont rangées ses affaires. On va travailler

Plus en détail

Programmation système orientée objet

Programmation système orientée objet Programmation système orientée objet Auteur: Olivier Laurent Contact: oli@aragne.com Organisation: Python Blanc Bleu Belge Date: 10/02/2005 Table des matières 1 Introduction 2 Créer l objet fichier 3 Lister

Plus en détail

Survivre ave Eclipse. 1 Comment créer un projet : Un projet est un répertoire qui contient tous les sous répertoires et fichiers utiles.

Survivre ave Eclipse. 1 Comment créer un projet : Un projet est un répertoire qui contient tous les sous répertoires et fichiers utiles. Survivre ave Eclipse 1 Comment créer un projet : Un projet est un répertoire qui contient tous les sous répertoires et fichiers utiles. Dans le Menu > File > New > Project Sélectionner > Java Project >

Plus en détail

Salvia Liaison Financière. Manuel d installation version 15.00 Pour les professionnels des collectivités locales et de l habitat social

Salvia Liaison Financière. Manuel d installation version 15.00 Pour les professionnels des collectivités locales et de l habitat social Salvia Liaison Financière Manuel d installation version 15.00 Pour les professionnels des collectivités locales et de l habitat social Sommaire 1. Préambule... 3 2. Introduction... 3 3. Création de la

Plus en détail

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

Licence Bio Informatique Année 2004-2005. Premiers pas. Exercice 1 Hello World parce qu il faut bien commencer par quelque chose... Université Paris 7 Programmation Objet Licence Bio Informatique Année 2004-2005 TD n 1 - Correction Premiers pas Exercice 1 Hello World parce qu il faut bien commencer par quelque chose... 1. Enregistrez

Plus en détail

Mode d emploi pour la P-machine utilisée lors des TPs et des projets du cours INFO010 Théorie des langages et de la compilation.

Mode d emploi pour la P-machine utilisée lors des TPs et des projets du cours INFO010 Théorie des langages et de la compilation. Mode d emploi pour la P-machine utilisée lors des TPs et des projets du cours INFO010 Théorie des langages et de la compilation. Sébastien COLLETTE et Gilles GEERAERTS 1 Introduction Ce document décrit

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

Programmation en Python - Cours 2 : Premiers programmes. MPSI - Lycée Thiers

Programmation en Python - Cours 2 : Premiers programmes. MPSI - Lycée Thiers Programmation en Python - Cours 2 : Premiers programmes Diverses utilisations de python Utilisation en mode interactif Ecriture d un programme python Utilisation en mode interactif Ecriture d un programme

Plus en détail

La technologie Java Card TM

La technologie Java Card TM Présentation interne au CESTI La technologie Java Card TM sauveron@labri.u-bordeaux.fr http://dept-info.labri.u-bordeaux.fr/~sauveron 8 novembre 2002 Plan Qu est ce que Java Card? Historique Les avantages

Plus en détail

CHAPITRE 1 PREMIERS PAS. Créer un premier projet... 17 Écrire un programme... 18 Compiler, exécuter... 20 Mieux comprendre... 22

CHAPITRE 1 PREMIERS PAS. Créer un premier projet... 17 Écrire un programme... 18 Compiler, exécuter... 20 Mieux comprendre... 22 CHAPITRE 1 PREMIERS PAS Créer un premier projet... 17 Écrire un programme... 18 Compiler, exécuter... 20 Mieux comprendre... 22 15 1.1. Créer un premier projet Pour commencer, lancez Visual Basic Express.

Plus en détail

Hadoop / Big Data. Benjamin Renaut MBDS 2014-2015

Hadoop / Big Data. Benjamin Renaut <renaut.benjamin@tokidev.fr> MBDS 2014-2015 Hadoop / Big Data Benjamin Renaut MBDS 2014-2015 TP 1 Méthodologie Map/Reduce - programmation Hadoop. 1 Installer VirtualBox (https://www.virtualbox.org/). Importer la machine

Plus en détail

Les types utilisateurs (VBA) Corrigé

Les types utilisateurs (VBA) Corrigé PAD INPT ALGORITHMIQUE ET PROGRAMMATION 1 Cours VBA, Semaine 2 avril mai 2013 Corrigé Résumé Ce document décrit comment traduire en VBA les types utilisateur du langage algorithmique. Table des matières

Plus en détail

2015 kmeans. September 3, 2015

2015 kmeans. September 3, 2015 2015 kmeans September 3, 2015 1 Kmeans avec PIG auteurs : P. Atalaya, M. Gubri M k-means est un algorithme de clustering relativement simple qu on cherche à paralléliser. In [1]: import pyensae %nb_menu

Plus en détail

1 Programmation Client/Serveur basée sur TCP/IP

1 Programmation Client/Serveur basée sur TCP/IP Outils Informatique pour l ingénieur TD 1 Réseau et Web IP, Client/serveur 1 Programmation Client/Serveur basée sur TCP/IP 1.1 Buts de cette réalisation Ce TP sur la programmation client/serveur a pour

Plus en détail

Pack numérique. Guide d installation : comment installer et télécharger vos manuels numériques

Pack numérique. Guide d installation : comment installer et télécharger vos manuels numériques Pack numérique Guide d installation : comment installer et télécharger vos manuels numériques Si vous avez acheté un Pack numérique sur notre site, vous pourrez avoir accès sur votre ordinateur et sur

Plus en détail

Notice utilisation New Short Term Scheduler pour SOPHIE

Notice utilisation New Short Term Scheduler pour SOPHIE Notice utilisation New Short Term Scheduler pour SOPHIE Version 1.0 20 Nov francois.bouchy@lam.fr Machine et Architecture des répertoires Machine sophiests-2.obs-hp.fr Login : sosphiests Password : identique

Plus en détail

Philippe Gandy - 1 septembre 2015. Basésur les notes de coursde Daniel Morin et RochLeclerc

Philippe Gandy - 1 septembre 2015. Basésur les notes de coursde Daniel Morin et RochLeclerc Philippe Gandy - 1 septembre 2015 Basésur les notes de coursde Daniel Morin et RochLeclerc Présentationet lecture du plan de cours Introduction sur Java Installation d Eclipseet créationde workspace Conventions

Plus en détail

TP JAVASCRIPT OMI4 TP5 SRC1 2011-2012

TP JAVASCRIPT OMI4 TP5 SRC1 2011-2012 TP JAVASCRIPT OMI4 TP5 SRC1 2011-2012 FORMULAIRE DE CONTACT POUR PORTFOLIO PRINCIPE GENERAL Nous souhaitons réaliser un formulaire de contact comprenant les champs suivants : NOM PRENOM ADRESSE MAIL MESSAGE

Plus en détail

Logiciel DELF-DALF - Mise à jour vers la version 6.2.5 (septembre 2014)

Logiciel DELF-DALF - Mise à jour vers la version 6.2.5 (septembre 2014) Logiciel DELF-DALF - Mise à jour vers la version 6.2.5 (septembre 2014) En quoi consiste cette mise à jour? Questions et réponses La mise à jour : - installe une nouvelle version du programme, avec de

Plus en détail

Manuel d installation et d utilisation du logiciel GigaRunner

Manuel d installation et d utilisation du logiciel GigaRunner Manuel d installation et d utilisation du logiciel GigaRunner Manuel Version : V1.6 du 12 juillet 2011 Pour plus d informations, vous pouvez consulter notre site web : www.gigarunner.com Table des matières

Plus en détail

Introduction à l utilisation d Occigen

Introduction à l utilisation d Occigen Introduction à l utilisation d Occigen Vous avez obtenu des heures de calcul sur un supercalculateur national! Ce petit guide va vous permettre de démarrer en quelques minutes. Avant de commencer, il vous

Plus en détail

Introduction au Makefile

Introduction au Makefile Introduction au Makefile Nicolas Kielbasiewicz 3 mars 2009 Le développement d un programme et plus généralement d un logiciel demande au(x) programmeur(s) de gérer plusieurs fichiers, voire plusieurs langages.

Plus en détail

Connexion au serveur ANOR09 depuis un réseau externe

Connexion au serveur ANOR09 depuis un réseau externe Connexion au serveur ANOR09 depuis un réseau externe 1. Préparation de votre machine : installation des logiciels nécessaires Afin de vous connecter au serveur ANOR09, vous devrez tout d abord télécharger

Plus en détail

TD n 1 - Tests de couverture en langage C

TD n 1 - Tests de couverture en langage C ENSEIRB Année 201-2014 ème année IT06 TD n 1 - Tests de couverture en langage C Résumé : Cette feuille compare les différentes techniques de test structurel et fonctionnel, ainsi que les aspects du test

Plus en détail

Projet d Etude et de Développement

Projet d Etude et de Développement Projet d Etude et de Développement PokerServer Guide d installation Auteurs: Lucas Kerdoncuff Balla Seck Rafik Ferroukh Xan Lucu Youga MBaye Clients: David Bromberg Laurent Réveillère March 28, 2012 Contents

Plus en détail

1) Installation de Dev-C++ Téléchargez le fichier devcpp4990setup.exe dans un répertoire de votre PC, puis double-cliquez dessus :

1) Installation de Dev-C++ Téléchargez le fichier devcpp4990setup.exe dans un répertoire de votre PC, puis double-cliquez dessus : 1) Installation de Dev-C++ Téléchargez le fichier devcpp4990setup.exe dans un répertoire de votre PC, puis double-cliquez dessus : La procédure d installation démarre. La fenêtre suivante vous indique

Plus en détail

Représentation des nombres entiers et réels. en binaire en mémoire

Représentation des nombres entiers et réels. en binaire en mémoire L3 Mag1 Phys. fond., cours C 15-16 Rep. des nbs. en binaire 25-09-05 23 :06 :02 page 1 1 Nombres entiers 1.1 Représentation binaire Représentation des nombres entiers et réels Tout entier positif n peut

Plus en détail

Approche Contract First

Approche Contract First Exemple HelpDesk Approche Contract First Développement d un premier web service en utilisant l approche contract first (ou WSDL First) Écriture du wsdl avant d écrire le code java Autre possibilité implementation

Plus en détail

Héritage en java : Calculatrice SDC

Héritage en java : Calculatrice SDC Programmation orientée objet L3 MIAGE Héritage en java : Calculatrice SDC Travail à rendre : le code complet du projet SDC sous forme d une archive tar.gz. L archive comportera trois répertoires : un répertoire

Plus en détail

TP Informatique Décisionnelle. OLAP : Mondrian et Pentaho. 1. Télécharger la version libre de Pentaho sur :

TP Informatique Décisionnelle. OLAP : Mondrian et Pentaho. 1. Télécharger la version libre de Pentaho sur : PARTIE 1 : Installer et lancer Pentaho sur Mac TP Informatique Décisionnelle OLAP : Mondrian et Pentaho 1. Télécharger la version libre de Pentaho sur : http://sourceforge.net/projects/pentaho/files/business%20intelligence%20server/

Plus en détail

Installation de TYPO3 sur les serveurs mutualisés de Free

Installation de TYPO3 sur les serveurs mutualisés de Free Installation de TYPO3 sur les serveurs mutualisés de Free Copyright 2006 Franck Evrard [ http://fr.evrard.free.fr ] --o-- This document is published under the Open Content licence available from http://www.opencontent.org/opl.shtml

Plus en détail

Installation d un patch de mise à jour et d un pack langue dans SugarCRM Open Source 4.5.1

Installation d un patch de mise à jour et d un pack langue dans SugarCRM Open Source 4.5.1 Installation d un patch de mise à jour et d un pack langue dans SugarCRM Open Source 4.5.1 Version 1.0.1 Mentions légales Mentions légales Ce document est susceptible de modification à tout moment sans

Plus en détail

Connexion au serveur MEARH14 depuis un réseau externe

Connexion au serveur MEARH14 depuis un réseau externe Connexion au serveur MEARH14 depuis un réseau externe Ce document est consacré à la connexion depuis l extérieur du réseau Polytech vers le serveur mearh14. 1. Préparation de votre machine : installation

Plus en détail

TPS 5 : Prise en main du système de Développement IMAP137L. Préparation. Objectifs : Manipulation :

TPS 5 : Prise en main du système de Développement IMAP137L. Préparation. Objectifs : Manipulation : TPS 5 : Prise en main du système de Développement IMAP137L Préparation 1. Prendre connaissance de l annexe de ce TP et revoir les pages 110-126 du cours. 2. Quels sont les principaux constituants du Système

Plus en détail

Atelier de programmation en python

Atelier de programmation en python Atelier de programmation en python Kévin Chewie Sztern et Christophe Sagane Vermorel Contents Introduction 2 L environnement de développement 2 Démarrer l IDE............................... 2 Premiers

Plus en détail

INF-130 Travail Pratique #2

INF-130 Travail Pratique #2 École de technologie supérieure INF-30 Travail Pratique #2 Travail individuel Tracé d un métro Francis Bourdeau, Frédérick Henri et Patrick Salois Remise à la 0 e semaine. Objectifs - Amener l étudiant

Plus en détail

Corrigé du TP Carte SIM

Corrigé du TP Carte SIM Corrigé du TP Carte SIM Outil GScriptor Il faut d abord télécharger GScriptor : http://www.springcard.com/download/find.php?file=gscriptor et l installer sous Windows. Depuis Windows 7, il n est pas nécessaire

Plus en détail

Mode FAST Installation sur Windows de lecteur bi-fente CNOP (Conseil National de l Ordre des Pharmaciens)

Mode FAST Installation sur Windows de lecteur bi-fente CNOP (Conseil National de l Ordre des Pharmaciens) Mode FAST Installation sur Windows de lecteur bi-fente (Conseil National de l Ordre des Pharmaciens) Référence : DP_Mode_FAST_Installation_Lecteur_Bi-fente_V0 Date : 6/05/2013 Version : 1.0 Sommaire 1

Plus en détail

Installation de Shinken

Installation de Shinken Installation de Shinken Shinken a besoin d un utilisateur pour fonctionner. adduser m shinken On passe à l installation des dépendances python nécessaire à l installation apt-get install python-pycurl

Plus en détail

TME 1 - Hadoop, une plate-forme open-source de MapReduce. Installation et prise en main

TME 1 - Hadoop, une plate-forme open-source de MapReduce. Installation et prise en main CODEL : conception et développement d applications d entreprise à large échelle TME 1 - Hadoop, une plate-forme open-source de MapReduce. Installation et prise en main Jonathan Lejeune Contexte Le modèle

Plus en détail

1. Lecture / Ecriture

1. Lecture / Ecriture IUT Arles Info 1 ère année - Module AP (Algorithmique) TD 2 Algo 1. Lecture / Ecriture Exercice I : Quels résultats produira ce programme : Variables val, double : numériques Val 231 Double val * 2 Ecrire

Plus en détail

Lancement de Star-CCM+ avec SGE

Lancement de Star-CCM+ avec SGE Lancement de Star-CCM+ avec SGE Lionel Meister IUSTI, UMR CNRS 6595 lionel.meister@polytech.univ-mrs.fr 28 septembre 2010 A ce jour, la partition Dix est la seule partition du parc sur laquelle on peut

Plus en détail

Les outils de développement en langage C++

Les outils de développement en langage C++ Les outils de développement en langage C++ Sommaire Les étapes de réalisation d'un exécutable Le pré processeur La création d'un exécutable Les étapes de réalisation d'un exécutable Traitement des fichiers

Plus en détail

Activité FlowCode. Il DECIDE : toute la logique simple (et, ou, comparaison, test de valeur)

Activité FlowCode. Il DECIDE : toute la logique simple (et, ou, comparaison, test de valeur) Activité FlowCode I. Objectif Découvrir les éléments simples d une structure programmée. Simuler un programme de MicroContrôleur. II. Présentation du Microcontrôleur Microcontrôleur PIC 16F84 1. Qu est-ce

Plus en détail

COURS 6 Adopter un style de programmation clair

COURS 6 Adopter un style de programmation clair COURS 6 Adopter un style de programmation clair Lorsque votre site prend de l'importance, le code devient vite illisible et incompréhensible si vous ne pensez pas à l'organiser. Mais comment organiser

Plus en détail

Installer le socle java version 2

Installer le socle java version 2 Installer le socle java version 2 Version : 1.5.0 Date : 10.mars 2009 Auteur : Monique Hug Le présent document est téléchargeable à l adresse suivante : http://adullact.net/docman/index.php?group_id=554&selected_doc_group_id=1025&language_id=7

Plus en détail

SAS DEPLOYMENT MANAGER

SAS DEPLOYMENT MANAGER SAS DEPLOYMENT MANAGER SAS Deployment Manager est un outil permettant d effectuer des tâches administratives sur votre installation et votre configuration SAS. Il est disponible depuis SAS 9.2 et s est

Plus en détail

4D Business Kit 2.1 et la solution de paiement Sogenactif de la Société Générale

4D Business Kit 2.1 et la solution de paiement Sogenactif de la Société Générale 4D Business Kit 2.1 et la solution de paiement Sogenactif de la Société Générale Contact : http://www.sogenactif.fr Voici l ensemble des fichiers fournis avec 4D Business Kit qui sont concernés par la

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

Programmation de µcontrôleurs

Programmation de µcontrôleurs Programmation de µcontrôleurs En environnement Windows Ce tutoriel est la suite directe de la formation de soudure CMS. Il présente les différentes étapes à franchir afin de programmer le µcontrôleur présent

Plus en détail

EXAMEN PROFESSIONNEL DE VÉRIFICATION D APTIDUDE AUX FONCTIONS DE PROGRAMMEUR. Session 2012. Notation : sur 20

EXAMEN PROFESSIONNEL DE VÉRIFICATION D APTIDUDE AUX FONCTIONS DE PROGRAMMEUR. Session 2012. Notation : sur 20 MINISTÈRE DE L ÉGALITÉ DES TERRITOIRES ET DU LOGEMENT MINISTÈRE DE L ÉCOLOGIE, DU DÉVELOPPEMENT DURABLE ET DE L ÉNERGIE EXAMEN PROFESSIONNEL DE VÉRIFICATION D APTIDUDE AUX FONCTIONS DE PROGRAMMEUR Session

Plus en détail

Comment installer le gestionnaire de licence avec une nouvelle version de Arche / Effel / Melody?

Comment installer le gestionnaire de licence avec une nouvelle version de Arche / Effel / Melody? Comment installer le gestionnaire de licence avec une nouvelle version de Arche / Effel / Melody? Cette question ne concerne que les utilisateurs des versions réseaux des logiciels. Nous vous invitons

Plus en détail

Table des matières. 1 Objectifs... 3 2 Précautions importantes avant toute utilisation :... 4 3 Mode d emploi... 5 4 Questions / réponses...

Table des matières. 1 Objectifs... 3 2 Précautions importantes avant toute utilisation :... 4 3 Mode d emploi... 5 4 Questions / réponses... Table des matières 1 Objectifs... 3 2 Précautions importantes avant toute utilisation :... 4 3 Mode d emploi... 5 4 Questions / réponses... 6 1 Objectifs 1.1 Le BOB Migration Kit permet de : Convertir

Plus en détail

Entretenir et Nettoyer son PC

Entretenir et Nettoyer son PC Entretenir et Nettoyer son PC Ce tutoriel va te montrer comment bien entretenir et nettoyer ton PC gratuitement afin de le garder rapide et fluide un maximum de temps et éviter de le formater complètement

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

08/01/2013 www.toubkalit.ma

08/01/2013 www.toubkalit.ma 1 1 - La déclaration des chaînes 2 - Les opérations sur les chaînes 3 - Des exemples utiles 2 Pour déclarer une chaîne de caractères, vous pouvez utiliser les guillemets (") ou l'apostrophe ('). var chaine1="bonjour";

Plus en détail