Bonjour, j'ai un exercice à faire sur les suites. Il est en deux parties et j'ai déjà fait la première. En revanche, la partie programmation m'inspire peu...
On considère le suite (un) définie, pour tout entier naturel n, par un=n^3-n+4
L'algorithme ci-contre contient une fonction seuil qui doit permettre de déterminer un rang p à partir duquel tous les termes de la suite sont supérieurs à un nombre réel A.
def u(n):
return(n**3-n+4)
def seuil(A):
n=0
while u(n)<A:
n=n+1
return(n)
a. Quel est le rôle de la fonction u placé avant la fonction seuil.
J'ai répondu que cette fonction permet de calculer un=n^3-n+4 avec n donné.
b. Programmer cet algorithme et exécuter la fonction seuil en prenant A= 100; A=100000 ;A=10^20
Le problème que j'ai c'est que j'arrive pas à exécuter mon programme. Je l'ai reprogrammer ainsi pour A=100 :
def u(n):
return(n**3-n+4)
def seuil(A):
n=0
while u(n)<100:
n=n+1
return(n)
Est ce que quelqu'un peut m'aider ?
bonjour,
surtout pas modifier le A en 100 dans le script !!!
A reste écrit A, c'est le paramètre d'appel de la fonction
c'est dans l'appel, dans l'utilisation de la fonction
en ligne de commande, une fois le script lancé (pour qu'il définisse effectivement ces fonctions et pas juste du baratin écrit quelque part)
pas dans le script
>>> seui(10)
(ici s'affiche la réponse donnée par le programme)
>>> seuil(100)
etc
ou bien on peut compléter le script par des appels (à l'indentation nulle) à la fin dans le script :
print(seuil(10))
print(seuil(100))
etc
sur le programme de mon sujet c'est écrit: while u(n)<A
donc à la place d'écrire "def seuil(A)" j'écris "def seuil(100)" et je rajoute un print à la fin de mon programme ?
NON
en ligne de commande tu écris seuil(100)
et pas de def dans la ligne de commande
le script reste tel qu'il est sans en modifier une virgule.
OU BIEN
def seuil(A):
# etc inchangé
...
return(n)
# et ici
print(seuil(100))
exemple avec EduPython
la disposition des différentes zones et le décor peut être différents avec d'autres "Python"
PS
j'avais fait un copier coller de ton script erroné
résultat faux par rapport à l'appel effectué seuil(10)
c'est partout et toujours
while u(n) < A :
et l'exécution donne
*** Console de processus distant Réinitialisée ***
>>> seuil(10)
2
>>>
Vous devez être membre accéder à ce service...
Pas encore inscrit ?
1 compte par personne, multi-compte interdit !
Ou identifiez-vous :