SlideShare ist ein Scribd-Unternehmen logo
1 von 49
Downloaden Sie, um offline zu lesen
Introduction à la
 programmation
                         Pierre Poulain
        pierre.poulain@univ-paris-diderot.fr


                                    09/2011
Programmer ?
Donner des ordres
Pourquoi ?
Stocker
Trier
Répéter
Exemple
Combien y a-t-il d'alanines
dans cette protéine ?

GWGAWILAGAGA
Combien y a-t-il d'alanines
dans cette protéine ?

GWGAWILAGAGA
   1   2 3 4
Et dans celle-ci ?
MRARPRPRPLWATVLALGALAGVGVGGPNICTTRGVSSCQQCLAVSPMCAWCSDEALPLG
SPRCDLKENLLKDNCAPESIEFPVSEARVLEDRPLSDKGSGDSSQVTQVSPQRIALRLRP
DDSKNFSIQVRQVEDYPVDIYYLMDLSYSMKDDLWSIQNLGTKLATQMRKLTSNLRIGFG
AFVDKPVSPYMYISPPEALENPCYDMKTTCLPMFGYKHVLTLTDQVTRFNEEVKKQSVSR
NRDAPEGGFDAIMQATVCDEKIGWRNDASHLLVFTTDAKTHIALDGRLAGIVQPNDGQCH
VGSDNHYSASTTMDYPSLGLMTEKLSQKNINLIFAVTENVVNLYQNYSELIPGTTVGVLS
MDSSNVLQLIVDAYGKIRSKVELEVRDLPEELSLSFNATCLNNEVIPGLKSCMGLKIGDT
VSFSIEAKVRGCPQEKEKSFTIKPVGFKDSLIVQVTFDCDCACQAQAEPNSHRCNNGNGT
FECGVCRCGPGWLGSQCECSEEDYRPSQQDECSPREGQPVCSQRGECLCGQCVCHSSDFG
KITGKYCECDDFSCVRYKGEMCSGHGQCSCGDCLCDSDWTGYYCNCTTRTDTCMSSNGLL
CSGRGKCECGSCVCIQPGSYGDTCEKCPTCPDACTFKKECVECKKFDRGALHDENTCNRY
CRDEIESVKELKDTGKDAVNCTYKNEDDCVVRFQYYEDSSGKSILYVVEEPECPKGPDIL
VVLLSVMGAILLIGLAALLIWKLLITIHDRKEFAKFEEERARAKWDTANNPLYKEATSTF
TNITYRGT

                         Glycoprotéine plaquettaire humaine ß3
Un ordinateur
très rapide
beaucoup
de mémoire
mais bête
décomposer




un problème complexe
en éléments simples
Algorithme
Algorithme humain

        GWGAWILAGAGA
           1   2 3 4
Pour chaque acide aminé de la séquence,

si l'acide aminé est A

alors on compte une alanine de plus.
Algorithme Python

sequence = "GWGAWILAGAGA"
nombre_ala = 0

for acide_amine in sequence:
    if acide_amine == "A":
        nombre_ala = nombre_ala + 1

print nombre_ala
Autres langages ?
Java
package comptagealanines;
public class Main {
  public static void main(String[] args) {

        String sequence = "GWGAWILAGAGA";
        int nombre_ala = 0 ;

        for (int i = 0 ; i < sequence.length(); i++ ){
          if (sequence.charAt( i ) == 'A'){
            nombre_ala = nombre_ala + 1;
          }
        }

        System.out.println(nombre_ala);
    }
}
Perl
my @sequence = split('','GWGAWILAGAGA');
my $nombre_ala = 0 ;

foreach my $acide_amine (@sequence)
{
  if ($acide_amine eq 'A')
  {
    $nombre_ala = $nombre_ala + 1;
  }
}

print "$nombre_alan";
Javascript
<script>
var sequence = "GWGAWILAGAGA";
var nombre_ala = 0;

for(i=0; i<sequence.length; i++) {
      if(sequence[i].toUpperCase() == "A") {
            nombre_ala = nombre_ala + 1;
      }
}

window.alert("Nombre de A : " + nombre_ala);
</script>
PHP
<?php
        $sequence = "GWGAWILAGAGA";
        $nombre_ala = 0;

        for($i=0; $i<strlen($sequence); $i++) {
              if(strtoupper($sequence[$i]) == "A") {
                    $nombre_ala = $nombre_ala + 1;
              }
        }
        echo "Nombre de A : ".$nombre_ala;
?>
C#
using   System;
using   System.Collections.Generic;
using   System.Linq;
using   System.Text;

