2016_2017:s3:concprogobjet:td:codingdojo
This is an old revision of the document!
Table of Contents
Cyber-Dojo : Apprendre à tester (et coder) en s'amusant !
Objectifs = appréhender les tests par le jeu
3mn Organisation
Vous formez des groupes de 2 ou 3 étudiants. Une seule machine connectée à la session, cf. suite.
7mn Connexion et lancement de la session
- Connectez vous à http://cyber-dojo.org/
- “Enter a practice Session :“ le numéro vous est donné en TD.
- Test
- Corriger et Test
- Ok c'est parti. Vous avez compris le principe, maintenant c'est à vous !
10mn Compréhension
- Regardez les instructions, sur le site directement (Instructions), un rappel de l'énoncé est “recopié” ci-dessous.
- Tuyaux 1) :
- Choisissez la manière de représenter une commande (3livres du 1e titre, 2 livres du 2e, aucun du 3e, 4e et 5e)
- Pensez “INCREMENTAL” et tests : vous faîtes passer les premiers tests (par exemple, je sais calculer le cout d'une commande qui contient un livre) et vous avancez avec des tests plus difficiles qui ne passent pas forcément, mais vous pouvez pas à pas en construire d'autres qui passent. A tout moment, i) vous avez une version avec des tests qui passent, ii) vous
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.
1)
mais vous êtes autonomes, à vous de vous organiser
2016_2017/s3/concprogobjet/td/codingdojo.1476601348.txt.gz · Last modified: 2016/10/16 07:02 by blay