Inscription / Connexion Nouveau Sujet
Niveau seconde
Partager :

algorithme python

Posté par
Casu
12-05-20 à 15:58

Bonjour à tous,
Je suis nul pour ces programmes et je vous demande un peu d'aide; voilà ce que j'ai à faire:
Créer un seul algorithme en langage Python qui, à l'aide des deux données suivantes:
vitesse du véhicule, distance à laquelle se situe l'obstacle ; sera capable de vous dire
si le conducteur a le temps de freiner ou non lorsqu'il aperçoit l'obstacle.
Pour atteindre cet objectif, vous pouvez suivre les étapes suivantes:
1°) Écrire une fonction R qui, à partir de V, renvoie la distance de réaction.
2°) Écrire une fonction F qui, à partir de V, renvoie la distance de freinage.
3°) Écrire une fonction A qui, à partir de V, renvoie la distance d'arrêt
4°) Utiliser ces trois fonctions pour écrire un programme qui demande la vitesse du véhicule et qui affiche les distances R, F et A.
Merci pour votre aide.

Posté par
Casu
re : algorithme python 12-05-20 à 16:01

précision: A = R + F
R la distance parcourue (en m) pendant le temps de réaction du conducteur (estimé à 1
seconde s'il est en bonne forme)
→ F la distance parcourue (en m) pendant le temps de freinage.
Si V est la vitesse initiale du véhicule (en km/h), on admet que R= V/3,6 et F=V2( carré)/200

Posté par
fm_31
re : algorithme python 12-05-20 à 19:49

Bonjour ,
il existe pas mal de documentation sur python comme par exemple

Les fonctions demandées son relativement simples : une formule donnée .
Commence par écrire la 1° fonction
Cordialement

***Raccourci url ajouté***

Posté par
Casu
re : algorithme python 12-05-20 à 20:52

Merci pour la réponse; j'ai parcouru le lien mais je n'y arrive pas; peux tu me guider?

Posté par
fm_31
re : algorithme python 12-05-20 à 21:06

Donne un nom à ta première fonction , met la formule correspondante en place et retourne le résultat . Il y a des exemples de fonction dans la doc .

Posté par
mathafou Moderateur
re : algorithme python 12-05-20 à 21:12

bonjour,

"Écrire une fonction R"

le nom est imposé par l'énoncé

"à partir de V"

les donnes d'entrée aussi

donc

def R(V) :
      le calcul voulu
      et un return du résultat

ne pas oublier les espaces (indentation) ni les "deux points"

Posté par
Casu
re : algorithme python 13-05-20 à 08:29

Bonjour et merci pour votre aide:
def R(V):
R=V/3,6
return

def F(V):
F=V2/200
return

def A(V):
A=R+F
return

est ce que c'est bon? pour le n°4 je sèche !!

Posté par
fm_31
re : algorithme python 13-05-20 à 08:56

def R(V):
    R=V/3,6     R est le nom donné à la fonction . On ne peut pas lui affecter une valeur .
return      il faut dire ce qu'on retourne (return quoi ?)

Posté par
mathafou Moderateur
re : algorithme python 13-05-20 à 08:59

def R(V):
R=V/3,6
return

il est très malsain de donner à une variable le même nom qu'une fonction, certains langages refusent même catégoriquement.
l'indentation n'est pas respectée , je l'avais bien précisé !!
return tout court ne renvoie aucun résultat

def R(V):
         y=V/3.6
         return y

idem pour les autres

V2 veut dire la variable de nom V2
un exposant s'écrit ** en Python : V**2 (ou V*V, V multiplié par V )
on utilise un point décimal et pas une virgule 3.6 et pas 3,6

pas utilisé ici mais bon à savoir :
2a ne veut pas dire 2 multiplié par a, on doit écrire explicitement 2*a

A=R+F
non
ce sera bla bla = R(V) + F(V)
appel des fonctions R() et F() pour leur faire calculer ces valeurs et pouvoir les additionner.

Posté par
Casu
re : algorithme python 13-05-20 à 12:01

Merci pour ces précisions donc ça fait:
def R(V):
        y=V/3.6
        return y
def F(V):
        y=V**/200
        return y
def A(V):
         y=R(V)+F(V)
         return y

est ce bon? et pour le 4) je ne comprends pas !!

Posté par
mathafou Moderateur
re : algorithme python 13-05-20 à 12:18

V**2/200

** veut dire "exposant"
pas "au carré"
il faut écrire la valeur de l'exposant !

à part ça c'est bon

4°) Utiliser ces trois fonctions pour écrire un programme qui demande la vitesse du véhicule et qui affiche les distances R, F et A.

"qui demande la vitesse"
se fera par une instruction input (entrée)
ce qu'on tapera lors de l'exécution en réponse à l'invite est du texte (des caractères) et pas une valeur
il faut convertir ce texte en valeur par float(...) :

V=float(input("vitesse : "))

"qui affiche"
se fera par des instructions print

et là dedans on appellera les fonctions définies précédemment pour effectuer les calculs
par exemple :

print("distance de réaction", R(V), "mètres" )

Posté par
Casu
re : algorithme python 13-05-20 à 12:28

Ok donc pour V je mets V*V
Pour le 4)
V=float(input("vitesse)
print("distance de réaction",R(V),"metres")
C'est ça ?

Posté par
mathafou Moderateur
re : algorithme python 13-05-20 à 12:41

tu as des problèmes pour recopier ?
et attention, ici un ":" suivi immédiatement de quelque chose risque d'être transformé en smiley (de même que certaines autres cobinaisons de caractères)

utiliser obligatoirement le bouton Aperçu pour vérifier que la saisie est correcte avant de poster.

(NB : un espace est obligatoire derrière un ":" règle de typographie, de toute façon)

oui c'est ça (sauf fautes de frappe)

mais on veut sortir plusieurs résultats pour cette même vitesse (relire l'énoncé)
donc plusieurs "print"

Posté par
Casu
re : algorithme python 13-05-20 à 13:19

Ok je vais faire attention à bien verifier ce que je frappe.
Je fais pareil en print pour F(V) A(V)

Posté par
mathafou Moderateur
re : algorithme python 13-05-20 à 13:39

oui.

(mais avec la même vitesse, donc un seul input et trois print)

et on met tout ça dans un seul module Python pour tester
(l'arbitre final pour savoir si c'est bon ou pas c'est Python sur machine, en vrai.)

Posté par
Casu
re : algorithme python 13-05-20 à 14:12

ok merci beaucoup pour ton aide je comprends mieux !!



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 1510 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 !