namespace ConsoleApplication1
{
    class Program
    {
        static void Main(string[] args)
        {
            string sequence = "GWGAWILAGAGA";
            int nombre_ala = 0;
            for (int i = 0; i < sequence.Length; i++)
            {
                if (sequence[i].ToString().ToUpper() == "A")
                {
                    nombre_ala = nombre_ala + 1;
                }
            }
            Console.WriteLine("Nombre de A : " + nombre_ala.ToString());
        }
    }
}
Points communs
1. Variables
2. Tests
3. Boucles
Différences
 ; { } @ $

using public class
static void
Compilation

C, C++, C#, Fortran

 code    langage   programme
source   machine   exécutable
Interprétation   (bytecode)


Java, Python, Perl

    code    bytecode
   source    (caché)
Interprétation

Bash, Javascript, PHP

        code source
     (ligne par ligne)
Illustration bioinfo 1
Ensembl
détection de gènes
Illustration bioinfo 2
sHSP




P. Poulain, J.-C. Gelly, and D. Flatters, Detection and Architecture of Small Heat Shock Protein Monomers, PLoS ONE 5: e9990 (2010).
Biologie Informatique @ P7


   Unix (bash), R, C      L3

   Python, C, (R)         M1

   Python, Java, C, (R)   M2
Conclusion
Investissez !
Forgez !
Facilitez-vous la vie !
Amusez-vous !
bio   informatique
Crédits graphiques
  PPDIGITAL (Flickr)
                                 TurboMilk (Findicons)


  Katherine Donaldson (Flickr)
                                 Wilsoninc (Findicons)

  Ralphbijker (Flickr)

                                 fe2cruz (Flickr)
  Olivcris (Flickr)
                                 713 Avenue (Flickr)

  Nicobunu (Openclipart.org)
                                 K Lee (Wikipedia)


  VisualPharm (Findicons)        selva (Flickr)
Crédits graphiques (2)
  Nardino (Flickr)            Ennor (Flickr)


  AlanHeitz (Flickr)          Dahon (Flickr)


  Foxymoron (Flickr)          Joe Rollerfan (Flickr)



  JoeShlabotnik (Flickr)      Liz Marion (Flickr)

  doi:10.1371/
  journal.pone.0009990.g001
                              beeeeeker (Flickr)
  JoshuaDavisPhotography
  (Flickr)

Weitere ähnliche Inhalte

Was ist angesagt?

Cours algorithme
Cours algorithmeCours algorithme
Cours algorithmebadr zaimi
 
Data encryption, Description, DES
Data encryption, Description, DESData encryption, Description, DES
Data encryption, Description, DESHuawei Technologies
 
Chapitre i architectures des processeurs récents
Chapitre i architectures des processeurs récentsChapitre i architectures des processeurs récents
Chapitre i architectures des processeurs récentsSana Aroussi
 
WIlfried K. AGBO- Exposé sur la Cryptographie
WIlfried K. AGBO- Exposé sur la CryptographieWIlfried K. AGBO- Exposé sur la Cryptographie
WIlfried K. AGBO- Exposé sur la CryptographieWilfreid AGBO
 
réseaux de neurones artificiels
réseaux de neurones artificiels réseaux de neurones artificiels
réseaux de neurones artificiels Oussama Werfelli
 
1 introduction informatique
1 introduction informatique1 introduction informatique
1 introduction informatiqueCEFRI-UAC
 
Cour systeme d'exploitation sghaier anouar
Cour systeme d'exploitation sghaier anouarCour systeme d'exploitation sghaier anouar
Cour systeme d'exploitation sghaier anouarAnouar Sghaier
 
Présentation intelligence artificielle et domaines d'applications - #DigitalT...
Présentation intelligence artificielle et domaines d'applications - #DigitalT...Présentation intelligence artificielle et domaines d'applications - #DigitalT...
Présentation intelligence artificielle et domaines d'applications - #DigitalT...Digital Thursday
 
Chapitre i architecture générale de l’unité centrale d’un ordinateur
Chapitre i architecture générale de l’unité centrale d’un ordinateurChapitre i architecture générale de l’unité centrale d’un ordinateur
Chapitre i architecture générale de l’unité centrale d’un ordinateurSana Aroussi
 
Algorithmique et Structures de Données II
Algorithmique et Structures de Données IIAlgorithmique et Structures de Données II
Algorithmique et Structures de Données IIRiadh Bouslimi
 
Chapitre iii interruptions
Chapitre iii interruptionsChapitre iii interruptions
Chapitre iii interruptionsSana Aroussi
 
