bonjour,
Je bloque sur 2 questions avec python (à la fin):
La moyenne du 1er trimestre est calculée sur la base de quatre notes sur 20. On note m la moyenne que Ronista a obtenue à la fin du trimestre.
Exprimer, en fonction de m, la somme des points que Ronista a obtenus sur l'ensemble des 4 notes. => m= N1+N2+N3+N4 /4
Elle a obtenu 6; 10 puis 12 lors des trois premiers contrôles. Exprimer, en fonction de m, la note qu'elle a obtenue au dernier contrôle. => N4=4m-28
Compléter le programme ci-dessous qui calcule la note qu'elle doit obtenir au dernier contrôle après avoir entré la moyenne qu'elle souhaite obtenir.
mon idée:
def MoyenneVoulue(m):
note = 4m - 28
if note > 20:
return("Impossible.")
else:
return("possible.")
mais là je bloque:
Créer une fonction sous Python qui utilise comme arguments les trois premières notes obtenues puis la moyenne souhaitée et qui renvoie la dernière note à obtenir.
peut être:
Note1= 6
Note2= 10
Note3= 12
def MoyenneVoulue(m):
Print("entrez la valeur de m désirée",m)
m= (Note1+Note2+Note3+Note4)/4
Note4 =4m-28
if note > 20:
return("Impossible.")
else:
return("possible.")
Print("La Note4 à obtenir est: ", Note4)
La fonction :
def Note(n1,n2,n3,m):
n4 = (4*m-n1-n2-n3)
return n4
Appel à la fonction
print(Note(5,5,5,8))
pourquoi?
Appel à la fonction
print(Note(5,5,5,8))
ça veut dire quoi 5,5,5,8? et pourquoi il ne faut pas réutiliser l'exercice d'avant:
def MoyenneVoulue(m):
note = 4m - 28
if note > 20:
return("Impossible.")
else:
return("possible.")
Je suuis vraiment novice avec python
def Note(n1,n2,n3,m):
n4 = (4*m-n1-n2-n3)
return n4
print(Note(5,5,5,8))
Comme ça, ça marche
5,5,5,8 est un exemple
n1= 5 n2=5 n3=5 m=8
Dans le le deux le programme est imposé avec retournement:
Compléter le programme ci-dessous qui calcule la note qu'elle doit obtenir au dernier contrôle après avoir entré la moyenne qu'elle souhaite obtenir.
mon idée:
def MoyenneVoulue(m):
note = 4m - 28 [/rouge]
if note [rouge]> 20:
return("Impossible.")
else:
return("possible.[rouge][/rouge]")
J'ai du mal avec python. On a eu que deux cours et je ne connais pas tout le vocabulaire. Je suis obligé de chercher partout
Bonjour caroleti
ton profil indique "Niveau : autre DUT" alors pourquoi postes-tu en "Seconde"
Quel est ton niveau réel ? Indique le dans ton profil et quand tu postes, merci.
Bonjour,
je suis niveau DUT mais mon fils est en seconde et ce sert de mon compte et je ne peut l'aider sur certain exercice...
En général, avant de programmer, on écrit sur un papier un algorithme en langage naturelle (ou au moins les méthodes/instructions que l'on va utiliser). Pour l'exemple d'ici, un exemple d'algorithme en langage naturelle serait (ce n'est pas la seule manière !) :
FONCTION moyenne_voulue(m)
DEBUT_FONCTION
note <-- 4m-28
SI note > 20 ALORS
AFFICHER "Impossible"
ELSE
AFFICHER "Possible"
AFFICHER note
FIN_SI
FIN_FONCTION
Reste plus qu'a le traduire en langage python (en faisant aux conventions, comme par exemple pas de majuscule dans les noms de fonction, mais on peut séparer chaque mot par un underscore ( _ ) )
oui mais on nous impose le texte et on doit compléter, alors le texte n'est pas bon? on doit compléter au niveau des points.
def MoyenneVoulue(m):
note = .......
if............ > 20:
return("Impossible.")
else:
return("...........
j'ai écris ce qu'il me semble être bon dans mes posts précédent
et je bloque aussi:
Créer une fonction sous Python qui utilise comme arguments les trois premières notes obtenues puis la moyenne souhaitée et qui renvoie la dernière note à obtenir.
Bon, si on faisait le point calmement.
Premier script :
Il n'était pas évident qu'un texte à trous était fourni par l'énoncé.
Donc tu as complété et somme toute la fonction obtenue... fonctionnait.
Seule remarque, la fonction retournait un message disant si oui ou non il était possible d'obtenir la moyenne "visée" mais également la note minimale à obtenir...
def MoyenneVoulue(m):
note = 4m - 28
if note > 20:
return("Impossible.")
else:
return("possible.", note)
A suivre
Et pour, je n'ai aucune idée :
Créer une fonction sous Python qui utilise comme arguments les trois premières notes obtenues puis la moyenne souhaitée et qui renvoie la dernière note à obtenir.
suite
Question 2
Pas de script à trous, cette fois.....
Tu as pris le parti de conserver l'approche faite à la question précédente (possible, pas possible) ; je pense que cela est judicieux.
Dans le premier script, seule la moyenne m visée était adaptable. Les 3 premières notes étaient bloquées d'où la formule :
note= 4*m - 28, 28 étant la somme de ces 3 premières notes.
Dans le script demandé à la 2ème question, on souhaite pouvoir modifier les 3 premières notes. Ces 3 notes deviennent, 3 arguments supplémentaires dans ta nouvelle fonction.
Bien entendu la formule calculant la 4ème note à obtenir est modifiée et devient :
Note4 =4*m-(Note1+Note2+Note 3)
2 remarques : le "28" n'est plus valable ; par ailleurs quand tu écris le produit 4m, il FAUT mettre le signe de la multiplication entre 4 et m soit 4*m.
Corrige le script en conséquence...
Je pense qu'il est souhaitable de changer le nom de la fonction ; pourquoi pas note().
Cette fonction a besoin de 4 arguments : Note 1, Note2, Note3 et m.
Tu as donc
def note( Note 1, Note2, Note3,m):
Ensuite on calcule la Note4
Note4 =4*m-(Note1+Note2+Note 3)
ensuite on teste le "possible" comme dans le premier script.
Essaye de refaire cela.
Dans la console, tu regardes ce qui se passe en prenant 3 notes et une moyenne visée ; par exemple
>>>print(note(8,11,14,10))
Qu'obtiens tu ?
Merci il faudra que j'essaye ce soir sur python
Mais il ne faut pas que je définisse ce qu'est m?
Et demander à l'utilisateur de la rentrer ainsi que les 3 première note?
Alors ?
du coup, pour le petit programme à trous:
j'ai:
def MoyenneVoulue(m):
note = 4m-28
if..note> 20:
return("Impossible.")
else:
return("possible", note)
et l'autre si c'est que la fonction, cela fait:
def note( Note 1, Note2, Note3,m):
Note4 =4*m-(Note1+Note2+Note 3)
if note > 20:
return("Impossible.")
else:
return("[rouge]possible", Note4).[/rouge]
Merci
Le script de ta fonction note() ne fonctionne pas
J'ai copié le script de ton message (CTRL+C) puis je l'ai collé dans mon éditeur Python (CTRL+V) et mon écran est devenu (presque) tout rouge... de confusion ou de colère, je ne saurais te dire.
Si tu l'avais testé sur ton ordinateur, tu aurais su immédiatement qu'il y avait des incongruités dans ton script. Je ne comprends pas que l'on puisse écrire un programme et ... ne pas l'essayer. Pour moi, c'est le moment de la récompense quand j'obtiens ce que j'attends
A travers tes erreurs et les messages d'erreurs qu'elles provoquent, tu apprends à faire bien !
Exemple :
if note > 20:
Manifestement cette requête n'est pas correcte... ce n'est ni un problème de math ou de programmation en python mais une erreur d'attention ou un manque de bon sens.
Soit rigoureux dans tes notations : Note3 ce n'est pas la même variable que Note 3
A toi la main....
Oui pas de soucis, je comprends ce que vous dites mais on nous a imposé le texte à trou.
Cela veut dire que le texte à trou n'est pas bon...
L'erreur est dans l'énoncé du texte ... et je dois faire avec, non?
Nous n'avons pas de console pour tester
Difficile de se comprendre à distance !!
1) if note > 20:
Cette ligne est bonne dans la PREMIERE fonction.
Mais dans la 2ème appelée note(), elle n'a pas de sens....
2) c'est dans ma recopie
J'ai du mal à comprendre comment tu opères avec Python.
a) si tu as python installé sur ton ordinateur, tu as -me semble -t-il - nécessairement une "console" (shell) à coté de ton éditeur. Explique moi...
b) tu n'as pas à RECOPIER ! Tu fais simplement du copier/coller avec le texte de ton script !! Quand tu colles ce texte dans ton message sur l'île, essaye de la placer entre des balises de code que tu trouveras avec les autres outils sous la fenêtre où tu écris ; tu actives ces balises [code][/code] en cliquant sur l'outil </> . Pour voir l'effet produit passe en mode Apercu avant de POSTERr.
def MoyenneVoulue(m):
note = 4m-28
if note> 20:
return("Impossible.")
else:
return("possible", note)
Le problème c'est justement je n'ai pas Python sur ordinateur...le seul ordinateur que j'ai c'est ceux du travail de mes parents. j'écris juste la fonction
def note( Note 1, Note2, Note3,m):
Note4 =4*m-(Note1+Note2+Note 3)
Pour répondre à la question
def note( Note 1, Note2, Note3,m):
Note4 =4*m-(Note1+Note2+Note 3)
En fait pour plus de cohérence, je devrais marquer:
def note( n1, n2, n3,m):
n4=4*m-(n1+n2+n3)
If n4>20
return (« impossible »)
else
return (« possible »,n4)
suite de mon précédent message
Ta présence sur ce site et nos nombreux échanges prouvent que tu as accès à Internet.
Tape dans ton moteur de recherche : jaicompris python. Le site qui t'est proposé te permet de te former en Python mais surtout te donne accès à Trinket, un python en ligne.
Il y a sûrement d'autres possibilités mais celle là, je connais : j'ai commencé à étudier Python avec ce Trinket là, avant d'installer EDUPYTHON sur mon ordinateur.
Il va falloir te battre avec tes parents pour disposer de leur ordi .
Bon courage
Oui le problème c'est que je fais ça avec mon téléphone, donc il change les guillemets et on doit rendre au format papier écrit à la main..
Vous devez être membre accéder à ce service...
Pas encore inscrit ?
1 compte par personne, multi-compte interdit !
Ou identifiez-vous :