2

Click here to load reader

Programación Lenguaje C - El Juego de los Barquitos

  • Upload
    dibutec

  • View
    3.567

  • Download
    0

Embed Size (px)

DESCRIPTION

Enunciado del Juego de los Barquitos para realizar en lenguaje C.

Citation preview

Page 1: Programación Lenguaje C - El Juego de los Barquitos

Ejercicio de C: El Juego de los Barquitos Diseñar e implementar en lenguaje C, el juego de los barquitos, teniendo en cuenta las siguientes consideraciones: Introducción: Es un juego para dos jugadores, cada uno tendrá un tablero de juego de 10x10 casillas, en el que deben situar los siguientes elementos:

o 1 barco de 5 posiciones o 1 barco de 4 posiciones o 2 barcos de 3 posiciones o 2 barcos de 2 posiciones o 2 barcos de 1 posición

El juego consiste en intentar acertar en qué posiciones ha colocado el jugador contrario todos sus barcos. Para ello los jugadores realizarán disparos alternativos hasta conseguir el objetivo final del juego. Consideraciones: � El juego empieza mostrando el tablero del jugador1 y a continuación pidiendo la

introducción de los barcos del jugador. En la introducción tendrá que controlarse:

1. Que los valores de las casillas introducidas son válidos, es decir, están entre 1 y 10. 2. Que la posición no está ocupada por otro barco. 3. Las posiciones de un barco deben ser contiguas. Los barcos sólo pueden estar en posición

horizontal o vertical. 4. Los barcos tienen que estar separados unos de otros por al menos una casilla. 5. Cada vez que se introduce una posición de un barco de forma correcta, debe borrase la pantalla y

volver a dibujar el tablero, mostrando la situación de los barcos introducidos hasta el momento.

1 2 3 4 5 6 7 8 9 10

1

2 B B B B B

3 B

4 B

5 B

6 B

7

8

9

10

Jugador 1: Introduce 1ª posición del barco de 3: Horizontal?: 3 Vertical?: 4

La letra B permitirá ver dónde se han introducido los barcos. En este caso, se han introducido ya, los barcos de 5 y 4 posiciones y se está solicitando que se introduzca la primera casilla del barco de 3.

� Se repite el proceso para el jugador 2 y comienza el juego!! � La dinámica general del juego consiste en ir alternando los disparos de ambos jugadores

hasta que uno de ellos consiga acertar todas las posiciones del otro. � Cada vez que un jugador dispara, debemos tener en cuenta:

1. Antes de introducir las coordenadas de disparo, debe borrarse la pantalla y mostrar el tablero del

jugador contrario, indicando las casillas a las que ya hemos disparado. 2. Hay que controlar que los valores de las casillas introducidas son válidos, es decir, están entre 1 y

10. 3. Si al disparar acertamos sobre un barco, dirá “TOCADO!” o “HUNDIDO!”. Si por el contrario

fallamos indicará “AGUA!”

Page 2: Programación Lenguaje C - El Juego de los Barquitos

Tablero Jugador 2

1 2 3 4 5 6 7 8 9 10

1 A

2 A

3 A A T T A

4 H A A

5 H

6 H A

7 H A A A

8

9 A A

10

Jugador 1: Introduce coordenadas de tiro: Horizontal?: 1 Vertical?: 1

Simbología: A- Indica “Agua”, se ha disparado, pero no hay un barco en esa posición. T- indica “Tocado”, se ha acertado la posición de un barco. H- Indica “Hundido”, se ha hundido un barco

Mejoras: � Situar los barcos introduciendo sólo una coordenada y la dirección en la que se colocará,

es decir a la izquierda, derecha, arriba o abajo. � Mostrar una pantalla inicial de Ayuda/Introducción del juego, en la que se explique el

objetivo y reglas del juego. � Se tendrán en cuanta la limpieza del trabajo y la presentación de cara al usuario del juego. � Cuando el juego termina, preguntar si se desea volver a jugar. � Poder interrumpir el juego durante la partida y no tener que esperar al final para salir del

programa. NOTAS: o Podemos utilizar funciones para no tener que repetir código:

/*Ejemplo de funciones*/ #include <stdio.h> main() { printf(“Este mensaje lo muestra la función main\n”); MiFuncion(); } /*Defino la función*/ MiFuncion() { printf(“Este otro mensaje lo imprime la función MiFuncion\n”); }

También puedo usar funciones a las que se les pasan datos (Parámetros): /*Ejemplo de funciones con parámetros*/ #include <stdio.h> main() { Int num; printf(“Introduce un número\n”); scanf(“%d”, &num); cuadrado(num); } /*Defino la función cuadrado*/ cuadrado(int x) { printf(“El cuadrado de %d es %d\n”, x, x*x); }