TD 3 Recherche de similarités dans une banque de séquences

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

Download "TD 3 Recherche de similarités dans une banque de séquences"

Transcription

1 Module LV348 Version enseignant TD 3 page 1/7 TD 3 Recherche de similarités dans une banque de séquences Revu dernièrement par Mathilde Carpentier, Cyril Gallut et Joël Pothier Version du 30 mars 2012 Tous les exercices sont à faire en python. L objectif de ce TP est d écrire un programme de type FASTA. Cette méthode permet de trouver, dans une banque de séquences, les séquences ressemblant à une séquence dite requête. 1 Les données Nous travaillerons aussi avec la banque de séquences protéiques téléchargeable à l adresse : Vous pouvez télécharger une séquence requête à l adresse : dna_polymerase.fst. Vous pouvez également télécharger des séquences requêtes sur le site : 2 Pseudo-Fasta L objectif est d écrire un programme qui permet de compter le nombre de mots d une taille donnée (ou graines) communs entre la séquence requête et les séquence de la banque. Ce programme retournera la séquence de la banque partageant le plus de graines avec la requête. 2.1 Lecture des fichiers Écrivez (si cela n a pas déjà été fait) une fonction python nommée readfastalmul permettant de lire un fichier fasta contenant plusieurs séquences et qui retourne la liste des tuples (nom, sequence), le nom étant la ligne de description sans le ">". 2.2 Construction du dictionnaire des graines Écrivez une fonction nommée makedict qui à partir d une séquence et d une taille de graine, construit et retourne le dictionnaire contenant pour chaque graine présente dans la séquence les positions auxquelles elle apparaît. Exemple : Soit la séquence ATGATG et des graines de taille 3. Le dictionnaire retourné doit être (sachant que les indices commencent à 0) : {ATG:[0,3], TGA:[1] GAT:[2]}. 2.3 Comptage des graines communes Écrivez une fonction qui à partir d un dictionnaire de graines généré par la fonction ci-dessus et à partir d une séquence retourne le nombre de graines communes entre les Pseudo-Fasta Utilisez les fonctions précédentes pour écrire la fonction pseudofasta qui retourne la séquence de la banque partageant le plus de graines avec la requête.

2 Module LV348 Version enseignant TD 3 page 2/7 3 FASTA simple En réalité, la méthode FASTA prend aussi en compte les positions où sont trouvées les graines dans les séquences. Elle recherche d abord le décalage (ie. la meilleure diagonale) des deux séquences (requête/banque) pour le quel le plus grand nombre de graines est trouvé. Par exemple si on compare la séquence requête précédente ATGATG avec la séquence de la banque TATGA le meilleur décalage est de -1, c est-à-dire : -ATGATG TATGA Il y a alors 2 graines de longueur 3 communes : ATG et TGA. Le score de similitude entre ces 2 séquences sera alors le nombre de résidus identiques entre les deux séquences lorsqu elles sont décalées. Ecrivez un programme permettant de trouver les séquences d une banque les plus similaires à une séquence requête selon cette méthode. Solution : Toutes les fonctions python sont dans le repertoire code. 1 #!/usr/bin/python 2 # -*- coding: latin1 -*- 3 4 # chargement de la bibliothèque sys 5 import sys 6 # chargement de la bibliothèque random 7 from random import * 8 9 #Question # Lecture d un fichier de plusieurs séquences au format fasta 11 def readfastamul(nomfi): 12 # Lecture du contenu du fichier 13 f=open(nomfi,"r") 14 lines=f.readlines() 15 f.close() 16 # Analyse du contenu du fichier 17 seq="" 18 nom="" 19 lesseq=[] 20 for l in lines: 21 if l[0] == > : 22 if seq!= "": 23 tmp=(nom,seq) 24 lesseq.append(tmp) 25 nom=l[1:-1] 26 seq="" 27 else: 28 # Ne pas oublier d enlever le retour chariot à la fin 29 # des lignes 30 seq=seq+l[:-1] 31 if seq!= "": 32 tmp=(nom,seq) 33 lesseq.append(tmp) 34 return lesseq

