User Tools

Site Tools


2016_2017:s3:concprogobjet:td:codingdojo

This is an old revision of the document!


Cyber-Dojo : Apprendre à tester (et coder) en s'amusant !

Objectifs = appréhender les tests par le jeu

3mn Organisation

des paires de 2 étudiants. Une machine connectée au réseau

7mn Connexion et lancement de la session

  1. Connectez vous à http://cyber-dojo.org/
  2. “Enter a practice Session :“ le numéro vous est donné en TD.
  3. Test
  4. Corriger et Test
  5. Ok c'est parti. Vous avez compris le principe, maintenant c'est à vous !

10mn Compréhension

  • Regardez les instructions, sur le site directement, un rappel est “recopié” ci-dessous.
  • Voici un premier jeu de tests, pour vous aider à démarrer.

30mn Développements

Top…. Toutes les 10mn, celui qui programme change. C'est OBLIGATOIRE !

10mn Tests Fonctionnels

Un nouveau jeu de tests vous est donné…(Comment???) Vous vérifiez qu'il passe, sinon… on recommence !

20mn Livraison

Vous corrigez, modifiez… Puis vous nous envoyez le .tgz obtenu par download

Temps restant

Vous amorcez le TD suivant

To try and encourage more sales of the 5 different Harry
Potter books they sell, a bookshop has decided to offer 
discounts of multiple-book purchases. 

One copy of any of the five books costs 8 EUR. 

If, however, you buy two different books, you get a 5% 
discount on those two books.

If you buy 3 different books, you get a 10% discount. 

If you buy 4 different books, you get a 20% discount.

If you go the whole hog, and buy all 5, you get a huge 25%
discount. 

Note that if you buy, say, four books, of which 3 are 
different titles, you get a 10% discount on the 3 that 
form part of a set, but the fourth book still costs 8 EUR. 

Your mission is to write a piece of code to calculate the 
price of any conceivable shopping basket (containing only 
Harry Potter books), giving as big a discount as possible.

For example, how much does this basket of books cost?

2 copies of the first book
2 copies of the second book
2 copies of the third book
1 copy of the fourth book
1 copy of the fifth book

One way of group these 8 books is:
 1 group of 5 --> 25% discount (1st,2nd,3rd,4th,5th)
+1 group of 3 --> 10% discount (1st,2nd,3rd)
This would give a total of
 5 books at a 25% discount
+3 books at a 10% discount
Giving
 5 x (8 - 2.00) == 5 x 6.00 == 30.00
+3 x (8 - 0.80) == 3 x 7.20 == 21.60
For a total of 51.60

However, a different way to group these 8 books is:
 1 group of 4 books --> 20% discount  (1st,2nd,3rd,4th)
+1 group of 4 books --> 20% discount  (1st,2nd,3rd,5th)
This would give a total of
 4 books at a 20% discount
+4 books at a 20% discount
Giving
 4 x (8-1.60) == 4 x 6.40 == 25.60
+4 x (8-1.60) == 4 x 6.40 == 25.60
For a total of 51.20

And 51.20 is the price with the biggest discount.
2016_2017/s3/concprogobjet/td/codingdojo.1476600370.txt.gz · Last modified: 2016/10/16 08:46 by blay