Intelligence Artificielle : Introduction à l'intelligence artificielle
Intelligence Artificielle : Introduction à l'intelligence artificielleIntelligence Artificielle : Introduction à l'intelligence artificielle
Intelligence Artificielle : Introduction à l'intelligence artificielleECAM Brussels Engineering School
 
l'Intelligence Artificielle Jean-Antoine Moreau
l'Intelligence Artificielle Jean-Antoine Moreaul'Intelligence Artificielle Jean-Antoine Moreau
l'Intelligence Artificielle Jean-Antoine MoreauJean-Antoine Moreau
 
Travaux Dirigés : Algorithmique et Structure de Données
Travaux Dirigés : Algorithmique et Structure de DonnéesTravaux Dirigés : Algorithmique et Structure de Données
Travaux Dirigés : Algorithmique et Structure de DonnéesAnass41
 
Architecture ordinateur-2-architecture-de-base
Architecture ordinateur-2-architecture-de-baseArchitecture ordinateur-2-architecture-de-base
Architecture ordinateur-2-architecture-de-baseAbdoulaye Dieng
 
Cours informatiQue Pr.Siham HAIMER
Cours informatiQue Pr.Siham HAIMERCours informatiQue Pr.Siham HAIMER
Cours informatiQue Pr.Siham HAIMERأبو وردة
 
Bombe Logique.pptx
Bombe Logique.pptxBombe Logique.pptx
Bombe Logique.pptxAyoubToujani
 

Was ist angesagt? (20)

Cryptographie quantique
Cryptographie quantiqueCryptographie quantique
Cryptographie quantique
 
Cours algorithme
Cours algorithmeCours algorithme
Cours algorithme
 
Data encryption, Description, DES
Data encryption, Description, DESData encryption, Description, DES
Data encryption, Description, DES
 
Chapitre i architectures des processeurs récents
Chapitre i architectures des processeurs récentsChapitre i architectures des processeurs récents
Chapitre i architectures des processeurs récents
 
WIlfried K. AGBO- Exposé sur la Cryptographie
WIlfried K. AGBO- Exposé sur la CryptographieWIlfried K. AGBO- Exposé sur la Cryptographie
WIlfried K. AGBO- Exposé sur la Cryptographie
 
réseaux de neurones artificiels
réseaux de neurones artificiels réseaux de neurones artificiels
réseaux de neurones artificiels
 
1 introduction informatique
1 introduction informatique1 introduction informatique
1 introduction informatique
 
Cour systeme d'exploitation sghaier anouar
Cour systeme d'exploitation sghaier anouarCour systeme d'exploitation sghaier anouar
Cour systeme d'exploitation sghaier anouar
 
Présentation intelligence artificielle et domaines d'applications - #DigitalT...
Présentation intelligence artificielle et domaines d'applications - #DigitalT...Présentation intelligence artificielle et domaines d'applications - #DigitalT...
Présentation intelligence artificielle et domaines d'applications - #DigitalT...
 
Chapitre i architecture générale de l’unité centrale d’un ordinateur
Chapitre i architecture générale de l’unité centrale d’un ordinateurChapitre i architecture générale de l’unité centrale d’un ordinateur
Chapitre i architecture générale de l’unité centrale d’un ordinateur
 
Algorithmique et Structures de Données II
Algorithmique et Structures de Données IIAlgorithmique et Structures de Données II
Algorithmique et Structures de Données II
 
Chapitre iii interruptions
Chapitre iii interruptionsChapitre iii interruptions
Chapitre iii interruptions
 
Intelligence Artificielle : Introduction à l'intelligence artificielle
Intelligence Artificielle : Introduction à l'intelligence artificielleIntelligence Artificielle : Introduction à l'intelligence artificielle
Intelligence Artificielle : Introduction à l'intelligence artificielle
 
l'Intelligence Artificielle Jean-Antoine Moreau
l'Intelligence Artificielle Jean-Antoine Moreaul'Intelligence Artificielle Jean-Antoine Moreau
l'Intelligence Artificielle Jean-Antoine Moreau
 
Travaux Dirigés : Algorithmique et Structure de Données
Travaux Dirigés : Algorithmique et Structure de DonnéesTravaux Dirigés : Algorithmique et Structure de Données
Travaux Dirigés : Algorithmique et Structure de Données
 
Architecture ordinateur-2-architecture-de-base
Architecture ordinateur-2-architecture-de-baseArchitecture ordinateur-2-architecture-de-base
Architecture ordinateur-2-architecture-de-base
 