3 Module LV348 Version enseignant TD 3 page 3/ # Question 2.2 Pour une taille l de mot donnée et une séquence, 37 # retourne le dictionnaire contenant pour chaque mot de taille l 38 # une liste des positions auxquelles il apparaît dans la séquence 39 # 40 def makedict(seq,l): 41 resdico={} 42 for i in xrange(0,len(seq)-l+1): 43 if resdico.has_key(seq[i:i+l]): 44 resdico[seq[i:i+l]].append(i) 45 else: 46 resdico[seq[i:i+l]]=[i] 47 return resdico #Question # Fonction retournant le nombre de graines communes 51 # entre le dictionnaire crée à partir de la séquence requête et une 52 # séquence donnée. 53 def comptegrainescommunes(seq, dico): 54 l=len(dico.keys()[0]) # récuppère la longueur de la graine. 55 nbgraines=0 56 for i in xrange(0,len(seq)-l+1): # Pour chaque mot de longueur l 57 # on incremente du nombre d occurence de ce mot 58 # dans la sequence requete (i.e. longeur de la liste des 59 # positions du mot) 60 if dico.has_key(seq[i:i+l]): 61 nbgraines=nbgraines+len(dico[seq[i:i+l]]) 62 return nbgraines #Question # Fonction retournant la séquence de la banque ayant le plus nombre de graines 66 # communes avec la séquence requête (sous forme de dictionnaire). 67 def pseudofasta(listeseq, query, lggraines): 68 listeseqscores=[] 69 dico=makedict(query, lggraines) 70 for seq in listeseq[0:]: 71 score=comptegrainescommunes(seq[1],dico)#/len(listeseq[0][1]) 72 #print score,seq[0] 73 listeseqscores.append((seq,score)) # Tri par ordre décroissant sur le deuxième élément du tuple (le score) 76 listeseqscores.sort(key=lambda SeqScore:SeqScore[1], reverse=true) 77 # Conserve les dix meilleurs 78 TenBestScores=listeSeqScores[0:10] 79 return TenBestScores ################################################### #Question #Fonction retournant le meilleur décalage 85 def decalage(dico, lgseqdico, seq): 86 lgseq=len(seq) 87 lgraine=len(dico.keys()[0]) 88 tdec={} 89 for i in xrange(-lgseq+1,lgseqdico): 90 tdec[i]=0

4 Module LV348 Version enseignant TD 3 page 4/7 91 #print tdec 92 #print tvaldec 93 for i in xrange(0,lgseq-lgraine+1): 94 if dico.has_key(seq[i:i+lgraine]): 95 #print "Graine ",seq[i:i+lgraine], " trouvee" 96 for j in dico[seq[i:i+lgraine]]: 97 tdec[j-i]=tdec[j-i]+1 98 return trouveimax(tdec) def trouveimax(tab): 101 imax=tab.keys()[0] 102 for i in tab.keys()[1:]: 103 if tab[imax]<tab[i]: 104 imax=i 105 return imax #Version de mathilde avec un tableau 110 #Q represente la requete et B la proteine de la banque 111 #Comme les decalages calcules avec la formule iq-ib 112 #sont dans l intervalle [-lgb+1,lgq-1] et 113 #qu on veut des indices entre [0,?] 114 #Il faut qu on ajoute lgb-1 iq-ib. 115 #Ansi, on aura un indice dans [0,lgB+lgQ-2] 116 #Donc i=iq-ib+lgb-1 et pour retouver le decalage 117 # dec = i-lgb def decalage2(dico, lgq, seq): 119 lgb=len(seq) 120 lgraine=len(dico.keys()[0]) 121 tdec=[] 122 imax=0 123 for ib in xrange(0,lgq+lgb-1): 124 tdec.append(0) 125 for ib in xrange(0,lgb-lgraine+1): 126 if dico.has_key(seq[ib:ib+lgraine]): 127 #print "Graine ",seq[i:i+lgraine], " trouvee" 128 for iq in dico[seq[ib:ib+lgraine]]: 129 tdec[iq-ib+lgb-1]=tdec[iq-ib+lgb-1] if tdec[iq-ib+lgb-1]>tdec[imax]: 131 imax=iq-ib+lgb return imax-lgb #Version de Joel ou le décalage est inverse: Banque-Query et non Query -Banque 136 #Fonction retournant le meilleur decalage 137 # qdico: dictionnaire de la query 138 # lgq: longueur de la sequence query 139 # bseq: seq de la banque 140 def decalagejoel(qdico, lgq, bseq): 141 lgb=len(bseq) 142 lgraine=len(qdico.keys()[0]) 143 tdec=[] 144 # Le decalage minimal de la seq query (lgq) par rapport 145 # a la seq banque (lgb) minimal est -lgq+k 146 # exemple avec k==2

