le plus grand chiffre
Répondre à la discussion
Affichage des résultats 1 à 3 sur 3

le plus grand chiffre



  1. #1
    pizzouille

    le plus grand chiffre


    ------

    Bonjour,

    On doit écrire un programme qui demande trois chiffres et affiche le grand (en python)

    Peut-on simplifier ceci :

    def plusGrd (a,b,c):
    ''' int,int,int -> int
    Afficher le plus grand des 3 chiffres '''
    ---if a < b :
    ------if b < c :
    ---------return c
    ------else :
    ---------return b
    ---if b < a :
    ------if a < c :
    ---------return c
    ------else :
    ---------return a
    ---if b < c :
    ------if c < a :
    ---------return a
    ------else :
    ---------return c
    ---if c < b :
    ------if b < a :
    ---------return a
    ------else :
    ---------return b
    ---if a < c :
    ------if c < b :
    ---------return b
    ------else :
    ---------return c
    ---if c < a :
    ------if a < b :
    ---------return b
    ------else :
    ---------return a

    Merci à l'avance de votre aide.

    -----

  2. #2
    PA5CAL

    Re : le plus grand chiffre

    Bonsoir

    Il y a beaucoup de tests redondants ou inutiles. On peut se limiter à :

    Code:
    def plusGrd (a,b,c):
    ''' int,int,int -> int
    Afficher le plus grand des 3 chiffres '''
       if a < b :
          if b < c :
             return c
          else :
             return b
       else :
          if a < c :
             return c
          else :
             return a

  3. #3
    fred1599

    Re : le plus grand chiffre

    Le plus simple

    Code:
    def plusGrd (a, b, c):
        maxi = a
        if maxi < b:
            maxi = b
        if maxi < c:
            maxi = c
        return maxi
    
    print(plusGrd(12, 5, 7))
    print(plusGrd(5, 7, 12))
    print(plusGrd(7, 12, 5))
    Le plus usuel au langage

    Code:
    def plusGrd (*args):
        assert len(args) == 3
        return max(args)
    
    print(plusGrd(12, 5, 7))
    print(plusGrd(5, 7, 12))
    print(plusGrd(7, 12, 5))
    Le plus naturel algorithmiquement

    Code:
    def plusGrd (*args):
        if args and len(args) == 3:
            maxi = args[0]
            for v in args[1:]:
                if v > maxi:
                    maxi = v
        return maxi
    
    print(plusGrd(12, 5, 7))
    print(plusGrd(5, 7, 12))
    print(plusGrd(7, 12, 5))

Discussions similaires

  1. Nombre de suite possible de p chiffre sur n chiffre
    Par Cuthalion dans le forum Mathématiques du collège et du lycée
    Réponses: 9
    Dernier message: 07/01/2010, 19h49
  2. chiffre significatif
    Par sebatlante dans le forum Physique
    Réponses: 36
    Dernier message: 12/10/2007, 10h21
  3. un chiffre bizarre
    Par invite22bb543b dans le forum Chimie
    Réponses: 2
    Dernier message: 10/11/2004, 19h26