Inscription / Connexion Nouveau Sujet
Niveau seconde
Partager :

Algorithme pour un tarif de ski

Posté par
Lolopeco
16-03-18 à 19:32

Bonjour à tous,
J'ai un devoir maison à rendre lundi mais j'en n'y arrive pas, voici l'énoncé :
Une station de sports d'hivers propose trois tarifs pour les remontées mécaniques :
- le tarif A : 15€  Par jour de ski
-l e tarif B : 70€  Pour une semaine de sept jours de ski
-le tarif C : 23€  Fixe pour une semaine et 7€  Par jour de ski

Écrire un algorithme en pseudo langage qui détermine le tarif le plus avantageux en fonction du nombre de jours de ski réalisé en une semaine
Vous commencerez le problème mathématiquement avant d'écrire l'algorithme

Merci d'avance 😊

Posté par
cocolaricotte
re : Algorithme pour un tarif de ski 16-03-18 à 20:00

Bonjour

Qu'as tu tenté ? As tu suivi le conseil donné ?

Posté par
Lolopeco
re : Algorithme pour un tarif de ski 16-03-18 à 20:27


cocolaricotte

J'ai calculer pour 7 jours les troisième tarifs et j'ai trouvé :
Tarif À :105€
Tarif B:70€
Tarif C:72€

Que dois je faire après ?

Posté par
cocolaricotte
re : Algorithme pour un tarif de ski 16-03-18 à 20:33

Pourquoi 7 jours ?

Il y avait des questions avant celle que tu as postée ?

Posté par
Lolopeco
re : Algorithme pour un tarif de ski 16-03-18 à 20:35

cocolaricotte

C'est écrit à la fin du sujet je l'ai noté il faut déterminer le tarif le plus avantageux en fonction du nombre de jours de ski réalisé en une semaine

Posté par
cocolaricotte
re : Algorithme pour un tarif de ski 16-03-18 à 20:37

Donc pour un nombre x quelconque entre 1 et 7 quels sont les prix à payer ?

Posté par
Lolopeco
re : Algorithme pour un tarif de ski 16-03-18 à 20:39

cocolaricotte

Tarif A = 15x
Tarif B = 70
Tarif C = 23+7x

Et il faut calculer x=7 non ?

Posté par
cocolaricotte
re : Algorithme pour un tarif de ski 16-03-18 à 20:44

Donc à la main tu ferais comment pour trouver la réponse à la question posée

Posté par
Lolopeco
re : Algorithme pour un tarif de ski 16-03-18 à 22:27

cocolaricotte

Il faut faire 3 algorithmes non ?
Tarif A
Saisir x
Affecter à x la valeur 15x
Afficher x

Tarif B
Je ne sais pas :/

Tarif C
Saisir x
Affecter à x la valeur 7x
Affecter à x la valeur 27+ x
Afficher x

Est-ce ca ?

Posté par
bbomaths
re : Algorithme pour un tarif de ski 17-03-18 à 08:57

Bonjour.

Il y a de l'idée... le tout est de tout fondre en un seul algorithme.

Des variables à déclarer et, peut-être, à initialiser.
Un seul x, nombre de jours de ski, qu'il n'est pas nécessaire de saisir au clavier.
Trois calculs dans une même boucle.
Trois résultats à comparer entre eux pour trouver le plus avantageux pour le même nombre de jours de ski.
Un affichage.

Et hop, le tour est joué...

Quand pensez-vous ?

Posté par
Lolopeco
re : Algorithme pour un tarif de ski 17-03-18 à 11:34

bbomaths

Merci 😊
Mais le problème c'est que je ne sais pas d'un du tout comment faire mais je vois à peu près.. Vous pouvez m'aider ?

Posté par
bbomaths
re : Algorithme pour un tarif de ski 17-03-18 à 12:10

Définir des variables... de quoi avons-nous besoin ?

Une variable pour le coût de chacun des tarifs :

-> cout_A = 0
-> cout_B = 0
-> cout_C = 0

Une variable pour mémoriser le cout d'une journée de ski :
-> tarif_A = 0
-> tarif_B = 0
-> tarif_C = 0

Une variable pour compter le nombre de jours :

-> n = 0

En voyez-vous d'autres pour l'instant ?

Posté par
bbomaths
re : Algorithme pour un tarif de ski 17-03-18 à 13:04

Vous allez réfléchir à une boucle :

tant que n, nombre de jours de ski, est inférieur à quelque chose faire

-  les calculs de 3 couts
-  la recherche du meilleur tarif

fin tant que