5 Module LV348 Version enseignant TD 3 page 5/7 147 # query: lgq-3 lgq-2 lgq # bank: < lgq+k > lgb # 150 # Le decalage maximal de la query / banque est de lgb-k # exemple avec k==2 152 # query: < lgb-k ----> lgq-3 lgq-2 lgq # bank: lgb-2 lgb # donc l etalage de la liste des decalages doit etre: 155 # -lgq+k,..., 0,...,+lgb-k 156 # donc d une longueur ABS(-lgq+k) lgb-k, soit lgq-k+1+lgb-k, 157 # soit encore lgq+lgb-2k # Note: il faudra retrouver le vrai decalage en prenant l indice dans le tableau 159 # des decalages - lgq + k 160 # Exemple1: un vrai decalage de -lgq+k est a l indice 0 (ici decalage minimal) 161 # Exemple2: un vrai decalage de lgb-k est a l indice lgq+lgb-2k (ici 162 # decalage maximal) 163 # Inversement, on trouve l indice == decalage + lgq - k 164 for i in xrange(lgq+lgb-2*lgraine+1): 165 tdec.append(0) 166 #print tdec 167 indicemax = decamax=0 169 for posb in xrange(0,lgb-lgraine+1): 170 if qdico.has_key(bseq[i:i+lgraine]): 171 #print "Graine ",bseq[i:i+lgraine], " trouvee" 172 for posq in dico[seq[i:i+lgraine]]: 173 indice = posb-posq + lgq - lgraine 174 tdec[indice]=tdec[indice] # on note le max en meme temps 176 if tdec[indice] > tdec[indicemax]: 177 indicemax = indice 178 decamax = posb-posq 179 return decamax #Question # Fonction comptant le nombre d aa identiques 184 # Si les 2 protéines sont alignées selon le décalage donné 185 def CompteId(seq1,seq2,dec): 186 if dec <= 0: 187 iseq1=0 188 else: 189 iseq1=dec 190 iseq2=iseq1-dec 191 len1=len(seq1) 192 len2=len(seq2) 193 nbid=0 194 while iseq1 <len1 and iseq2 < len2: 195 if seq1[iseq1]==seq2[iseq2]: 196 nbid+=1 197 iseq1+=1 198 iseq2+=1 199 return nbid 200

6 Module LV348 Version enseignant TD 3 page 6/7 201 #Question # Fonction retournant la séquence de la liste de séquences 203 # ayant le plus de graines commune avec la séquence requête 204 # (sous forme de dictionnaire) 205 def FastaSimple(listeSeq, query, lggraines): 206 dico=makedict(query, lggraines) 207 lgquery=len(query) 208 dec=decalage(dico, lgquery, listeseq[0][1]) 209 bestscore=compteid(listeseq[0][1],query, dec) 210 bestseq=listeseq[0] 211 for i in listeseq[1:]: 212 dec=decalage(dico, lgquery, i[1]) 213 score=compteid(i[1],query, dec) 214 #print score,i[0] 215 if score > bestscore: 216 bestscore=score 217 bestseq=i 218 return(bestseq,bestscore) # ############################################################################### 221 ################################ main ################################ # Si la ligne de commande ne contient pas le bon nombre de paramètres le 225 # programme s arrête en afichant le mode d emplois 226 if ( len(sys.argv)!= 4 ): 227 print "Usage :" 228 print "./SolutionsTD3_Fasta.py banque seqreq taille" 229 print "\tbanque : fichier fasta contenant la banque" 230 print "\tseqreq : fichier fasta contenant la séquence reqête" 231 print "\tseqreq : taille de la graine (entier)" 232 sys.exit() #Question print "Lecture de la banque" 236 messeq=readfastamul(sys.argv[1]) 237 print "Lecture de la requete" 238 query=readfastamul(sys.argv[2]) 239 taillegraine = int(sys.argv[3]) #Question #print makedict("atgatg",3) 244 print "Construction du dictionnaire de la séquence requête" 245 dicoquery=makedict(query[0][1],taillegraine) #PSEUDO FASTA 248 #Question #print "Nombre de graines de taille 3 communes entre ATGATG et TATGA" 250 #print comptegrainescommunes("tatga", makedict("atgatg",3)) #question 2.4