Cours informatiQue Pr.Siham HAIMER
Cours informatiQue Pr.Siham HAIMERCours informatiQue Pr.Siham HAIMER
Cours informatiQue Pr.Siham HAIMER
 
Bombe Logique.pptx
Bombe Logique.pptxBombe Logique.pptx
Bombe Logique.pptx
 
historique de l'informatique
historique de l'informatiquehistorique de l'informatique
historique de l'informatique
 
Sued or Suing: Introduction to Digital Forensics
Sued or Suing: Introduction to Digital ForensicsSued or Suing: Introduction to Digital Forensics
Sued or Suing: Introduction to Digital Forensics
 

Andere mochten auch

Formats de données en biologie
Formats de données en biologieFormats de données en biologie
Formats de données en biologiepierrepo
 
Cours python avancé
Cours python avancéCours python avancé
Cours python avancépierrepo
 
attitude professionnelle
attitude professionnelleattitude professionnelle
attitude professionnellepierrepo
 
Gestion de projets en bioinformatique
Gestion de projets en bioinformatiqueGestion de projets en bioinformatique
Gestion de projets en bioinformatiquepierrepo
 
Cours préparation au monde professionnel
Cours préparation au monde professionnelCours préparation au monde professionnel
Cours préparation au monde professionnelpierrepo
 
Cours docking gros grain
Cours docking gros grainCours docking gros grain
Cours docking gros grainpierrepo
 
Cours veille scientifique
Cours veille scientifiqueCours veille scientifique
Cours veille scientifiquepierrepo
 
Cours communication scientifique
Cours communication scientifiqueCours communication scientifique
Cours communication scientifiquepierrepo
 

Andere mochten auch (8)

Formats de données en biologie
Formats de données en biologieFormats de données en biologie
Formats de données en biologie
 
Cours python avancé
Cours python avancéCours python avancé
Cours python avancé
 
attitude professionnelle
attitude professionnelleattitude professionnelle
attitude professionnelle
 
Gestion de projets en bioinformatique
Gestion de projets en bioinformatiqueGestion de projets en bioinformatique
Gestion de projets en bioinformatique
 
Cours préparation au monde professionnel
Cours préparation au monde professionnelCours préparation au monde professionnel
Cours préparation au monde professionnel
 
Cours docking gros grain
Cours docking gros grainCours docking gros grain
Cours docking gros grain
 
Cours veille scientifique
Cours veille scientifiqueCours veille scientifique
Cours veille scientifique
 
Cours communication scientifique
Cours communication scientifiqueCours communication scientifique
Cours communication scientifique
 

Ähnlich wie Introduction à la programmation

Exploiter php 5
Exploiter php 5Exploiter php 5
Exploiter php 5halleck45
 
Les concepts de la programmation fonctionnelle illustrés avec Java 8
Les concepts de la programmation fonctionnelle illustrés avec Java 8Les concepts de la programmation fonctionnelle illustrés avec Java 8
Les concepts de la programmation fonctionnelle illustrés avec Java 8Yannick Chartois
 
Présentation Groovy
Présentation GroovyPrésentation Groovy
Présentation Groovyguest6e3bed
 
Présentation Groovy
Présentation GroovyPrésentation Groovy
Présentation GroovyJS Bournival
 
Analyse statique et applications
Analyse statique et applicationsAnalyse statique et applications
Analyse statique et applicationsDamien Seguy
 
Librairies Java qui changent la vie
Librairies Java qui changent la vieLibrairies Java qui changent la vie
Librairies Java qui changent la viecluelessjoe
 
Fork / Join, Parallel Arrays, Lambdas : la programmation parallèle (trop ?) f...
Fork / Join, Parallel Arrays, Lambdas : la programmation parallèle (trop ?) f...Fork / Join, Parallel Arrays, Lambdas : la programmation parallèle (trop ?) f...
Fork / Join, Parallel Arrays, Lambdas : la programmation parallèle (trop ?) f...Normandy JUG
 
ALF 11 - Diagrame de flux de controlle
ALF 11 - Diagrame de flux de controlleALF 11 - Diagrame de flux de controlle
ALF 11 - Diagrame de flux de controlleAlexandru Radovici
 
Java 8-streams-collectors-patterns
Java 8-streams-collectors-patternsJava 8-streams-collectors-patterns
Java 8-streams-collectors-patternsJosé Paumard
 
Annotation Java vs. Decorator Python
Annotation Java vs. Decorator PythonAnnotation Java vs. Decorator Python
Annotation Java vs. Decorator PythonDidier Plaindoux
 
