Skip to content

marinitx/bowling

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

14 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Bowling Game

Simulación de una bolera hecha en C para el reto de Izertis.

Para ejecutar el programa:

  1. Introduce en la terminal "make" para compilar. Aparecerá una animación para comenzar.

  2. make

  3. Introduce "./play" para ejecutar el juego.

  4. ./play

  5. Responde a las preguntas del juego para adaptarlo a tus preferencias.

  6. Captura de pantalla 2024-02-23 a las 13 44 40

Reglas

Regla básicas

  • Se tira 10 rondas de 2 tiradas máximo cada ronda.
  • Al principio de cada ronda se colocan los 10 bolos.
  • Cada bolo tirado suma un punto.

image

Tests

Se recomienda usar TDD y empezar escribiendo uno a uno los tests.
La entrada al “algoritmo” serán el nº de bolos tirados y la salida la puntuación.
Tests básicos:

  • Tirar siempre un bolo (10 rondas x 2 tiradas = 20 tiradas => 20 bolos) image

Este juego lo escribiremos por abreviar como "20x1" (<nº veces>x<nº bolos tirados>)
20x1 -> 20 puntos

  • Tirar siempre 0 bolos:
    20x0 -> 0 puntos

  • Tirar 10 veces 3 y el resto 0:
    10x3 & 10x0 -> 30 puntos

Semipleno "/"

Si entre las 2 tiradas de la ronda tira los 10 bolos es un semipleno.
Esto implica que te regalan como EXTRA para esta ronda tantos puntos como bolos tires en la siguiente TIRADA.
Tests:

  • Semipleno suma la siguiente tirada:
    5 & 5 & 3 & 17x0 -> 16 puntos
  • No semipleno si los 10 puntos no son en la misma ronda:
    0 & 5 & 5 & 3 & 16x0 -> 13 puntos
  • Semipleno SOLO suma la siguiente tirada: 5 & 5 & 3 & 17x1 -> 33 puntos

Pleno

Si en la primera tirada de una ronda tira los 10 bolos es un pleno. No tirará la segunda tirada de la ronda.
Esto implica que te regalan como EXTRA para esta ronda tantos puntos como bolos tires en la siguientes 2 TIRADAS.
Tests:

  • Pleno suma los 2 siguientes tiradas:
    10 & 3 & 2 & 16x0 -> 20 puntos
  • Si los 10 son en segunda tirada es semipleno:
    0 & 10 & 3 & 2 & 16x0 -> 18 puntos
  • Pleno SOLO suma las 2 siguientes tiradas:
    10 & 3 & 2 & 16x1 -> 36 puntos

Regla del final

La décima ronda puede tener más tiradas para saber los puntos extra de plenos o semiplenos.
Si haces un pleno tendrás dos lanzamientos más.
Si haces un semipleno tendrás un lanzamiento más.
Los bolos tirados en las rondas extra solo valen como puntos extra del pleno o semipleno no como tirada propia.
Tests:

  • Pleno en última ronda da 2 tiradas extra:
    18x0 & 10 & 1 & 1 -> 12 puntos
  • Semipleno en última ronda da 1 tirada extra:
    18x0 & 5 & 5 & 1 -> 11 puntos
  • Todas las tiradas perfectas de 10 bolos (las 10 del juego más las 2 extra) consiguiendo la puntuación máxima: 12x10 -> 300

image

About

A bowling simulation in C

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published