7 Module LV348 Version enseignant TD 3 page 7/7 254 print "PseudoFasta" 255 #messeq.append(query[0]) 256 TenbestHits=pseudoFasta(mesSeq, query[0][1],taillegraine) 257 print "Meilleur hit avec pseudofasta",tenbesthits[0][0][0],"nb graines ", TenbestHits[0][1] for i in xrange(0,10): 260 print "Nb graines =",TenbestHits[i][1]," : ",TenbestHits[i][0][0] print #FASTA SIMPLE 265 #question #print "meilleur decalage pour les sequences ATGATG et TATGA :" 267 #print "Selon fonction decalage ", decalage(makedict("atgatg",3), 6, "TATGA") 268 #print "Selon fonction decalage2", decalage2(makedict("atgatg",3), 6, "TATGA") 269 #print "Selon fonction decalagejoel", decalagejoel(makedict("atgatg",3), 6, " TATGA") 270 #bestdec=decalage(dicoquery, len(query[0][1]), besthit[0][1]) #question #print "Nb id pour les sequences ATGATG et TATGA :" 274 #print CompteId("ATGATG", "TATGA", decalage(makedict("atgatg",3), 6, "TATGA")) #question besthit=fastasimple(messeq, query[0][1],taillegraine) 278 print "Meilleur hit avec FastaSimple",bestHit[0][0],"nb identites ",besthit[1] code/solutionstd3_fasta.py

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

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

Perl Orienté Objet BioPerl There is more than one way to do it Perl Orienté Objet BioPerl There is more than one way to do it Bérénice Batut, berenice.batut@udamail.fr DUT Génie Biologique Option Bioinformatique Année 2014-2015 Perl Orienté Objet - BioPerl Rappels

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

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

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

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

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

Licence Sciences et Technologies Examen janvier 2010

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

Plus en détail

Découverte de Python

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

Plus en détail

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

Algorithmique I. Augustin.Lux@imag.fr Roger.Mohr@imag.fr Maud.Marchal@imag.fr. Algorithmique I 20-09-06 p.1/??

Algorithmique I. Augustin.Lux@imag.fr Roger.Mohr@imag.fr Maud.Marchal@imag.fr. Algorithmique I 20-09-06 p.1/?? Algorithmique I Augustin.Lux@imag.fr Roger.Mohr@imag.fr Maud.Marchal@imag.fr Télécom 2006/07 Algorithmique I 20-09-06 p.1/?? Organisation en Algorithmique 2 séances par semaine pendant 8 semaines. Enseignement

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

Premiers Pas en Programmation Objet : les Classes et les Objets

Premiers Pas en Programmation Objet : les Classes et les Objets Chapitre 2 Premiers Pas en Programmation Objet : les Classes et les Objets Dans la première partie de ce cours, nous avons appris à manipuler des objets de type simple : entiers, doubles, caractères, booléens.

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

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

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

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

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

Compression Compression par dictionnaires

Compression Compression par dictionnaires Compression Compression par dictionnaires E. Jeandel Emmanuel.Jeandel at lif.univ-mrs.fr E. Jeandel, Lif CompressionCompression par dictionnaires 1/25 Compression par dictionnaire Principe : Avoir une

Plus en détail

Cours 3 : Python, les conditions

Cours 3 : Python, les conditions Cours 3 : Python, les conditions Conditions Permet d'exécuter des ordres dans certaines conditions : if condition1: code exécuté si condition1 est vraie code exécuté si condition1 est vraie... elif condition2:

Plus en détail

Architecture des Systèmes d Information Architecture des Systèmes d Information

Architecture des Systèmes d Information Architecture des Systèmes d Information Plan... Tableaux et tris I3 - Algorithmique et programmation 1 Rappels Nicol Delestre 2 Tableaux à n dimensions 3 Initiation aux tris Tableaux - v2.0.1 1 / 27 Tableaux - v2.0.1 2 / 27 Rappels : tableau

Plus en détail

Chapitre 4 Pierre, papier, ciseaux

Chapitre 4 Pierre, papier, ciseaux Python 3 : objectif jeux Chapitre 4 Chapitre 4 Pierre, papier, ciseaux (version graphique) 4.1. Thèmes abordés dans ce chapitre Le module tkinter : Label, Button Fenêtre Événements Réceptionnaire d'événements

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

Travaux pratiques. Compression en codage de Huffman. 1.3. Organisation d un projet de programmation

Travaux pratiques. Compression en codage de Huffman. 1.3. Organisation d un projet de programmation Université de Savoie Module ETRS711 Travaux pratiques Compression en codage de Huffman 1. Organisation du projet 1.1. Objectifs Le but de ce projet est d'écrire un programme permettant de compresser des

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