Introduction Clojure - Geneva JUG - Octobre 2012
Introduction Clojure - Geneva JUG - Octobre 2012Introduction Clojure - Geneva JUG - Octobre 2012
Introduction Clojure - Geneva JUG - Octobre 2012Pablo Tamarit
 
Les concepts de la programmation fonctionnelle illustrés avec java 8
Les concepts de la programmation fonctionnelle illustrés avec java 8Les concepts de la programmation fonctionnelle illustrés avec java 8
Les concepts de la programmation fonctionnelle illustrés avec java 8Yannick Chartois
 
La référence Clear php
La référence Clear phpLa référence Clear php
La référence Clear phpDamien Seguy
 

Ähnlich wie Introduction à la programmation (20)

Exploiter php 5
Exploiter php 5Exploiter php 5
Exploiter php 5
 
Les concepts de la programmation fonctionnelle illustrés avec Java 8
Les concepts de la programmation fonctionnelle illustrés avec Java 8Les concepts de la programmation fonctionnelle illustrés avec Java 8
Les concepts de la programmation fonctionnelle illustrés avec Java 8
 
Présentation Groovy
Présentation GroovyPrésentation Groovy
Présentation Groovy
 
Présentation Groovy
Présentation GroovyPrésentation Groovy
Présentation Groovy
 
Analyse statique et applications
Analyse statique et applicationsAnalyse statique et applications
Analyse statique et applications
 
Librairies Java qui changent la vie
Librairies Java qui changent la vieLibrairies Java qui changent la vie
Librairies Java qui changent la vie
 
Cours de Génie Logiciel / ESIEA 2016-17
Cours de Génie Logiciel / ESIEA 2016-17Cours de Génie Logiciel / ESIEA 2016-17
Cours de Génie Logiciel / ESIEA 2016-17
 
Fork / Join, Parallel Arrays, Lambdas : la programmation parallèle (trop ?) f...
Fork / Join, Parallel Arrays, Lambdas : la programmation parallèle (trop ?) f...Fork / Join, Parallel Arrays, Lambdas : la programmation parallèle (trop ?) f...
Fork / Join, Parallel Arrays, Lambdas : la programmation parallèle (trop ?) f...
 
ALF 11 - Diagrame de flux de controlle
ALF 11 - Diagrame de flux de controlleALF 11 - Diagrame de flux de controlle
ALF 11 - Diagrame de flux de controlle
 
ALF 11 - WebAssembly
ALF 11 - WebAssemblyALF 11 - WebAssembly
ALF 11 - WebAssembly
 
Java 8-streams-collectors-patterns
Java 8-streams-collectors-patternsJava 8-streams-collectors-patterns
Java 8-streams-collectors-patterns
 
Drools
DroolsDrools
Drools
 
Annotation Java vs. Decorator Python
Annotation Java vs. Decorator PythonAnnotation Java vs. Decorator Python
Annotation Java vs. Decorator Python
 
Dynamic Languages
Dynamic LanguagesDynamic Languages
Dynamic Languages
 
Part1
Part1Part1
Part1
 
Introduction Clojure - Geneva JUG - Octobre 2012
Introduction Clojure - Geneva JUG - Octobre 2012Introduction Clojure - Geneva JUG - Octobre 2012
Introduction Clojure - Geneva JUG - Octobre 2012
 
Les concepts de la programmation fonctionnelle illustrés avec java 8
Les concepts de la programmation fonctionnelle illustrés avec java 8Les concepts de la programmation fonctionnelle illustrés avec java 8
Les concepts de la programmation fonctionnelle illustrés avec java 8
 
La référence Clear php
La référence Clear phpLa référence Clear php
La référence Clear php
 
Theme 7
Theme 7Theme 7
Theme 7
 
Les Threads.ppt
Les Threads.pptLes Threads.ppt
Les Threads.ppt
 

Kürzlich hochgeladen

Bolero. pptx . Film de A nnne Fontaine
Bolero. pptx . Film   de  A nnne FontaineBolero. pptx . Film   de  A nnne Fontaine
Bolero. pptx . Film de A nnne FontaineTxaruka
 
Approche-des-risques-par-l’analyse-des-accidents-1.pptx
Approche-des-risques-par-l’analyse-des-accidents-1.pptxApproche-des-risques-par-l’analyse-des-accidents-1.pptx
Approche-des-risques-par-l’analyse-des-accidents-1.pptxssusercbaa22
 
SUPPORT DE SUR COURS_GOUVERNANCE_SI_M2.pptx
SUPPORT DE SUR COURS_GOUVERNANCE_SI_M2.pptxSUPPORT DE SUR COURS_GOUVERNANCE_SI_M2.pptx
SUPPORT DE SUR COURS_GOUVERNANCE_SI_M2.pptxssuserbd075f
 
