Inscription / Connexion Nouveau Sujet
Niveau seconde
Partager :

Python- taux réciproque

Posté par
Elenatvd
24-02-24 à 02:12

Bonjour à tous, j'espère que vous allez bien ! Je ne parviens vraiment pas à faire un exercice sur Python, cela fait des heures que je me tracasse le cerveau mais sans succès... à comprendre comment déterminer (formule) le Cm réciproque dans un programme ?
Je vous ai mis ci-joint l'image de l'exercice, aidez moi pour les parties B et C s'il vous plaît, je vous en conjure.
Merci d'avance à vous

Python- taux réciproque

Posté par
mathafou Moderateur
re : Python- taux réciproque 24-02-24 à 11:05

Bonjour,

A LIRE AVANT DE POSTER OU DE RÉPONDRE, MERCI

en particulier
recopier les premières lignes de l'énoncé dans le texte de la demande (indispensable au référencement)

dire précisément ce qu'on a fait / essayé / commencé et précisément ce qui bloque

ici quelles réponses as tu données Partie A ? comment les as tu obtenues ?

parce que dans la partie B il s'agit juste de reproduire la même formule / méthode de calcul que tu as utilisée partie A à la main !!
juste que on écrit cette même formule en syntaxe Python (ce qui ne change as grand chose pour juste une formule mathématique !) que l'on glisse dans la structure générale d'une définition de fonction en Python.

def .... (...) :
   ....
   return ...

Posté par
Elenatvd
re : Python- taux réciproque 24-02-24 à 15:11

