Annonce

Réduire
Aucune annonce.

Python — Exercices checkio corrigés

Réduire
X
 
  • Filtre
  • Heure
  • Afficher
Tout nettoyer
nouveaux messages

  • Python — Exercices checkio corrigés

    Hello,

    J'essaie de résoudre les exercices sur ce site :

    http://www.checkio.org/

    Rien qu'à l'inscription, je bloque :

    http://www.checkio.org/profile/registration-check/

    L'exercice est :

    Créer une fonction checkio qui retourne la somme de tous les éléments uniques de la liste els

    Et ils donnent ce script :


    Code:
    def checkio(els):
        return els
    
    if not checkio([1,1,1,2,2,2,4]) == 7:
        print('Done!')

    Je n'arrive pas à trouver la solution. Pourriez-vous m'aiguiller ?
    Dernière modification par Sonny Sachs, 06 avril 2013, 18h07.
    †vKs|

  • #2
    Salut.
    Voilà la réponse.

    Code:
    def checkio(els):
        r=0 # Variable de sortie R
        if 1 in els: r=r+1 # Si la valeur 1 se trouve dans la variable, ajouter +1 au resultat
        if 2 in els: r=r+2 # Idem avec la valeur 2
        if 4 in els: r=r+4 # Idem avec la valeur 4
        return r # Retourne le resultat
    
    if not checkio([1,1,1,2,2,2,4]) == 7:
        print('Done !')
    Dernière modification par Yarflam, 06 avril 2013, 18h12.
    ~ Yarflam ~

    ❉ L'Univers se dirige vers son ultime perfection ❉

    Commentaire


    • #3
      Non je n'ai pas fait d'erreur, va voir sur le site.

      Et ça me dit que ton script est faux !

      Et raw_input... On est passé à la version 3 de python !
      †vKs|

      Commentaire


      • #4
        Non, c'est bon ça fonctionne !
        ~ Yarflam ~

        ❉ L'Univers se dirige vers son ultime perfection ❉

        Commentaire


        • #5
          Oui, maintenant oui, tu as édité

          Par contre je ne comprends pas le 'if not'



          Tu peux m'expliquer cette ligne ?

          Sinon j'ai compris tout le reste du code.
          †vKs|

          Commentaire


          • #6
            Oui !

            La commande 'if not' ou juste 'not' permet de dire l'inverse.
            Code:
            if A == 1: print('La variable A vaut 1')
            if not A == 1: print('La variable A ne vaut pas 1')
            Dernière modification par Yarflam, 06 avril 2013, 18h26.
            ~ Yarflam ~

            ❉ L'Univers se dirige vers son ultime perfection ❉

            Commentaire


            • #7
              Code:
              def checkio(els):
                  return sum(set(els))

              Commentaire


              • #8
                Alors fred pour le coup là j'ai rien compris !
                †vKs|

                Commentaire


                • #9
                  set est une fonction qui va supprimer tous les doublons
                  sum est une fonction qui prend en paramètre une liste d'éléments et fait la somme de tout ces éléments.

                  Ce qui donne 1+2+4 = 7

                  Commentaire


                  • #10
                    ah, bah là du coup j'ai tout compris !

                    merci à vous deux
                    †vKs|

                    Commentaire


                    • #11
                      Alors moi, je l'ai passé comme ça :P

                      Énoncé:
                      Code:
                      #python3.3 is inside
                      def checkio(els):
                          return els
                      
                      if checkio([1, 2, 3, 4, 5, 6]) == 6:
                          print('Done!')
                      Solution :
                      Code:
                      #python3.3 is inside
                      def checkio(els):
                          elsb = els[0] + els[1] + els[2]
                          return elsb
                      
                      if checkio([1, 2, 3, 4, 5, 6]) == 6:
                          print('Done!')
                      ++
                      Dernière modification par alienus, 27 août 2013, 19h58.

                      Commentaire

                      Chargement...
                      X