Cours ofppt du Trade-Marketing-Présentation.pdf
Cours ofppt du Trade-Marketing-Présentation.pdfCours ofppt du Trade-Marketing-Présentation.pdf
Cours ofppt du Trade-Marketing-Présentation.pdfachrafbrahimi1
 
COURS SVT 3 EME ANNEE COLLEGE 2EME SEM.pdf
COURS SVT 3 EME ANNEE COLLEGE 2EME SEM.pdfCOURS SVT 3 EME ANNEE COLLEGE 2EME SEM.pdf
COURS SVT 3 EME ANNEE COLLEGE 2EME SEM.pdfabatanebureau
 
Sidonie au Japon . pptx Un film français
Sidonie    au   Japon  .  pptx  Un film françaisSidonie    au   Japon  .  pptx  Un film français
Sidonie au Japon . pptx Un film françaisTxaruka
 
A3iFormations, organisme de formations certifié qualiopi.
A3iFormations, organisme de formations certifié qualiopi.A3iFormations, organisme de formations certifié qualiopi.
A3iFormations, organisme de formations certifié qualiopi.Franck Apolis
 
Mécanique Automobile LE TURBOCOMPRESSEUR.ppt
Mécanique Automobile LE TURBOCOMPRESSEUR.pptMécanique Automobile LE TURBOCOMPRESSEUR.ppt
Mécanique Automobile LE TURBOCOMPRESSEUR.pptssusercbaa22
 
666148532-Formation-Habilitation-ELECTRIQUE-ENTREPRISE-MARS-2017.pptx
666148532-Formation-Habilitation-ELECTRIQUE-ENTREPRISE-MARS-2017.pptx666148532-Formation-Habilitation-ELECTRIQUE-ENTREPRISE-MARS-2017.pptx
666148532-Formation-Habilitation-ELECTRIQUE-ENTREPRISE-MARS-2017.pptxSAID MASHATE
 
Boléro. pptx Film français réalisé par une femme.
Boléro.  pptx   Film   français   réalisé  par une  femme.Boléro.  pptx   Film   français   réalisé  par une  femme.
Boléro. pptx Film français réalisé par une femme.Txaruka
 
gestion des conflits dans les entreprises
gestion des  conflits dans les entreprisesgestion des  conflits dans les entreprises
gestion des conflits dans les entreprisesMajdaKtiri2
 
presentation l'interactionnisme symbolique finale.pptx
presentation l'interactionnisme symbolique  finale.pptxpresentation l'interactionnisme symbolique  finale.pptx
presentation l'interactionnisme symbolique finale.pptxMalikaIdseaid1
 
Formation M2i - Intelligence Artificielle Comment booster votre productivité ...
Formation M2i - Intelligence Artificielle Comment booster votre productivité ...Formation M2i - Intelligence Artificielle Comment booster votre productivité ...
Formation M2i - Intelligence Artificielle Comment booster votre productivité ...M2i Formation
 
La nouvelle femme . pptx Film français
La   nouvelle   femme  . pptx  Film françaisLa   nouvelle   femme  . pptx  Film français
La nouvelle femme . pptx Film françaisTxaruka
 
MaintenanceLa Maintenance Corrective.ppt
MaintenanceLa Maintenance Corrective.pptMaintenanceLa Maintenance Corrective.ppt
MaintenanceLa Maintenance Corrective.pptssusercbaa22
 

Kürzlich hochgeladen (16)

Bolero. pptx . Film de A nnne Fontaine
Bolero. pptx . Film   de  A nnne FontaineBolero. pptx . Film   de  A nnne Fontaine
Bolero. pptx . Film de A nnne Fontaine
 
Approche-des-risques-par-l’analyse-des-accidents-1.pptx
Approche-des-risques-par-l’analyse-des-accidents-1.pptxApproche-des-risques-par-l’analyse-des-accidents-1.pptx
Approche-des-risques-par-l’analyse-des-accidents-1.pptx
 
Evaluación Alumnos de Ecole Victor Hugo
Evaluación Alumnos de Ecole  Victor HugoEvaluación Alumnos de Ecole  Victor Hugo
Evaluación Alumnos de Ecole Victor Hugo
 
SUPPORT DE SUR COURS_GOUVERNANCE_SI_M2.pptx
SUPPORT DE SUR COURS_GOUVERNANCE_SI_M2.pptxSUPPORT DE SUR COURS_GOUVERNANCE_SI_M2.pptx
SUPPORT DE SUR COURS_GOUVERNANCE_SI_M2.pptx
 
