Notice: This page requires JavaScript to function properly.
Please enable JavaScript in your browser settings or update your browser.
Apprendre Défi : Projet de Synthèse en Gestion de Produit | Instructions Conditionnelles
Introduction à Python

Glissez pour afficher le menu

book
Défi : Projet de Synthèse en Gestion de Produit

Félicitations pour avoir atteint ce stade du cours ! Dans ce défi de synthèse, vous allez gérer des produits périssables dans un supermarché, en déterminant les remises en fonction de la date de péremption et des niveaux de stock. Votre objectif est de minimiser le gaspillage tout en maximisant efficacement les ventes grâce à une stratégie de remise adaptée.

Voyons comment vous pouvez traduire des règles métier en code Python !

Scénario

En tant que responsable dans un supermarché, vous êtes chargé de mettre en œuvre une stratégie de remise pour les produits périssables en fonction de leur date de péremption et de leur niveau de stock.

La stratégie de remise est la suivante :

  • Appliquer une remise de 30 % si le produit expire dans 3 jours ou moins et que le niveau de stock est supérieur à 50 unités ;

  • Appliquer une remise de 20 % si le produit expire dans 4 à 6 jours et que le niveau de stock est supérieur à 50 unités ;

  • Appliquer une remise de 10 % si le produit expire dans 7 jours ou plus, ou si le niveau de stock est de 50 unités ou moins ;

  • Aucune remise si le produit n'est pas « Périssable ».

Tâche

Swipe to start coding

Implémentez une série d'instructions conditionnelles pour déterminer la remise à appliquer à un produit en fonction de son type, du nombre de jours avant expiration et du niveau de stock.

  • Commencez par vérifier si le product_type est "Perishable".
  • À l'intérieur de cette instruction if :
    • Appliquez une remise de 30 % si days_until_expiration est inférieur ou égal à 3 et que stock_level est supérieur à 50 ;
    • Utilisez elif pour appliquer une remise de 20 % si days_until_expiration est compris entre 4 et 6, et que stock_level est supérieur à 50 ;
    • Utilisez un autre elif pour appliquer une remise de 10 % si days_until_expiration est supérieur à 6 et que stock_level est inférieur ou égal à 50.
  • Si le product_type n'est pas "Perishable", affichez : "No discount available for non-perishable items.".

Exigences de sortie

  • Si une remise de 30 % est appliquée, affichez : "30% discount applied"
  • Si une remise de 20 % est appliquée, affichez : "20% discount applied"
  • Si une remise de 10 % est appliquée, affichez : "10% discount applied"
  • Si le produit n'est pas périssable, affichez : "No discount available for non-perishable items."

Remarque

Vous pouvez imbriquer plusieurs instructions if les unes dans les autres. Veillez à bien gérer l'indentation de chaque bloc.

Solution

Switch to desktopPassez à un bureau pour une pratique réelleContinuez d'où vous êtes en utilisant l'une des options ci-dessous
Tout était clair ?

Comment pouvons-nous l'améliorer ?

Merci pour vos commentaires !

Section 3. Chapitre 6

Demandez à l'IA

expand
ChatGPT

Posez n'importe quelle question ou essayez l'une des questions suggérées pour commencer notre discussion

book
Défi : Projet de Synthèse en Gestion de Produit

Félicitations pour avoir atteint ce stade du cours ! Dans ce défi de synthèse, vous allez gérer des produits périssables dans un supermarché, en déterminant les remises en fonction de la date de péremption et des niveaux de stock. Votre objectif est de minimiser le gaspillage tout en maximisant efficacement les ventes grâce à une stratégie de remise adaptée.

Voyons comment vous pouvez traduire des règles métier en code Python !

Scénario

En tant que responsable dans un supermarché, vous êtes chargé de mettre en œuvre une stratégie de remise pour les produits périssables en fonction de leur date de péremption et de leur niveau de stock.

La stratégie de remise est la suivante :

  • Appliquer une remise de 30 % si le produit expire dans 3 jours ou moins et que le niveau de stock est supérieur à 50 unités ;

  • Appliquer une remise de 20 % si le produit expire dans 4 à 6 jours et que le niveau de stock est supérieur à 50 unités ;

  • Appliquer une remise de 10 % si le produit expire dans 7 jours ou plus, ou si le niveau de stock est de 50 unités ou moins ;

  • Aucune remise si le produit n'est pas « Périssable ».

Tâche

Swipe to start coding

Implémentez une série d'instructions conditionnelles pour déterminer la remise à appliquer à un produit en fonction de son type, du nombre de jours avant expiration et du niveau de stock.

  • Commencez par vérifier si le product_type est "Perishable".
  • À l'intérieur de cette instruction if :
    • Appliquez une remise de 30 % si days_until_expiration est inférieur ou égal à 3 et que stock_level est supérieur à 50 ;
    • Utilisez elif pour appliquer une remise de 20 % si days_until_expiration est compris entre 4 et 6, et que stock_level est supérieur à 50 ;
    • Utilisez un autre elif pour appliquer une remise de 10 % si days_until_expiration est supérieur à 6 et que stock_level est inférieur ou égal à 50.
  • Si le product_type n'est pas "Perishable", affichez : "No discount available for non-perishable items.".

Exigences de sortie

  • Si une remise de 30 % est appliquée, affichez : "30% discount applied"
  • Si une remise de 20 % est appliquée, affichez : "20% discount applied"
  • Si une remise de 10 % est appliquée, affichez : "10% discount applied"
  • Si le produit n'est pas périssable, affichez : "No discount available for non-perishable items."

Remarque

Vous pouvez imbriquer plusieurs instructions if les unes dans les autres. Veillez à bien gérer l'indentation de chaque bloc.

Solution

Switch to desktopPassez à un bureau pour une pratique réelleContinuez d'où vous êtes en utilisant l'une des options ci-dessous
Tout était clair ?

Comment pouvons-nous l'améliorer ?

Merci pour vos commentaires !

Section 3. Chapitre 6
Switch to desktopPassez à un bureau pour une pratique réelleContinuez d'où vous êtes en utilisant l'une des options ci-dessous
Nous sommes désolés de vous informer que quelque chose s'est mal passé. Qu'est-il arrivé ?
some-alt