Βιβλιοπωλείο

Βιβλιοπωλείο

Μέτριο

Οδηγίες

Για να ενθαρρύνει περισσότερες πωλήσεις διαφορετικών βιβλίων από μια δημοφιλή σειρά 5 βιβλίων, ένα βιβλιοπωλείο αποφάσισε να προσφέρει εκπτώσεις σε αγορές πολλών βιβλίων.

Ένα αντίτυπο από οποιοδήποτε από τα πέντε βιβλία κοστίζει $8.

Αν όμως αγοράσεις δύο διαφορετικά βιβλία, παίρνεις έκπτωση 5% στα δύο αυτά βιβλία.

Αν αγοράσεις 3 διαφορετικά βιβλία, παίρνεις έκπτωση 10%.

Αν αγοράσεις 4 διαφορετικά βιβλία, παίρνεις έκπτωση 20%.

Αν αγοράσεις και τα 5, παίρνεις έκπτωση 25%.

Σημείωση: αν αγοράσεις τέσσερα βιβλία, από τα οποία τα 3 είναι διαφορετικοί τίτλοι, παίρνεις έκπτωση 10% στα 3 που αποτελούν μέρος ενός σετ, αλλά το τέταρτο βιβλίο κοστίζει ακόμα $8.

Η αποστολή σου είναι να γράψεις κώδικα που να υπολογίζει την τιμή οποιουδήποτε νοητού καλαθιού αγορών (που περιέχει μόνο βιβλία της ίδιας σειράς), δίνοντας τη μεγαλύτερη δυνατή έκπτωση.

Για παράδειγμα, πόσο κοστίζει αυτό το καλάθι με βιβλία;

  • 2 αντίτυπα του πρώτου βιβλίου
  • 2 αντίτυπα του δεύτερου βιβλίου
  • 2 αντίτυπα του τρίτου βιβλίου
  • 1 αντίτυπο του τέταρτου βιβλίου
  • 1 αντίτυπο του πέμπτου βιβλίου

Ένας τρόπος να ομαδοποιήσεις αυτά τα 8 βιβλία είναι:

  • 1 ομάδα των 5 --> έκπτωση 25% (1ο,2ο,3ο,4ο,5ο)
  • +1 ομάδα των 3 --> έκπτωση 10% (1ο,2ο,3ο)

Αυτό θα έδινε σύνολο:

  • 5 βιβλία με έκπτωση 25%
  • +3 βιβλία με έκπτωση 10%

Που έχει ως αποτέλεσμα:

  • 5 x (8 - 2.00) == 5 x 6.00 == $30.00
  • +3 x (8 - 0.80) == 3 x 7.20 == $21.60

Για σύνολο $51.60

Ωστόσο, ένας διαφορετικός τρόπος να ομαδοποιήσεις αυτά τα 8 βιβλία είναι:

  • 1 ομάδα 4 βιβλίων --> έκπτωση 20% (1ο,2ο,3ο,4ο)
  • +1 ομάδα 4 βιβλίων --> έκπτωση 20% (1ο,2ο,3ο,5ο)

Αυτό θα έδινε σύνολο:

  • 4 βιβλία με έκπτωση 20%
  • +4 βιβλία με έκπτωση 20%

Που έχει ως αποτέλεσμα:

  • 4 x (8 - 1.60) == 4 x 6.40 == $25.60
  • +4 x (8 - 1.60) == 4 x 6.40 == $25.60

Για σύνολο $51.20

Και τα $51.20 είναι η τιμή με τη μεγαλύτερη έκπτωση.

Επεξεργασία μέσω GitHub Ο σύνδεσμος ανοίγει σε νέο παράθυρο ή καρτέλα
Delphi Pascal Exercism

Έτοιμος να ξεκινήσεις την άσκηση Βιβλιοπωλείο;

Γράψου στο Exercism για να μάθεις και να κατακτήσεις Delphi Pascal με 76 ασκήσεις και πραγματική καθοδήγηση από ανθρώπους, όλα δωρεάν.