Cours ofppt du Trade-Marketing-Présentation.pdf
Cours ofppt du Trade-Marketing-Présentation.pdfCours ofppt du Trade-Marketing-Présentation.pdf
Cours ofppt du Trade-Marketing-Présentation.pdf
 
COURS SVT 3 EME ANNEE COLLEGE 2EME SEM.pdf
COURS SVT 3 EME ANNEE COLLEGE 2EME SEM.pdfCOURS SVT 3 EME ANNEE COLLEGE 2EME SEM.pdf
COURS SVT 3 EME ANNEE COLLEGE 2EME SEM.pdf
 
Sidonie au Japon . pptx Un film français
Sidonie    au   Japon  .  pptx  Un film françaisSidonie    au   Japon  .  pptx  Un film français
Sidonie au Japon . pptx Un film français
 
A3iFormations, organisme de formations certifié qualiopi.
A3iFormations, organisme de formations certifié qualiopi.A3iFormations, organisme de formations certifié qualiopi.
A3iFormations, organisme de formations certifié qualiopi.
 
Mécanique Automobile LE TURBOCOMPRESSEUR.ppt
Mécanique Automobile LE TURBOCOMPRESSEUR.pptMécanique Automobile LE TURBOCOMPRESSEUR.ppt
Mécanique Automobile LE TURBOCOMPRESSEUR.ppt
 
666148532-Formation-Habilitation-ELECTRIQUE-ENTREPRISE-MARS-2017.pptx
666148532-Formation-Habilitation-ELECTRIQUE-ENTREPRISE-MARS-2017.pptx666148532-Formation-Habilitation-ELECTRIQUE-ENTREPRISE-MARS-2017.pptx
666148532-Formation-Habilitation-ELECTRIQUE-ENTREPRISE-MARS-2017.pptx
 
Boléro. pptx Film français réalisé par une femme.
Boléro.  pptx   Film   français   réalisé  par une  femme.Boléro.  pptx   Film   français   réalisé  par une  femme.
Boléro. pptx Film français réalisé par une femme.
 
gestion des conflits dans les entreprises
gestion des  conflits dans les entreprisesgestion des  conflits dans les entreprises
gestion des conflits dans les entreprises
 
presentation l'interactionnisme symbolique finale.pptx
presentation l'interactionnisme symbolique  finale.pptxpresentation l'interactionnisme symbolique  finale.pptx
presentation l'interactionnisme symbolique finale.pptx
 
Formation M2i - Intelligence Artificielle Comment booster votre productivité ...
Formation M2i - Intelligence Artificielle Comment booster votre productivité ...Formation M2i - Intelligence Artificielle Comment booster votre productivité ...
Formation M2i - Intelligence Artificielle Comment booster votre productivité ...
 
La nouvelle femme . pptx Film français
La   nouvelle   femme  . pptx  Film françaisLa   nouvelle   femme  . pptx  Film français
La nouvelle femme . pptx Film français
 
MaintenanceLa Maintenance Corrective.ppt
MaintenanceLa Maintenance Corrective.pptMaintenanceLa Maintenance Corrective.ppt
MaintenanceLa Maintenance Corrective.ppt
 

