Aller au contenu

Ep 15

le document

l'algorithme

Issue de : 23-NSI-30⚓

EXERCICE 1⚓

Écrire une fonction moyenne qui prend en paramĂštre un tableau non vide de nombres flottants et qui renvoie la moyenne des valeurs du tableau. Les tableaux seront reprĂ©sentĂ©s sous forme de liste Python.

Exemples :

🐍 Script Python
>>> moyenne([1.0])
1.0
>>> moyenne([1.0, 2.0, 4.0])
2.3333333333333335

RĂ©ponse

Complétez le code ci-dessous

###
# Mettre votre code icibksl-nlbksl-nl



Solution

###
def moyenne(tab):bksl-nl somme = 0bksl-nl for val in tab:bksl-nl somme += valbksl-nl return somme / len(tab)bksl-nlbksl-nltry:bksl-nl assert moyenne([1.0]) == 1.0bksl-nl assert round(moyenne([1.0, 2.0, 4.0]),2) == 2.33bksl-nl print('Tout semble correct 👍')bksl-nlbksl-nlexcept AssertionError as asser:bksl-nl print('Le rĂ©sultat de votre fonction n\'est pas conforme đŸ€”')bksl-nl



EXERCICE 2⚓

On considÚre la fonction binaire ci-dessous qui prend en paramÚtre un entier positif a en écriture décimale et qui renvoie son écriture binaire sous la forme d'une chaine de caractÚres.

L’algorithme utilise la mĂ©thode des divisions euclidiennes successives comme l’illustre l’exemple ci-aprĂšs.

image

Compléter le code de la fonction binaire.

🐍 Script Python
 1
 2
 3
 4
 5
 6
 7
 8
 9
10
def binaire(a):
    '''convertit un nombre entier a en sa representation 
    binaire sous forme de chaine de caractĂšres.'''
    if a == 0:
        return ... 
    bin_a = ... 
    while ... : 
        bin_a = ... + bin_a 
        a = ... 
    return bin_a
Exemples :
🐍 Script Python
>>> binaire(83)
'1010011'
>>> binaire(127)
'1111111'
>>> binaire(0)
'0'

RĂ©ponse

Complétez le code ci-dessous

###
def binaire(a):bksl-nl binpy-unda = ...bksl-nl a = a // 2bksl-nl while a ... :bksl-nl binpy-unda = ... + binpy-undabksl-nl a = ...bksl-nl return binpy-undabksl-nlbksl-nl



Solution

###
def binaire(a):bksl-nl binpy-unda = str(a%2)bksl-nl a = a // 2bksl-nl while a != 0 :bksl-nl binpy-unda = str(a%2) + binpy-undabksl-nl a = a // 2bksl-nl return binpy-undabksl-nlbksl-nltry:bksl-nl assert binaire(83) == '1010011'bksl-nl assert binaire(127) == '1111111'bksl-nl assert binaire(0) == '0'bksl-nl print('Tout semble correct 👍')bksl-nlbksl-nlexcept AssertionError as asser:bksl-nl print('Le rĂ©sultat de votre fonction n\'est pas conforme đŸ€”')bksl-nl