Bonjour,
Dans la partie A pour calculer le taux réciproque correspondant à une hausse de 70%.
J'ai tout d'abord pris son coefficient multiplicateur qui est 1,7 (on peut utiliser cette formule (1+ 70÷100). Et une fois le Cm multiplicateur trouvé, j'ai fait 1÷1,7 = 0,5882.
Enfin, pour l'obtenir en pourcentage j'ai fait (0,5882-1) × 100 = une baisse de -41,2%.
J'ai utilisé le même principe pour la baisse de 30%.
Je vous ai mis l'exercice sur feuille, si ça peut être plus clair.
Du coup, que dois-je faire des les deux parties ? J'ai vraiment du mal avec le langage Python.
Merci à vous.

Posté par
Elenatvd
re : Python- taux réciproque 24-02-24 à 15:15

Image

** image supprimée **
photos de calculs interdites

Posté par
Elenatvd
re : Python- taux réciproque 24-02-24 à 15:21

Elenatvd @ 24-02-2024 à 15:11

Bonjour,
Dans la partie A pour calculer le taux réciproque correspondant à une hausse de 70%.
J'ai tout d'abord pris son coefficient multiplicateur qui est 1,7 (on peut utiliser cette formule (1+ 70÷100). Et une fois le Cm multiplicateur trouvé, j'ai fait 1÷1,7 = 0,5882.
Enfin, pour l'obtenir en pourcentage j'ai fait (0,5882-1) × 100 = une baisse de -41,2%.
J'ai utilisé le même principe pour la baisse de 30%.
Je vous ai mis l'exercice sur feuille, si ça peut être plus clair.
Du coup, que dois-je faire des les deux parties ? J'ai vraiment du mal avec le langage Python.
Merci à vous.

Posté par
mathafou Moderateur
re : Python- taux réciproque 24-02-24 à 16:37

donc de façon générale si t est le taux en pourcentage
tu calcules r = 1+ t/100
puis c = 1/r et finalement 100(c-1)

tu n'as plus qu'à écrire pratiquement ces formules telles quelles (sans oublier des parenthèses éventuelles et des * pour dire multiplier, toujours explicite en Python, 100*(c-1))
dans le corps de ta fonction Python.

je t'en ai donné le canevas.
et l'énoncé dit que ça commence par
def taux_recip(t) :

(sans oublier les ":", l'indentation etc)

Posté par
Elenatvd
re : Python- taux réciproque 24-02-24 à 16:52

Ok merci, donc je commence par
def taux_recip(t) :
r=1+t/100
c=1/r
c=(c-1)*100
Il s'agit de quelque chose comme ça ? Il ne manque pas des étapes parce que je vais devoir afficher avec le programme la hausse de 70% et la baisse de 30%. Comment vais-je les rentrer dans le programme ?
Merci encore.

Posté par
mathafou Moderateur
re : Python- taux réciproque 24-02-24 à 17:19

il manque ce que tu fais du dernier résultat, parce que là il le garde pour lui !
soit l'afficher (par print) soit c'est ce que renvoie la fonction (return)

de plus il faut respecter l'indentation (espaces en début de lignes) pour dire ce qui est dans un bloc ou en dehors
en Python il n'y a pas de "fin de ..."
c'est l'indentation qui traduit les "début de..." et "fin de ..."


def taux_recip(t) :
    r=1+t/100
    c=1/r
    c=(c-1)*100
    ...
    return ...

# suite éventuelle


quant aux valeurs numériques ce sera les valeurs que tu donneras lors de l'exécution du programme

taux_recip(70)
taux_recip(-30)
ou n'importe quelle valeur
c'est à ça que sert une fonction et de façon générale un programme :
des calculs généraux quel que soit t
et partout où on en a besoin, on invoque la fonction par taux_recip(la valeur qu'on veut)

nota : si on invoque une fonction depuis la ligne de commande il affiche automatiquement la valeur renvoyée dans la console. sans avoir besoin d'un print
par contre si on l'invoque au sein d'un programme, il faudra un print pour voir le résultat.

Posté par
Elenatvd
re : Python- taux réciproque 24-02-24 à 17:45

J'ai voulu mettre le programme en exécution mais cela ne fonctionne pas ? Je suis vraiment larguée. Je prends en compte ce que vous me dites mais hélas je n'y parviens pas.
Comment je peux faire ?

Python- taux réciproque

Python- taux réciproque

Posté par
Elenatvd
re : Python- taux réciproque 24-02-24 à 17:46

J'ai voulu mettre le programme en exécution mais cela ne fonctionne pas ? Je suis vraiment larguée. Je prends en compte ce que vous me dites mais hélas je n'y parviens pas.
Comment je peux faire ?

Python- taux réciproque

Posté par
Elenatvd
re : Python- taux réciproque 24-02-24 à 17:58

Et puis même quand le programme s'exécute, il donne un mauvais résultat...ça devrait être 41,2 % ?

Python- taux réciproque

Posté par
mathafou Moderateur
re : Python- taux réciproque 24-02-24 à 18:04

comme le dit le message d'erreur
unexpected indent = indentation inattendue
le def doit commencer en début de ligne sans indentation.

de plus ta fonction s'appelle taux_recip et pas taux_reciproque

enfin elle prend une seule valeur à la fois et pas deux
elle devra donc être invoquée autant de fois qu'il y a de valeurs à calculer. (une par une)

Posté par
mathafou Moderateur
re : Python- taux réciproque 24-02-24 à 18:09

vu que entre temps tu avais corrigé nombre de ces erreurs.

tu calcules tauxreciproque = (CM-1)*100) mais ce que tu renvoies n'est pas le résultat de ce calcul mais la valeur t de départ !!

Posté par
Elenatvd
re : Python- taux réciproque 24-02-24 à 18:13

Merci mon programme fonctionne !!!
Mais par contre il n'affiche pas le résultat (qui devrait être 41,2 %) pourquoi ?
Et aussi je me demande comment il va savoir si c'est une hausse ou baisse quand je renter les taux ?
Merci infiniment pour vos réponses !!

Python- taux réciproque

Posté par
Elenatvd
re : Python- taux réciproque 24-02-24 à 18:15

Parce que dans les deux programmes que j'ai tenté d'exécuter ça me revoit à la valeur de départ...mais alors comment avoir le résultat ?

Posté par
mathafou Moderateur
re : Python- taux réciproque 24-02-24 à 19:22

return (t) renvoie évidemment la valeur de t et pas du résultat du calcul que finalement tu n'utilises pas (tu ne fais rien de c)

la hausse ou la baisse est le signe de t
+70 hausse de 70%
-30 baisse de 30%

et la même convention sur les résultats.



Vous devez être membre accéder à ce service...

Pas encore inscrit ?

1 compte par personne, multi-compte interdit !

Ou identifiez-vous :


Rester sur la page

Inscription gratuite

Fiches en rapport

parmi 1675 fiches de maths

Désolé, votre version d'Internet Explorer est plus que périmée ! Merci de le mettre à jour ou de télécharger Firefox ou Google Chrome pour utiliser le site. Votre ordinateur vous remerciera !