Introduction à la programmation

  • 1. Introduction à la programmation Pierre Poulain pierre.poulain@univ-paris-diderot.fr 09/2011
  • 9. Combien y a-t-il d'alanines dans cette protéine ? GWGAWILAGAGA
  • 10. Combien y a-t-il d'alanines dans cette protéine ? GWGAWILAGAGA 1 2 3 4
  • 11. Et dans celle-ci ? MRARPRPRPLWATVLALGALAGVGVGGPNICTTRGVSSCQQCLAVSPMCAWCSDEALPLG SPRCDLKENLLKDNCAPESIEFPVSEARVLEDRPLSDKGSGDSSQVTQVSPQRIALRLRP DDSKNFSIQVRQVEDYPVDIYYLMDLSYSMKDDLWSIQNLGTKLATQMRKLTSNLRIGFG AFVDKPVSPYMYISPPEALENPCYDMKTTCLPMFGYKHVLTLTDQVTRFNEEVKKQSVSR NRDAPEGGFDAIMQATVCDEKIGWRNDASHLLVFTTDAKTHIALDGRLAGIVQPNDGQCH VGSDNHYSASTTMDYPSLGLMTEKLSQKNINLIFAVTENVVNLYQNYSELIPGTTVGVLS MDSSNVLQLIVDAYGKIRSKVELEVRDLPEELSLSFNATCLNNEVIPGLKSCMGLKIGDT VSFSIEAKVRGCPQEKEKSFTIKPVGFKDSLIVQVTFDCDCACQAQAEPNSHRCNNGNGT FECGVCRCGPGWLGSQCECSEEDYRPSQQDECSPREGQPVCSQRGECLCGQCVCHSSDFG KITGKYCECDDFSCVRYKGEMCSGHGQCSCGDCLCDSDWTGYYCNCTTRTDTCMSSNGLL CSGRGKCECGSCVCIQPGSYGDTCEKCPTCPDACTFKKECVECKKFDRGALHDENTCNRY CRDEIESVKELKDTGKDAVNCTYKNEDDCVVRFQYYEDSSGKSILYVVEEPECPKGPDIL VVLLSVMGAILLIGLAALLIWKLLITIHDRKEFAKFEEERARAKWDTANNPLYKEATSTF TNITYRGT Glycoprotéine plaquettaire humaine ß3
  • 19. Algorithme humain GWGAWILAGAGA 1 2 3 4 Pour chaque acide aminé de la séquence, si l'acide aminé est A alors on compte une alanine de plus.
  • 20. Algorithme Python sequence = "GWGAWILAGAGA" nombre_ala = 0 for acide_amine in sequence: if acide_amine == "A": nombre_ala = nombre_ala + 1 print nombre_ala
  • 22. Java package comptagealanines; public class Main { public static void main(String[] args) { String sequence = "GWGAWILAGAGA"; int nombre_ala = 0 ; for (int i = 0 ; i < sequence.length(); i++ ){ if (sequence.charAt( i ) == 'A'){ nombre_ala = nombre_ala + 1; } } System.out.println(nombre_ala); } }
  • 23. Perl my @sequence = split('','GWGAWILAGAGA'); my $nombre_ala = 0 ; foreach my $acide_amine (@sequence) { if ($acide_amine eq 'A') { $nombre_ala = $nombre_ala + 1; } } print "$nombre_alan";
  • 24. Javascript <script> var sequence = "GWGAWILAGAGA"; var nombre_ala = 0; for(i=0; i<sequence.length; i++) { if(sequence[i].toUpperCase() == "A") { nombre_ala = nombre_ala + 1; } } window.alert("Nombre de A : " + nombre_ala); </script>
  • 25. PHP <?php $sequence = "GWGAWILAGAGA"; $nombre_ala = 0; for($i=0; $i<strlen($sequence); $i++) { if(strtoupper($sequence[$i]) == "A") { $nombre_ala = $nombre_ala + 1; } } echo "Nombre de A : ".$nombre_ala; ?>
  • 26. C# using System; using System.Collections.Generic; using System.Linq; using System.Text; namespace ConsoleApplication1 { class Program { static void Main(string[] args) { string sequence = "GWGAWILAGAGA"; int nombre_ala = 0; for (int i = 0; i < sequence.Length; i++) { if (sequence[i].ToString().ToUpper() == "A") { nombre_ala = nombre_ala + 1; } } Console.WriteLine("Nombre de A : " + nombre_ala.ToString()); } } }
  • 32.  ; { } @ $ using public class static void
  • 33. Compilation C, C++, C#, Fortran code langage programme source machine exécutable
  • 34. Interprétation (bytecode) Java, Python, Perl code bytecode source (caché)
  • 35. Interprétation Bash, Javascript, PHP code source (ligne par ligne)
  • 39. sHSP P. Poulain, J.-C. Gelly, and D. Flatters, Detection and Architecture of Small Heat Shock Protein Monomers, PLoS ONE 5: e9990 (2010).
  • 40. Biologie Informatique @ P7 Unix (bash), R, C L3 Python, C, (R) M1 Python, Java, C, (R) M2
  • 46.
  • 47. bio informatique
  • 48. Crédits graphiques PPDIGITAL (Flickr) TurboMilk (Findicons) Katherine Donaldson (Flickr) Wilsoninc (Findicons) Ralphbijker (Flickr) fe2cruz (Flickr) Olivcris (Flickr) 713 Avenue (Flickr) Nicobunu (Openclipart.org) K Lee (Wikipedia) VisualPharm (Findicons) selva (Flickr)
  • 49. Crédits graphiques (2) Nardino (Flickr) Ennor (Flickr) AlanHeitz (Flickr) Dahon (Flickr) Foxymoron (Flickr) Joe Rollerfan (Flickr) JoeShlabotnik (Flickr) Liz Marion (Flickr) doi:10.1371/ journal.pone.0009990.g001 beeeeeker (Flickr) JoshuaDavisPhotography (Flickr)