Etude et développement d un moteur de recherche

Etude et développement d un moteur de recherche Ministère de l Education Nationale Université de Montpellier II Projet informatique FLIN607 Etude et développement d un moteur de recherche Spécifications fonctionnelles Interface utilisateur Responsable

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

ENDNOTE X2 SOMMAIRE. 1. La bibliothèque EndNote 1.1. Créer une nouvelle bibliothèque 1.2. Ouvrir une bibliothèque EndNote 1.3. Fermer une bibliothèque

ENDNOTE X2 SOMMAIRE. 1. La bibliothèque EndNote 1.1. Créer une nouvelle bibliothèque 1.2. Ouvrir une bibliothèque EndNote 1.3. Fermer une bibliothèque 1 ENDNOTE X2 SOMMAIRE 1. La bibliothèque EndNote 1.1. Créer une nouvelle bibliothèque 1.2. Ouvrir une bibliothèque EndNote 1.3. Fermer une bibliothèque 2. Manipuler une bibliothèque EndNote 2.1. La saisie

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

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 : Gestion d une image au format PGM

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

Plus en détail

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

INF111. Initiation à la programmation impérative en C http://ama.liglab.fr/ amini/cours/l1/inf111/ Massih-Reza Amini Initiation à la programmation impérative en C http://ama.liglab.fr/ amini/cours/l1// Massih-Reza Amini Université Joseph Fourier Laboratoire d Informatique de Grenoble 2/52 Introduction Structures de contrôle

Plus en détail

Les bases du langage Python

Les bases du langage Python Laboratoire de mathématiques d'orsay 6 décembre 2010 Plan 1 Présentation de Python 2 Les types et les opérations de base 3 Les structures de contrôle 4 Les fonctions 5 Les chiers 6 Les classes 7 Les exceptions

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

TD de supervision. J.P. Chemla. Polytech Tours Département productique 2ème année

TD de supervision. J.P. Chemla. Polytech Tours Département productique 2ème année TD de supervision J.P. Chemla Polytech Tours Département productique 2ème année 1 Présentation de l équipement On veut superviser une cuve dans un batiment. Les informations à visualiser sont les suivantes

Plus en détail

La gestion de données dans le cadre d une application de recherche d alignement de séquence : BLAST.

La gestion de données dans le cadre d une application de recherche d alignement de séquence : BLAST. La gestion de données dans le cadre d une application de recherche d alignement de séquence : BLAST. Gaël Le Mahec - p. 1/12 L algorithme BLAST. Basic Local Alignment Search Tool est un algorithme de recherche

Plus en détail

Plus courts chemins, programmation dynamique

Plus courts chemins, programmation dynamique 1 Plus courts chemins, programmation dynamique 1. Plus courts chemins à partir d un sommet 2. Plus courts chemins entre tous les sommets 3. Semi-anneau 4. Programmation dynamique 5. Applications à la bio-informatique

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

Le langage SQL Rappels

Le langage SQL Rappels Le langage SQL Rappels Description du thème : Présentation des principales notions nécessaires pour réaliser des requêtes SQL Mots-clés : Niveau : Bases de données relationnelles, Open Office, champs,

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

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

TP Bases de données réparties

TP Bases de données réparties page 1 TP Bases de données réparties requêtes réparties Version corrigée Auteur : Hubert Naacke, révision 5 mars 2003 Mots-clés: bases de données réparties, fragmentation, schéma de placement, lien, jointure

Plus en détail

Recherche dans un tableau

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

Plus en détail

Plan du cours. Historique du langage http://www.oracle.com/technetwork/java/index.html. Nouveautés de Java 7

Plan du cours. Historique du langage http://www.oracle.com/technetwork/java/index.html. Nouveautés de Java 7 Université Lumière Lyon 2 Faculté de Sciences Economiques et Gestion KHARKIV National University of Economic Introduction au Langage Java Master Informatique 1 ère année Julien Velcin http://mediamining.univ-lyon2.fr/velcin

Plus en détail

LOSLIER Mathieu. Filière Informatique et Réseau 1 ère année. TP DNS. Responsable : LOHIER Stephane. Chargé de TD : QUIDELLEUR Aurélie

LOSLIER Mathieu. Filière Informatique et Réseau 1 ère année. TP DNS. Responsable : LOHIER Stephane. Chargé de TD : QUIDELLEUR Aurélie LOSLIER Mathieu Filière Informatique et Réseau 1 ère année. TP DNS Responsable : LOHIER Stephane Chargé de TD : QUIDELLEUR Aurélie Le 24 Novembre 2010 Table des matières 1. Intoduction... 4 2. Préliminaires...

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

