Hundir la flota

Dificultad: (1/4) (Fácil)1000 Visitas: 1
Fecha: 2009-02-06 17:29:14

Uno de mis primeros programas hecho en Java, fue un ejercicio para practicar herencia de clases y asi tambien desenvolvernos un poco con el lenguaje. Os lo dejo aqui para descarga, es muy simple y muy mejorable, pero, me da mucha pena tocarlo :P.


El programa se divide en varias clases:

Y por último la clase Main, que contiene la lógica del juego:
Codigo fuente @JAVA
  1. public class Main {
  2.  
  3.  
  4. public Main() {
  5. }
  6. public static void main(String[] args) {
  7. Tablero t = new Tablero();
  8. Disparo d;
  9. String s = new String();
  10. Marcador m = new Marcador();
  11. t.generaBarcos();
  12. boolean sw=false;
  13. do{
  14. do {
  15.  
  16. // leer disparo
  17. System.out.println("Introduza una coordenada (X-Y): ");
  18. s = Lector.leerString();
  19.  
  20. // Compruebo el disparo si es correcto
  21. if (s.length() == 3) {
  22. if ((s.charAt(0) >= 'a') && (s.charAt(0) <= 'h')) {
  23. if (s.charAt(1) == '-') {
  24. if ((Integer.parseInt(s.substring(2)) >= 1) && (Integer.parseInt(s.substring(2)) <= 8))
  25. sw = false;
  26. else {
  27. System.out.println("En la ultma posicion deberia de haber un numero entre 1-8");
  28. sw = true;
  29. }
  30. } else {
  31. System.out.println("En la posicion 2 deberia de haber un guion -");
  32. sw = true;
  33. }
  34. } else {
  35. System.out.println("En la posicion 1 deberia de haber una letra entre A-H");
  36. sw = true;
  37. }
  38. } else {
  39. System.out.println("La cadena deberia de ocupar 3 caracteres");
  40. sw = true;
  41. }
  42. } while (sw == true);
  43.  
  44. // Instancio el disparo
  45. d = new Disparo(s.charAt(0),Integer.parseInt(s.substring(2)));
  46. if (t.compruebaSiEsta(d)){
  47. t.añadeAcierto(d);
  48. m.aumentaIntento();
  49. m.almacenaDisparo(d);
  50. m.aumentaBarcoHundido();
  51. }
  52. else{
  53. t.añadeFallo(d);
  54. m.aumentaIntento();
  55. m.almacenaDisparo(d);
  56. }
  57. t.muestrate();
  58. m.muestrate();
  59. // El programa se repite mientras que el usuario no gane
  60. }while(t.ganar()==false);
  61. }
  62.  
  63. }
Programado en PaNa-S.com

Como veis el programa es muy simple. Instanciamos un tablero, un marcador y llamamos al metodo que pone los barcos sobre el tablero. Luego pido que el usuario mande un disparo mediante coordenadas, lo valido, y instancio un objeto de tipo disparo. Luego ya es solo comprobar si le ha dado al barco o no. Todo esto esta dentro de un bucle hasta que el usuario encuentre todos los barcos.

Os podeis bajar el proyecto haciendo clic aquí

Hundir la flota está en la categoría: Java

Bookmark and Share
Puntuado 3.63/5 (72.57%) (35 Votos)
Escribe un comentario

No hay comentarios

Escribe tu comentario

Imagen Anti-Spam

Últimos tutoriales

Últimos scripts

Enlaces

Nube de tags

  xhtml     css     php     cperdidas     moviles     cbrutonoti     mac     modding     herramientas     htc diamond     seo     windows     messenger     bank4droid     android     jtuenti     java     htc magic     overclocking  

El contenido de esta página requiere una versión más reciente de Adobe Flash Player.

Obtener Adobe Flash Player



Generado desde cero con PHP y MySQL. Valid XHTML/CSS/RSS   
Technology Top Blogs DigNow.net Technology blogs & blog posts

Quantcast