Mariannaaa Posté(e) le 14 février 2021 Signaler Posté(e) le 14 février 2021 Bonjour/Bonsoir à tous, j'ai un devoir maison de mathématiques à rendre et je n'y arrive pas du tout, il concerne Python. J'ai bien besoin d'aide, merci énormement d'avance à ceux qui pourront m'accorder de leur temps. (les exercices sont en images pièce jointe, ci-dessous) Citer
E-Bahut pzorba75 Posté(e) le 14 février 2021 E-Bahut Signaler Posté(e) le 14 février 2021 Quelques éléments pour te permettre de travailler et de faire cet exercice élémentaire : 1 fonction point(): Inclure le module random, prendre x au hasard avec random() dans [0;1] prendre y au hasard de la même façon... retourner (x,y) 2) fonction carre(x): retourner (x*x) ou (x**2) 3 fonction rapport(n): n est le nombre de points que l'on va analyses dans une boucle for in range(n): préparer le compteur des points sous la courbe (c=0) tester dans la boucle et incrémenter le compteur c quand c'est dans la cible. À la fin de la boucle, arranger le rapport pour obtenir la réponse demandée dans l'énoncé qu'il faut lire avec soin. Au travail. Si tu montres ton travail et tes scripts tapés au clavier je reviendrai si tu as besoin d'aide. Pour les photos en pièces jointes, je ne les regarderai pas. Mariannaaa a réagi à ceci 1 Citer
E-Bahut PAVE Posté(e) le 14 février 2021 E-Bahut Signaler Posté(e) le 14 février 2021 Bonjour Massilya, Pour compléter les indications déjà données par Pzorba et te persuader que ce sujet n'est : * ni si long à résoudre que la longueur de son énoncé pourrait le laisser craindre (j'ai failli ne pas le commencer parce que c'est dimanche (flemme 😬 !!) mais comme Python est mon terrain de jeu 🤔 en ce moment, je me suis lancé... et finalement...) * ni vraiment difficile à traiter. Je suppose que tu as déjà eu des exemples de script avec des "fonctions". (remarque en passant : je pense que en page 1 dans le paragraphe Principe, la fonction que crée le script n'est pas comme indiqué la fonction random (celle là est toute faite...) mais la fonction point... Détail !) J'espère que tu as à ta disposition (en ligne ou sur ton ordinateur) de quoi créer et tester ton script en Python. Alors lance toi et essaye de faire tourner cette belle application... A chaque étape vérifie que ton programme donne bien le résultat annoncé (par l'énoncé). Si problème, reviens vers nous et montre nous ton script : pour cela, dans ton éditeur Python tu copies (CTRL+ C) le script (c'est du texte banal !) et tu le colles (CTRL+V) dans ton message sur E-bahut. Ainsi on pourra récupérer ton programme et le tester sans avoir à le saisir à nouveau.... L'idéal (essaye d'y penser) serait de coller ton script en le mettant entre des "balises" de code < > que tu trouveras dans les outils proposés par e-bahut au dessus de la fenêtre de saisie de ton texte. Cela donne : from random import * def point(): x= y= return( , ) A toi de.... jouer 😃. Mariannaaa a réagi à ceci 1 Citer
E-Bahut pzorba75 Posté(e) le 14 février 2021 E-Bahut Signaler Posté(e) le 14 février 2021 Le plus simple pour commencer avec Python, sans rien installer sur son ordinateur, est de passer par le site trinket.io qui ouvre directement l'éditeur pour taper le code et la console pour voir le résultat quand on exécute le script. Citer
E-Bahut julesx Posté(e) le 14 février 2021 E-Bahut Signaler Posté(e) le 14 février 2021 Juste un détail. Pourquoi, dans rapport, recalculer les random() alors qu'on a défini la fonction point() qui fait le travail ? x=point()[0] y=point()[1] m'aurait paru plus logique. Citer
E-Bahut PAVE Posté(e) le 14 février 2021 E-Bahut Signaler Posté(e) le 14 février 2021 Bonjour Jules, Tout a fait d'accord mais le prof qui a conçu cet énoncé n'avait peut-être pas encore abordé ce type de récupération des données ([0]pour indicer les valeurs)... Si on regarde bien, la méthode demandée dans l'énoncé est quasiment aussi simple et nettement plus accessible et lisible que celle que tu préconises et que personnellement j'avais, moi aussi, mise en œuvre... Concernant les programmes officiels, difficile d'y voir quelles sont les limites de cette approche du langage Python.... J'espère que Massilya va se manifester bientôt. Nous sommes bien plus bavards qu'elle.... puisse-t-elle ne pas se laisser impressionner par nos considérations diverses ! @ Massilya, Ne te laisse pas impressionner et dis nous ce qui peut te bloquer... nous sommes impatients de pouvoir t'aider 😇. Citer
E-Bahut julesx Posté(e) le 14 février 2021 E-Bahut Signaler Posté(e) le 14 février 2021 Il y a 1 heure, PAVE a dit : Si on regarde bien, la méthode demandée dans l'énoncé est quasiment aussi simple et nettement plus accessible et lisible que celle que tu préconises et que personnellement j'avais, moi aussi, mise en œuvre... Je suis bien d'accord, mais, pour moi, si, dans un script, on définit une fonction en annexe, c'est pour l'utiliser dans la partie principale. Si c'est juste pour le plaisir d'employer un def... Petite question à laquelle je n'ai pas trouvé de réponse (mais je n'ai peut-être pas assez cherché). Dans un résultat d'opération, Python affiche a priori 15 décimales. On peut évidemment demander un affichage réduit, mais si on ne connait pas au départ la valeur que va prendre le résultat, on risque de passer à côté du but recherché. Je me demandais donc s'il existait une alternative au "round". Citer
Mariannaaa Posté(e) le 14 février 2021 Auteur Signaler Posté(e) le 14 février 2021 (modifié) @pzorba75@PAVE Bonjour/Bonsoir à tous, merci infiniment de m'avoir aidé sur ce devoir maison dont j'ai pu avancer grâce à vous, j'ai suivi vos conseils, néanmoins si vous me l'accordez, j'ai des questions ^^. Déjà on me dit de mettre le module random mais il est déjà mis, non ? Donc la première ligne de la fonction 1 il n'a rien à rajouter j'pense ? J'ai rempli la première fonction mais quand je l'essaie on me dit à chaque fois qu'il y a un problème à la deuxieme ligne :(, j'ai fais cela : from random import * def point M(x,y) x = random ([0;1]) y - random ([0;1]) return (x,y) Et les deux autres, hormis le fait de remplir une ligne, je n'ai pas réussi du tout. Je n'arrive pas à comprendre totalement sur ce coup ^^'. (Je suis désolée d'être un cas désespéré haha alors que vous m'avez aidé sur les 3/4 mais vraiment Python pour moi durant toute ma scolarité je l'ai jamais réussi, je prends du temps à comprendre.) Modifié le 14 février 2021 par Massilya Citer
E-Bahut pzorba75 Posté(e) le 15 février 2021 E-Bahut Signaler Posté(e) le 15 février 2021 Quel est le problème avec la fonction point() que tu présentes dans ton message? Essaie de compiler cette fonction, et depuis la console de lancer le commande suivante : print(point())) qui affichera les coordonnées d'un point dans le carré de côté 1. En répétant la commande plusieurs, tu verras que les coordonnées changent de manière aléatoire, ce qui est le but recherché. Citer
E-Bahut PAVE Posté(e) le 15 février 2021 E-Bahut Signaler Posté(e) le 15 février 2021 Bonjour, J'ai récupéré ton script et l'ai testé sur mon ordi. Certes il ne fonctionne pas et les raisons en sont... nombreuses 😪. Voyons cela : from random import * def point M(x,y) x = random ([0;1]) y - random ([0;1]) return (x,y) # 1)il ne faut pas mettre d'espace dans le nom de la fonction donc le "M" doit être collé contre "point". # D'ailleurs pour "coller" rigoureusement au script de l'énoncé, je te suggère de supprimer ce M # mais attention pas d'espace entre le t de point et la parenthèse ouvrante : point(x,y) # 2) il manque les : obligatoires à la fin de cette ligne. Si tu regardes bien l'énoncé les : sont bien indiqués # 3) supprime l'espace entre random et la parenthèse ouvrante. En maths quand tu notes une fonction tu écris f(x) et pas f (x) # 4) Si tu vas consulter la documentation sur la fonction random (des pages entières sur Internet !!), il y est indiqué que, sans qu'il soit besoin de mettre des arguments entre les parenthèses, random() renvoie un nombre un nombre aléatoirement choisi entre 0 et 1 (1 non compris). Cela suffit ici donc on va au plus simple !! NB random(0,1) conviendrait aussi mais sans crochets.-[0;1] # idem ligne suivante avec un signe - au lieu du = Rectifie tout cela, teste et si problème... tu peux copier coller ton script rectifié. Citer
Messages recommandés
Rejoindre la conversation
Vous pouvez publier maintenant et vous inscrire plus tard. Si vous avez un compte, connectez-vous maintenant pour publier avec votre compte.