Django et PostgreSQL sous la charge

Django et PostgreSQL sous la charge Django et PostgreSQL sous la charge Rodolphe Quiédeville Pourquoi couper la queue du poulet? RMLL - Beauvais 8 juillet 2015 Rodolphe Quiédeville (PeopleDoc) Django et PostgreSQL sous la charge 8 juillet

Plus en détail

Master1 ère année. Réseaux avancés I. TP nº5 filière ISICG

Master1 ère année. Réseaux avancés I. TP nº5 filière ISICG Master1 ère année Réseaux avancés I TP nº5 filière ISICG Utilisation de la microplateforme Bottle et du framework AngularJS La «micro web-framework» Bottle pour Python Les principales caractèristiques

Plus en détail

Identification de nouveaux membres dans des familles d'interleukines

Identification de nouveaux membres dans des familles d'interleukines Identification de nouveaux membres dans des familles d'interleukines Nicolas Beaume Jérôme Mickolajczak Gérard Ramstein Yannick Jacques 1ère partie : Définition de la problématique Les familles de gènes

Plus en détail

AWS avancé. Surveiller votre utilisation d EC2

AWS avancé. Surveiller votre utilisation d EC2 10 AWS avancé Dans ce chapitre, nous bâtirons sur les bases que nous avons apprises jusqu ici. Nous étudierons des sujets plus avancés tels que la surveillance de votre utilisation d AWS, l utilisation

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

Mysql avec EasyPhp. 1 er mars 2006

Mysql avec EasyPhp. 1 er mars 2006 Mysql avec EasyPhp 1 er mars 2006 Introduction MYSQL dérive directement de SQL (Structured Query Language) qui est un langage de requètes vers les bases de données relationnelles. Il en reprend la syntaxe

Plus en détail

Génie Logiciel avec Ada. 4 février 2013

Génie Logiciel avec Ada. 4 février 2013 Génie Logiciel 4 février 2013 Plan I. Généralités II. Structures linéaires III. Exceptions IV. Structures arborescentes V. Dictionnaires I. Principes II. Notions propres à la POO I. Principes Chapitre

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

1. Base de données SQLite

1. Base de données SQLite Dans ce TP, nous allons voir comment créer et utiliser une base de données SQL locale pour stocker les informations. La semaine prochaine, ça sera avec un WebService. On repart de l application AvosAvis

Plus en détail

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

TP n 2 Concepts de la programmation Objets Master 1 mention IL, semestre 2 Le type Abstrait Pile TP n 2 Concepts de la programmation Objets Master 1 mention IL, semestre 2 Le type Abstrait Pile Dans ce TP, vous apprendrez à définir le type abstrait Pile, à le programmer en Java à l aide d une interface

Plus en détail

Programmation Web. Madalina Croitoru IUT Montpellier

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

Plus en détail

LA PHYSIQUE DES MATERIAUX. Chapitre 1 LES RESEAUX DIRECT ET RECIPROQUE

LA PHYSIQUE DES MATERIAUX. Chapitre 1 LES RESEAUX DIRECT ET RECIPROQUE LA PHYSIQUE DES MATERIAUX Chapitre 1 LES RESEAUX DIRECT ET RECIPROQUE Pr. A. Belayachi Université Mohammed V Agdal Faculté des Sciences Rabat Département de Physique - L.P.M belayach@fsr.ac.ma 1 1.Le réseau

Plus en détail

PROJET 1 : BASE DE DONNÉES REPARTIES

PROJET 1 : BASE DE DONNÉES REPARTIES PROJET 1 : BASE DE DONNÉES REPARTIES GESTION D UNE BANQUE Elèves : David Bréchet Frédéric Jacot Charles Secrétan DONNÉES DU PROJET SSC - Bases de Données II Laboratoire de Bases de Données BD réparties

Plus en détail

Access et Org.Base : mêmes objectifs? Description du thème : Création de grilles d écran pour une école de conduite.

Access et Org.Base : mêmes objectifs? Description du thème : Création de grilles d écran pour une école de conduite. Access et Org.Base : mêmes objectifs? Description du thème : Création de grilles d écran pour une école de conduite. Mots-clés : Niveau : Bases de données relationnelles, Open Office, champs, relations,

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

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

TP11 - Administration/Tuning

