bonjour j'ai un petit soucis avec un exo que je ne comprend pas voici l'énoncé:
f est la fonction définie sur l'intervalle [1;500] par f(x)= x(24-√x) Mélanie affirme:<<pour tout nombre réel x de [1; 500],f(x) est inférieur ou égal a 2000.>>
Voici un programme incomplet écrit en langage python permettant de vérifier si l'affirmation de Mélanie est vraie ou non.
le code incomplet:
from math import*
def f(x):
y = x*(24-sqrt(x))
return y
d=0
for k in range (1,501):
if.................:
d=1
if d==1:
print("Affirmation fausse")
else:
print("Affirmation fausse")
from math import*
def f(x):
y = x*(24-sqrt(x))
return y
d=0
for k in range (1,501):
if y < 2000:
d=1
if d==1:
print("Affirmation fausse")
else:
print("Affirmation fausse")
Bonjour,
y est locale à l'interieur de la fonction f(x) et est inconnu en dehors
c'est f(k) qu'il faut mettre pour calculer la valeur de f pour x = k
une fois ça corrigé il ne devrait plus y avoir d'erreur de syntaxe
mais un résultat faux par rapport à ce qu'on veut vérifier
si on trouve une valeur de k pour laquelle f(x) < 2000
(et d'après Mélanie c'est vrai partout)
alors on met d à 1, et il y reste
à la fin, si d==1 que dit on alors ?
et puis ça m'étonnerait que à la fin dans chacun des deux cas on dise la mêm chose "affirmation fausse" !
ha oui désolé je m'excuse je n'avais pas vu que j'avais mit 2 fois fausse j'ai réctifié donc le programme est celui ci par le fait:
from math import*
def f(k):
y = k*(24-sqrt(k))
return y
d=0
for k in range (1,501):
if f(k) < 2000:
d=1
if d==1:
print("Affirmation fausse")
else:
print("Affirmation vrai")
pardon pour que cela rentre dans mon énoncé il ne faut pas que je modifie le x
cela donne cela ducoup:
def f(x):
y = x*(24-sqrt(x))
return y
d=0
for k in range (1,501):
if f(k) < 2000:
d=1
if d==1:
print("Affirmation fausse")
else:
print("Affirmation vrai")
mais le résultat du programme est faux !
même si f(x) <= 2000 quel que soit x, il va prétendre que c'est faux !
c'est ton test qui n'est pas bon d'un point de vue logique.
je ne comprend pas bien que faut t'il que je fasse la partie fausse est celle que j'ai faite c'est a dire avec le if le reste m'est donné je n'ai pas le choix de le garder j'en déduis que ma partie est donc fausse mais je ne comprend pas?
le programme de base me dit que si d==1 alors l'affirmation est fausse je ne peut pas modifier cette partie elle est fixe a l'inverse si d n'est pas égal a 1 alors l'affirmation sera vrai
donc dans la logique si le résultat de f(k) est inférieur a 2000 c'est donc censé me donné affirmation vrai jusque la normalement c'est bon dans le cas contraire si f(k) est supérieur a 200 sa met d a 1 donc l'affirmation est fausse
mais je ne comprend pas bien comment l'appliquer
voila.
et ça te dit "faux" parce que il est vrai que l'hypothèse de mélanie est fausse comme tu le démontreras dans les questions suivantes de l'exo...
(avec l'erreur de codage il te disait que c'était faux même si cela avait été vrai)
Vous devez être membre accéder à ce service...
Pas encore inscrit ?
1 compte par personne, multi-compte interdit !
Ou identifiez-vous :