Posté par
Lolopeco
re : Algorithme pour un tarif de ski 17-03-18 à 13:19

bbomaths

Mais je ne comprends pas le calcul du tarifB ?

Et la boucle je crois que c'est ca :
Tant que n<\7
Faire 15n
             (Je ne sais' pas pour le tarifB )
             23+7n
Et là je n'es sais pas xD

Posté par
bbomaths
re : Algorithme pour un tarif de ski 17-03-18 à 14:00

on approche...

on modifie les variables pour prendre en compte les forfaits :

tarif_A = 0
cout_A = 0
tarif_B = 0
cout_B = 70
tarif_C = 0
cout_C = 23

n = 0

tant que n, nombre de jours de ski, est inférieur à  7 faire

   calcul pour tarif A :
      cout_A = cout_A + tarif_A
      tarif_A = 15

   calcul pour tarif B :
      cout_B = cout_B + tarif_B
      tarif_B = 0

   calcul pour tarif C :
      cout_C = cout_C + tarif_C
      tarif_C = 7

-  la recherche du meilleur tarif

fin tant que

Posté par
bbomaths
re : Algorithme pour un tarif de ski 17-03-18 à 14:01

comment feriez-vous pour comparer les coûts suivant les tarifs ?

Posté par
Lolopeco
re : Algorithme pour un tarif de ski 17-03-18 à 15:05

bbomaths

Mais comment je dois écrire  pour que cela donne un algorithme en pseudo langage ?

Posté par
bbomaths
re : Algorithme pour un tarif de ski 17-03-18 à 15:33

Première partie : la  déclaration de variables


VARIABLES :

tarif_a EST_DU_TYPE_NOMBRE
cout_a EST_DU_TYPE_NOMBRE

tarif_b EST_DU_TYPE_NOMBRE
cout_b = EST_DU_TYPE_NOMBRE

tarif_c EST_DU_TYPE_NOMBRE
cout_c EST_DU_TYPE_NOMBRE

Nmax EST_DU_TYPE_NOMBRE
n EST_DU_TYPE_NOMBRE

meilleur_tarif EST_DU_TYPE_CHAINE


le reste suit...

Posté par
bbomaths
re : Algorithme pour un tarif de ski 17-03-18 à 15:54

Deuxième partie : l'algorithme


DEBUT_ALGORITHME
# initialisations

# tarif A : 15 euro / jour de ski
tarif_a PREND_LA_VALEUR 0
cout_a  PREND_LA_VALEUR 0

# tarif B : forfait 70 euro pour une semaine
tarif_b PREND_LA_VALEUR 0
# prise en compte du forfait
cout_b PREND_LA_VALEUR 70

# tarif C : forfait 23 euros pour une semaine + 7 euros / jour de ski
tarif_c PREND_LA_VALEUR 0
# prise en compte du forfait
cout_c PREND_LA_VALEUR 23

# nombre de jours maximal
Nmax PREND_LA_VALEUR 7

# nombre de jours courants, nul par defaut
n PREND_LA_VALEUR 0

# meilleur tarif, vide par defaut
meilleur_tarif PREND_LA_VALEUR ""

# boucle
TANT_QUE (n <= Nmax) FAIRE

   # tarif A : 15 euro / jour de ski
   cout_a PREND_LA_VALEUR cout_a + tarif_a
   tarif_a PREND_LA_VALEUR 15

   # tarif B : forfait 70 euro pour une semaine
   cout_b PREND_LA_VALEUR cout_b + tarif_b
   tarif_b PREND_LA_VALEUR 0

   # tarif C : forfait 23 euros pour une semaine + 7 euros / jour de ski
   cout_c PREND_LA_VALEUR cout_c + tarif_c
   tarif_c PREND_LA_VALEUR 7

   # recherche du meilleur tarif

   SI (cout_a < cout_b) ET (cout_a < cout_c) FAIRE
      meilleur_tarif PREND_LA_VALEUR "A"
   SINON
      SI (cout_b < cout_a) ET (cout_b < cout_c) FAIRE
         meilleur_tarif PREND_LA_VALEUR "B"
      SINON
         SI (cout_c < cout_a) ET (cout_c < cout_b) FAIRE
            meilleur_tarif PREND_LA_VALEUR "C"
         FIN_SI
      FIN_SI
   FIN_SI

   AFFICHER "Nombre de jours : " n
   AFFICHER "Tarif A         : " cout_a
   AFFICHER "Tarif B         : " cout_b
   AFFICHER "Tarif C         : " cout_c
   AFFICHER "Meilleur tarif  : " meilleur_tarif

   n PREND_LA_VALEUR n+ 1
FIN_TANT_QUE

FIN_ALGORITHME


Votre avis ?

Posté par
flight
re : Algorithme pour un tarif de ski 17-03-18 à 16:31

salut une autre proposition

Sub tarif_ski()
N = InputBox("saisir le nombre de jours à prendre:")
'calcul des tarifs en fonction du nombre de jours choisis:
A = 15 * N
If N Mod 7 = 0 Then
B = (N / 7) * 70 'tarif par tranches de 7 jours seulement.
Else
GoTo 1
End If
1:
C = 23 * ((N - N Mod 7) / 7) + 7 * N Mod 7   'tarif qui comprend le nombre de tranches de 7 jours + jours complementaires < 7
MsgBox A & " " & B & " " & C
tarifs = Array(A, B, C)
sejours = Array("A", "B", "C")
For i = 0 To 2
If tarifs(i) = Application.Min(tarifs) Then
  MsgBox "Tarif le plus avantageux : " & Application.Min(tarifs) & " €,séjour : " & sejours(i)
End If
Next
End Sub

Posté par
Lolopeco
re : Algorithme pour un tarif de ski 17-03-18 à 16:46

flight

Merci beaucoup mais il me le faut en pseudo language :/

Posté par
bbomaths
re : Algorithme pour un tarif de ski 17-03-18 à 16:48

Un bonus en Python :


#*******************************************************************************
# IMPORT ***********************************************************************
#*******************************************************************************

# module pour le système d'exploitation
import os

# module specifique pour le systeme
import sys

#*******************************************************************************
# MAIN *************************************************************************
#*******************************************************************************

# effacement de l'ecran (facultatif)
os.system('cls')
print(" ")

# tarif A : 15 euro / jour de ski
tarif_a = 0
cout_a = 0

# tarif B : forfait 70 euro pour une semaine
tarif_b = 0
# prise en compte du forfait
cout_b = 70

# tarif C : forfait 23 euros pour une semaine + 7 euros / jour de ski
tarif_c = 0
# prise en compte du forfait
cout_c = 23

# nombre de jours maximal
Nmax = 7

# nombre de jours courants, nul par defaut
n = 0

# meilleure tarif, vide par defaut
meilleur_tarif = ""

# boucle pour compter les jurs
while n <= Nmax :

   # tarif A
   cout_a += tarif_a
   tarif_a = 15

   # tarif B
   cout_b += tarif_b
   tarif_b = 0

   # tarif C
   cout_c += tarif_c
   tarif_c = 7

   # recherche du meilleur tarif
   if cout_a < cout_b and cout_a < cout_c :

      meilleur_tarif = "A"

   elif cout_b < cout_a and cout_b < cout_c :

      meilleur_tarif = "B"

   elif cout_c < cout_a and cout_c < cout_b :

      meilleur_tarif = "C"

   print(" Nombre de jours : %d Tarif A : % 4d Tarif B : % 4d  Tarif C : % 4d Meilleur tarif : %s"\
         % (n, cout_a, cout_b, cout_c, meilleur_tarif))

   # incrementation du nombre de jours de ski
   n += 1


Exécution :

 Nombre de jours : 0 Tarif A :    0 Tarif B :   70  Tarif C :   23 Meilleur tarif : A
 Nombre de jours : 1 Tarif A :   15 Tarif B :   70  Tarif C :   30 Meilleur tarif : A
 Nombre de jours : 2 Tarif A :   30 Tarif B :   70  Tarif C :   37 Meilleur tarif : A
 Nombre de jours : 3 Tarif A :   45 Tarif B :   70  Tarif C :   44 Meilleur tarif : C
 Nombre de jours : 4 Tarif A :   60 Tarif B :   70  Tarif C :   51 Meilleur tarif : C
 Nombre de jours : 5 Tarif A :   75 Tarif B :   70  Tarif C :   58 Meilleur tarif : C
 Nombre de jours : 6 Tarif A :   90 Tarif B :   70  Tarif C :   65 Meilleur tarif : C
 Nombre de jours : 7 Tarif A :  105 Tarif B :   70  Tarif C :   72 Meilleur tarif : B

Posté par
bbomaths
re : Algorithme pour un tarif de ski 17-03-18 à 16:49

Votre avis ?

Posté par
Lolopeco
re : Algorithme pour un tarif de ski 17-03-18 à 17:33

bbomaths

Merci énormément ! J'ai maintenant compris comment faire et j'ai réussi mon devoir

Posté par
bbomaths
re : Algorithme pour un tarif de ski 17-03-18 à 17:36

Super...



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