TP11 - Administration/Tuning TP11 - Administration/Tuning MIAGE #3-2006/2007 January 9, 2007 1 Architecture physique d une base Oracle 1.1 La structure physique Une base de données Oracle est composé de fichiers (au sens du système

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

Université de La Rochelle. Réseaux TD n 6

Université de La Rochelle. Réseaux TD n 6 Réseaux TD n 6 Rappels : Théorème de Nyquist (ligne non bruitée) : Dmax = 2H log 2 V Théorème de Shannon (ligne bruitée) : C = H log 2 (1+ S/B) Relation entre débit binaire et rapidité de modulation :

Plus en détail

Bases de données cours 1

Bases de données cours 1 Bases de données cours 1 Introduction Catalin Dima Objectifs du cours Modèle relationnel et logique des bases de données. Langage SQL. Conception de bases de données. SQL et PHP. Cours essentiel pour votre

Plus en détail

Module http MMS AllMySMS.com Manuel d intégration

Module http MMS AllMySMS.com Manuel d intégration Module http MMS AllMySMS.com Manuel d intégration Objectif du document... 3 1 Envoi de MMS par requête http... 4 1.1 Format de la requête utilisée... 4 1.2 Arborescence et explication des balises du flux

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

Guide d utilisation pour W.access - Client

Guide d utilisation pour W.access - Client 1. Inscription en ligne : Guide d utilisation pour W.access - Client Aller à l adresse suivante : http://www.micasf.com; Cliquer sur «Zone Clients» en haut à droite de la page, ensuite sur «OUVREZ VOTRE

Plus en détail

OLYMPIADES ACADEMIQUES DE MATHEMATIQUES. 15 mars 2006 CLASSE DE PREMIERE ES, GMF

OLYMPIADES ACADEMIQUES DE MATHEMATIQUES. 15 mars 2006 CLASSE DE PREMIERE ES, GMF OLYMPIADES ACADEMIQUES DE MATHEMATIQUES 15 mars 2006 CLASSE DE PREMIERE ES, GMF Durée : 4 heures Les quatre exercices sont indépendants Les calculatrices sont autorisées L énoncé comporte trois pages Exercice

Plus en détail

Bases Java - Eclipse / Netbeans

Bases Java - Eclipse / Netbeans Institut Galilée PDJ Année 2014-2015 Master 1 Environnements Java T.P. 1 Bases Java - Eclipse / Netbeans Il existe plusieurs environnements Java. Il est ESSENTIEL d utiliser la bonne version, et un environnement

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

SQL MAP. Etude d un logiciel SQL Injection

SQL MAP. Etude d un logiciel SQL Injection Introduction Ce TP a pour but d analyser un outil d injection SQL, comprendre les vulnérabilités d une BD et de mettre en œuvre une attaque par injection SQL. Prise en main du logiciel SQLMap est un outil

Plus en détail

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

Projet L1, S2, 2015: Simulation de fourmis, Soutenance la semaine du 4 mai. Projet L1, S2, 2015: Simulation de fourmis, Soutenance la semaine du 4 mai. 1 Introduction On considère une grille de 20 lignes 20 colonnes. Une case de la grille peut être vide, ou contenir une et une

Plus en détail

TP : Shell Scripts. 1 Remarque générale. 2 Mise en jambe. 3 Avec des si. Systèmes et scripts

TP : Shell Scripts. 1 Remarque générale. 2 Mise en jambe. 3 Avec des si. Systèmes et scripts E3FI ESIEE Paris Systèmes et scripts B. Perret TP : Shell Scripts 1 Remarque générale Lorsque vous cherchez des informations sur Internet, n'oubliez pas que langage de shell script que nous avons vu correspond

Plus en détail

Master 1 ère année. UE Réseaux Avancés I. Corrections décembre 2012. Durée : 2h Documents autorisés

Master 1 ère année. UE Réseaux Avancés I. Corrections décembre 2012. Durée : 2h Documents autorisés Master 1 ère année UE Réseaux Avancés I Corrections décembre 2012 Durée : 2h Documents autorisés NetFilter & Gestion de congestion (12 points) 1 Le responsable d une petite entreprise vous appelle pour

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

OUTIL DE TRAVAIL COLLABORATIF

OUTIL DE TRAVAIL COLLABORATIF B i b l i o t h è q u e OUTIL DE TRAVAIL COLLABORATIF Septembre 2012 TitanPad est un outil de travail collaboratif permettant de prendre des notes ou de rédiger à plusieurs un même texte à distance en

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

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

