Coding Dojo

Edit on Gitlab

Afficher de jolies polynomes

Il s’agit d’afficher le plus joliment possible un polynome à coefficients entiers (positifs).

Le polynôme est représenté par une suite d’entiers.

1, 2, 3 => 3x^2 + 2x + 1

les règles d’usages seront les suivantes:

  • les monômes sont affichées du degré fort vers les degrés faibles
  • un monôme à coefficient nul n’est affiché que pour le polynome nul = 0
  • un monôme avec un coefficient de 1 n’affiche ce coefficient que pour le degré 0
  • les exposants donnent l’affichage ( rien, x ou x^n selon que l’exposant est nul, égal à 1 ou autre)
  • les opérateurs + et - séparent les monômes (les coefficients négatifs n’apparaissent négatifs que si ils sont en tête de la représentation)

DigiSim

DigiSim

L’objectif de ce kata est de developper un logiciel de simulation de montage électroniques combinatoires à l’aide de portes réalisant les opérateurs logiques de base.

Un circuit sera vu comme un assemblage d’éléments actifs (les portes logiques) et d’éléments passifs (les connexions). Une borne peut être utilisée comme l’entrée d’un élément actif (qui fixe la valeur à un moment donné) ou comme la sortie d’un élément actif (ce qui permet de recueillir la valeur calculée). Un dispositif comportera donc une ou plusieurs entrée et une ou plusieurs sorties. Par exemple :

FizzBuzz

A propos

Difficulté : Simple
Intérêt : Apprentissage TDD et BabySteps.

Règles

Description du problème

Imaginez la scène. Vous avez onze ans et cinq minutes avant la fin de la leçon de mathématique, votre professeur décide soudain de rendre son cours plus “fun” en vous faisant jouer à ce qu’il qualifie de “jeu”. Il vous explique qu’il va intérroger chacun d’entre-vous l’un après l’autre et lui demander de dire le prochain nombre de la séquence en commençant par 1. La partie “fun” est que si le nombre est un multiple de 3 alors vous devrez dire “Fizz”, et s’il est un multiple de 5, vous devrez dire “Buzz”.
Votre professeur commence à vous interroger les uns à la suite des autres. Vos camarades entonnent joyeusement “un!”, “deux!”, “Fizz!”, “quatre!”, “Buzz!”… Jusqu’à ce qu’il décide de son plein gré de vous pointer, vous. En vous fixant de son regard d’acier… Le temps retient son souffle, votre bouche s’assèche et vos mains sont de plus en plus moites. Vous finissez tant bien que mal par articuler “Fizz!”.
Vous échappez de peu à une mort tragique, et l’implacable main du maître vient pointer un autre élève.

Nearest color

Introduction

Une couleur est composée d’une quantité de rouge, vert et bleu.

En informatique, une façon de représenter une couleur est de composer ces trois quantités de couleurs.

Chaque quantité de couleur a une présence entre O (la couleur est absente) et 255 (la couleur est totalement présente).

Mais, parce que certains développeurs aiment l’hexadécimal, ils ont décidé d’utiliser des nombres compris entre 0 et F. Ainsi 00 désigne 0 en décimal et FF désigne 255 en décimal.

Pagination Seven

Description du problème

La pagination se retrouve dans de nombreux sites web sur internet. La plupart du temps, nous retrouvons la page courante ainsi que la navigation précédente et suivante. Parfois il est possible de retourner à la première ou la dernière page. Quelques informations peuvent compléter la pagination pour afficher le nombre total de pages.

Conscient de cet ensemble de besoins, nous avons trouvé un grand nombre d’exemples de paginations, les voici :

Tennis

À propos de ce kata

L’objectif de ce kata est d’implémenter le système de score du tennis.

Les règles sont les suivantes:

  1. Durant 1 jeu, le serveur ou le receveur peuvent avoir 0, 15, 30 ou 40 pour respectivement 0, 1, 2 ou 3 points de marqués.
  2. Lorsque les deux joueurs ont marqué trois points (40 - 40) le score est allor noté “égalité”. Celui qui marque le point suivant obtient un “avantage”
  3. Pour remporter le jeu, un joueur qui a l’avantage doit marquer un autre point.
  4. Si c’est le joueur qui n’a pas l’avantage qui marque le point suivant, on revient à “égalité”, et ainsi de suite jusqu’à ce que l’un des deux joueurs remporte le jeu.

Plus de détail sur la page Wikipedia

Un carpaccio d'éléphant

Largement inspiré de : https://docs.google.com/document/d/1Ls6pTmhY_LV8LwFiboUXoFXenXZl0qVZWPZ8J4uoqpI

Instructions

  1. Faire des équipes de 2 ou 3 personnes avec un PC par équipe
  2. Préparation : Chaque équipe rédige sur papier 10 à 20 histoires utilisateurs démontrable qu’ils vont devoir développer. Chaque histoire utilisateur doit être réalisable en moins de 7 minutes.
  3. Discussion : Le facilitateur pilote les échanges entre les équipes qui présentent leurs histoires utilisateurs, souligne ce qui est acceptable ou non et peut demander aux équipes e découper plus finement.
  4. Développement : En 40 minutes, avec 5 sprints de 8 minutes, attention le chronomètre ne s’arrête pas. Chaque équipe fait une démonstration en fin de sprint (aux autres équipes ou au facilitateur).
  5. Debrief

Produit

Nous allons construire une caisse enregistreuse capable de nous sortir un ticket de caisse.