Dans le billet précédent je décrivais les syntaxes des types structurés. Dans le cadre du BTS SIO il est important de maîtriser également les fonctions et procédure. Le sujet du tp est le suivant : Vous devez mettre en place un algorithme demandant à l’utilisateur de saisir un code vendeur, puis une vente de ce vendeur.
Le nombre de vendeur et de vente est au choix de l’utilisateur, il est à définir en début de programme. Pour ce faire vous devez créer la procédure afin de compléter le tableaux des ventes et des vendeurs. Et une fonction qui va calculer le total des ventes suivant l' »id vendeur » que l’utilisateur lui retourne.
Le programme en lui même est très court, l’exercice repose sur la déclaration des types, de la procédure et de la fonction.
1 2 3 4 5 6 7 8 | Début | Afficher ( "Saisir le nombre de vente" ) | Saisir ( nb_vente ) | remplir_tableau ( nb_vente ) | Afficher ( "Saisir le code du vendeur pour son total" ) | Saisir ( CodeVendeur ) | rez <- VENTES_VENDEUR ( nb_vente , CodeVendeur ) Fin |
CORRECTION DU TP :
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 | Type Magasin | lieux : Chaîne FinType Type T_VENTES | numero : Entier | département : Chaîne | CodeVendeur : Entier | Produit : Chaîne | Montant : Entier | Comission : Entier | placement : magasin FinType Constante nb_constante <- 18 Variable tableau_de_vente : T_VENTES [ nb_constante ] Programme vendeur Variable nb_vente : Entier Variable rez : Chaîne Variable CodeVendeur : Entier Début | Afficher ( "Saisir le nombre de vente" ) | Saisir ( nb_vente ) | remplir_tableau ( nb_vente ) | Afficher ( "Saisir le code du vendeur pour son total" ) | Saisir ( CodeVendeur ) | rez <- VENTES_VENDEUR ( nb_vente , CodeVendeur ) Fin Fonction VENTES_VENDEUR ( nb_vente : Entier ; CodeVendeur : Entier ) : Chaîne Variable i : Entier Variable MontantTotal : Entier MontantTotal <- 0 Début | Pour i <- 1 à nb_vente Faire | | Si tableau_de_vente [ i ].CodeVendeur = CodeVendeur | | | MontantTotal <- MontantTotal + tableau_de_vente [ i ].Montant | | FinSi | FinPour | Afficher ( "Pour le Vendeur qui possède lid : " & CodeVendeur ) | Afficher ( "Le total est : " & MontantTotal ) Fin Procédure remplir_tableau ( nb_vente : Entier ) Variable i : Entier Début | | Pour i <- 1 à nb_vente Faire | | tableau_de_vente [ i ].numero <- i | | Saisir ( tableau_de_vente [ i ].CodeVendeur , tableau_de_vente [ i ].Montant ) | | Afficher ( "Code Vendeur :" & tableau_de_vente [ i ].CodeVendeur ) | | Afficher ( "Le " & i & " Montant est :" & tableau_de_vente [ i ].Montant ) | FinPour | Fin |
La correction proposé n’est qu’une façon de faire, vous pouvez proposer vos corrections je les ajouterai à ce billet pour ceux qui souhaitent procéder différemment.