Architecture des ordinateurs TD1 - Portes logiques et premiers circuits

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

Plus en détail

TD : Codage des images

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

Plus en détail

Java Licence Professionnelle CISII, 2009-10

Java Licence Professionnelle CISII, 2009-10 Java Licence Professionnelle CISII, 2009-10 Cours 4 : Programmation structurée (c) http://www.loria.fr/~tabbone/cours.html 1 Principe - Les méthodes sont structurées en blocs par les structures de la programmation

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

Initiation à Excel. Frédéric Gava (MCF) gava@univ-paris12.fr

Initiation à Excel. Frédéric Gava (MCF) gava@univ-paris12.fr Initiation à Excel Frédéric Gava (MCF) gava@univ-paris12.fr LACL, bâtiment P2 du CMC, bureau 221 Université de Paris XII Val-de-Marne 61 avenue du Général de Gaulle 94010 Créteil cedex Plan de cette année

Plus en détail

Recherche d Information(RI): Fondements et illustration avec Apache Lucene. par Majirus Fansi @majirus

Recherche d Information(RI): Fondements et illustration avec Apache Lucene. par Majirus Fansi @majirus 1 Recherche d Information(RI): Fondements et illustration avec Apache Lucene par Majirus Fansi @majirus Résumé Fondements de la Recherche d Information (RI) Noyau de toute application de RI Éléments à

Plus en détail

Big data et sciences du Vivant L'exemple du séquençage haut débit

Big data et sciences du Vivant L'exemple du séquençage haut débit Big data et sciences du Vivant L'exemple du séquençage haut débit C. Gaspin, C. Hoede, C. Klopp, D. Laborie, J. Mariette, C. Noirot, MS. Trotard bioinfo@genopole.toulouse.inra.fr INRA - MIAT - Plate-forme

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

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

Dans le chapitre 1, nous associions aux fichiers ouverts des descripteurs de fichiers par lesquels nous accédions aux fichiers.

Dans le chapitre 1, nous associions aux fichiers ouverts des descripteurs de fichiers par lesquels nous accédions aux fichiers. I Présentation : Dans le chapitre 1, nous avons vu comment utiliser les appels-systèmes de bas niveau pour créer et accéder à des fichiers sur le disque. Nous avons notamment mis en évidence leur dépouillement

Plus en détail

Modélisation PHP Orientée Objet pour les Projets Modèle MVC (Modèle Vue Contrôleur) Mini Framework

Modélisation PHP Orientée Objet pour les Projets Modèle MVC (Modèle Vue Contrôleur) Mini Framework Modélisation PHP Orientée Objet pour les Projets Modèle MVC (Modèle Vue Contrôleur) Mini Framework L'objectif de ce document est de poser des bases de réflexion sur la modélisation d'un projet réalisé

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

Partie I : Créer la base de données. Année universitaire 2008/2009 Master 1 SIIO Projet Introduction au Décisionnel, Oracle

Partie I : Créer la base de données. Année universitaire 2008/2009 Master 1 SIIO Projet Introduction au Décisionnel, Oracle Année universitaire 2008/2009 Master 1 SIIO Projet Introduction au Décisionnel, Oracle Ce projet comporte trois parties sur les thèmes suivants : création de base de donnée, requêtes SQL, mise en œuvre

Plus en détail

Projet de programmation (IK3) : TP n 1 Correction

Projet de programmation (IK3) : TP n 1 Correction Projet de programmation (IK3) : TP n 1 Correction Semaine du 20 septembre 2010 1 Entrées/sorties, types de bases et structures de contrôle Tests et types de bases Tests et types de bases (entiers) public

Plus en détail

Stockage du fichier dans une table mysql:

Stockage du fichier dans une table mysql: Stockage de fichiers dans des tables MYSQL avec PHP Rédacteur: Alain Messin CNRS UMS 2202 Admin06 30/06/2006 Le but de ce document est de donner les principes de manipulation de fichiers dans une table

Plus en détail

1 Introduction et installation

1 Introduction et installation TP d introduction aux bases de données 1 TP d introduction aux bases de données Le but de ce TP est d apprendre à manipuler des bases de données. Dans le cadre du programme d informatique pour tous, on

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

Le modèle de données

Le modèle de données Le modèle de données Introduction : Une fois que l étude des besoins est complétée, deux points importants sont à retenir : Les données du système étudié Les traitements effectués par le système documentaire.

Plus en détail