DM de NSI, exercie pratique type bac, besoin d'aide rapidement svp

Le
Sneak59 offline Hors ligne
Bonjourr à tous, je suis en terminale et j'ai besoin d'aide pour mon DM de NSI qui est à rendre avant Lundi (je sais je m'y prend très tard). Le DM contient 2 exercice qui sont les suivants:Exercice1:Soit le couple (note,coefficient):
note est un nombre de type flottant (float) compris entre 0 et 20 ;
coefficient est un nombre entier positif
Les résultats aux évaluations d'un élève sont regroupés dans une liste composée de couples (note,coefficient).
Écrire une fonction moyenne qui renvoie la moyenne pondérée de cette liste donnée en paramètre. Par exemple, l’expression moyenne([(15,2),(9,1),(12,3)]) devra renvoyer le résultat du calcul suivant : (2×15+1×9+3×12)/(2+1+3) = 11,83

Exercice2:On cherche à déterminer les valeurs du triangle de Pascal. Dans ce tableau de forme triangulaire, chaque ligne commence et se termine par le nombre 1. Par ailleurs, la valeur qui occupe une case située à l’intérieur du tableau s’obtient en ajoutant les valeurs des deux cases situées juste au-dessus.Créer une fonction pascal. Elle doit renvoyer une liste correspondant au triangle de Pascal de la ligne 1 à la ligne n où n est un nombre entier supérieur ou égal à 2 (le tableau sera contenu dans la variable C). La variable Ck doit, quant à elle, contenir, à l’étape numéro k, la k-ième ligne du tableau. Voici ce que l’on devra obtenir :
>>> pascal(4)
[[1], [1, 1], [1, 2, 1], [1, 3, 3, 1], [1, 4, 6, 4, 1]]
>>> pascal(5)
[[1], [1, 1], [1, 2, 1], [1, 3, 3, 1], [1, 4, 6, 4, 1], [1, 5, 10, 10, 5, 1]]
J'ai fait des recherches sur le net et c'est un des sujets pratiques que j'aurais pû avoir en mars. Voici ce que j'ai fait:
def moyenne(notes):
"""
Fonction qui calcule la moyenne pondérée
:param notes: (float) compris entre 0 et 20
:param coeff: (int)
:exemple:
>>> print(moyenne)
moyenne([(15,2),(9,1),(12,3)])
"""
notes = [(15,2),(9,1),(12,3)]
s=0
scoeff=0
for elt in notes():
note = (15,9,12)
coeff = (2,1,3)
note = notes[0,0]
print(note)

for i in range(0,3):
s=s+coeff[i]*note[i]
scoeff=sc+sum(coeff)
print(s/scoeff)

def pascal(n):
"""
Fonction qui renvoie une liste correspondant au triangle de Pascal de la ligne 1 à la ligne n où n est un nombre entier supérieur ou égal à 2
:n:(int)
:exemple:
>>> pascal(4)
[[1], [1, 1], [1, 2, 1], [1, 3, 3, 1], [1, 4, 6, 4, 1]]
"""
C= [[1]]
for k in range(1,n):
Ck = [1]
for i in range(1,k):
Ck.append(C[1][i-1]+C[k-1][1])
Ck.append(1)
C.append(Ck)
return C

La fonction de l'exo 1 ne fonctionne pas quand je fait print(moyenne(notes) et l'exo 2 crash avec un nombre supérieur à 4. Merci d'avance pour votre aide
  • Partager ce contenu :
Vos réponses
Trier par : date / pertinence
dakarli offline Hors ligne
Le #26571917
Le dimanche 07 Mars 2021 à 15:38 par Sneak59 :
Bonjourr à tous, je suis en terminale et j'ai besoin d'aide pour mon DM
de NSI qui est à rendre avant Lundi (je sais je m'y prend très
tard). Le DM contient 2 exercice qui sont les suivants:Exercice1:Soit le couple
(note,coefficient):
note est un nombre de type flottant (float) compris entre 0 et 20 ;
coefficient est un nombre entier positif
Les résultats aux évaluations d'un élève sont
regroupés dans une liste composée de couples (note,coefficient).
Écrire une fonction moyenne qui renvoie la moyenne
pondérée de cette liste donnée en paramètre. Par
exemple, l’expression moyenne([(15,2),(9,1),(12,3)]) devra renvoyer le
résultat du calcul suivant : (2×15+1×9+3×12)/(2+1+3) =
11,83

Exercice2:On cherche à déterminer les valeurs du triangle de
Pascal. Dans ce tableau de forme triangulaire, chaque ligne commence et se
termine par le nombre 1. Par ailleurs, la valeur qui occupe une case
située à l’intérieur du tableau s’obtient en
ajoutant les valeurs des deux cases situées juste au-dessus.Créer
une fonction pascal. Elle doit renvoyer une liste correspondant au triangle de
Pascal de la ligne 1 à la ligne n où n est un nombre entier
supérieur ou égal à 2 (le tableau sera contenu dans la
variable C). La variable Ck doit, quant à elle, contenir, à
l’étape numéro k, la k-ième ligne du tableau. Voici
ce que l’on devra obtenir :
>>> pascal(4)
[[1], [1, 1], [1, 2, 1], [1, 3, 3, 1], [1, 4, 6, 4, 1]]
>>> pascal(5)
[[1], [1, 1], [1, 2, 1], [1, 3, 3, 1], [1, 4, 6, 4, 1], [1, 5, 10, 10, 5, 1]]
J'ai fait des recherches sur le net et c'est un des sujets pratiques que
j'aurais pû avoir en mars. Voici ce que j'ai fait:
def moyenne(notes):
"""
Fonction qui calcule la moyenne pondérée
:param notes: (float) compris entre 0 et 20
:param coeff: (int)
:exemple:
>>> print(moyenne)
moyenne([(15,2),(9,1),(12,3)])
"""
notes = [(15,2),(9,1),(12,3)]
s=0
scoeff=0
for elt in notes():
note = (15,9,12)
coeff = (2,1,3)
note = notes[0,0]
print(note)

for i in range(0,3):
s=s+coeff[i]*note[i]
scoeff=sc+sum(coeff)
print(s/scoeff)

def pascal(n):
"""
Fonction qui renvoie une liste correspondant au triangle de Pascal de la ligne
1 à la ligne n où n est un nombre entier supérieur ou
égal à 2
:n:(int)
:exemple:
>>> pascal(4)
[[1], [1, 1], [1, 2, 1], [1, 3, 3, 1], [1, 4, 6, 4, 1]]
"""
C= [[1]]
for k in range(1,n):
Ck = [1]
for i in range(1,k):
Ck.append(C[1][i-1]+C[k-1][1])
Ck.append(1)
C.append(Ck)
return C

La fonction de l'exo 1 ne fonctionne pas quand je fait print(moyenne(notes) et
l'exo 2 crash avec un nombre supérieur à 4. Merci d'avance pour
votre aide


Bonjour, vous avez trouvé l'aide dont vous avez besoin ?

https://shareit.onl/ https://mxplayer.pro/
Poster une réponse
Anonyme