EDITADO a petición del cansino :P
EDITADO a petición del cansino :P
en el atributo pos que contiene las casillas que ocupa el buque
EDITADO a petición del cansino :P
Se encargará de controlar el funcionamiento del juego y contiene el método main.
El programa recibirá dos parámetros y se ejecutará de la siguiente manera:
java HundirFlota numFilas numColumnas
donde el primer argumento numFilas es el número de filas que tendrá el tablero y el segundo argumento numColumnas será su número de columnas.
A continuación se muestra el esqueleto con comentarios del método main.
import java.util.Scanner;
import java.util.Scanner;
public class HundirFlota{
public static void main(String args[]){
if(args.length==2){
try{
filas = Integer.parseInt(args[0]);
columnas = Integer.parseInt(args[1]);
}
catch( NumberformatException ex){
System.out.println("Los argumentos deben ser numericos");
}
}
else
System.out.println("el numero de argumentos es incorrecto. Por defecto los tableros seran 8x8");
Scanner input = new Scanner(System.in);
Tablero tableroJugador = new Tablero(filas,columnas,4);
Tablero tableroMaquina = new Tablero(filas,columnas,4);
tableroJugador.posicionarBuquesAzar();
tableroMaquina.posicionarBuquesAzar();
//nos ponemos a jugar
//decir turno 0 a la maquina 1 el jugador
do {
switch(turno){
case 0:
System.out.println("Tablero del Jugador");
tableroJugador.mostrarTablero();
do{
System.out.println("El turno de la maquina");
//fila aleatoria
//columna aleatoria
System.out.println("Intentando "+ fila + col);
bombardeado = tableroJugador.bombardearCasilla(fila,col);
tableroJugador.mostrarTablero();
}
while(bombardeado);
turno = 1;
break;
case 1:
System.out.println("Tablero de la Maquina");
tableroMaquina.mostrarTablero();
do{
System.out.println("El turno del Jugador");
System.out.println("Introduce una fila entre la A y " +));
String letra = input.next();
System.out.println("Introduce una columna entre 1 y "+);
bombardeado = tableroMaquina.bombardearCasilla(fila,col);
tableroMaquina.mostrarTablero();
}
while(bombardeado);
turno =0;
}
//comprobar si ha ganado el jugador
//comprobar si ha ganado la maquina
} while(!ganadorMaquina && !ganadoeJugador );
//Comprueba si existe un ganador y de ser asi muestra un mensaje por pantalla.
if (ganadorMaquina)
System.out.println("Ha ganado la maquina");
else
System.out.println("Ha ganado el jugador");
}
}
}
}
}
}
}
ShinMegami escribió:Hola, hace tiempo deje de lado la programacion de java, y hoy he vuelto a instalarme el jcreator y todo para programar en modo grafico, pero no me acuerdo de casi nada... se que se ponian labels y dentro de ellos cosas y habian los layouts pero tampoco me acuerdo de mucho, alguien podria ponerme algun manual o algo asi para hacer un poco de refresco?
saludos
pablo8_ escribió:Hola muy buenas, vereis soy estudiante de programacion en java y tengo un ejercicio que no consigo hacerlo, creo que es facil, pero yo empece a ir a clase (por motivos de salud) cuando empezaron con strings, pero en el ejercicio este no se pueden usar. Si alguien fuese tan amable de indicarme como hacerlo, estoy bastante perdido. Gracias de antemano.
Se desea justificar las líneas de un archivo de texto. Las justificaciones pueden ser de tres tipos izquierda, centrada y derecha. Tras el proceso de justificación las palabras se encontrarán separadas por un solo espacio en blanco. El nombre del archivo de texto a justificar se indicará por teclado. Con un menú simple el programa pedirá qué tipo de justificación se desea. El programa produce dos salidas: una por la pantalla y otra para archivo con el mismo nombre y el prefijo 'justificado', en ambos casos con el texto justificado segundo la opción elegida por el menú.
PS24EVeR escribió:Hola expertos, vengo a pediros consejo. Actualmente me encuentro estudiando 2º de Administración de Sistemas Informáticos (ciclo de grado superior) y en poco menos de dos meses termino ya y comienzo las practicas y resulta que voy a tener que ponerme con Java. Tengo casi seguro una empresa donde trabajare con Oracle (eso si lo estoy viendo este año), Java y otro lenguaje mas de programacion que no recuerdo el nombre pero similar a C.
La cosa es que tengo que ponerme con Java porque no he visto casi nada, de echo de OOP apenas hemos visto nada, un poco en PHP y lo que es mas o menos lo entiendo, pero necesito ponerme con Java desde ya. ¿Que manual o libro me recomendáis?. Tengo algunos como como "Aprenda Java como si estuviera en primero" y he visto los de la primera pagina, pero me gustaría alguna recomendación para alguien que lo va a ver por primera vez como quien dice.
No es que no sepa programacion, conozco C, Visual Basic, PHP, JavaScript, PL/SQL y tambien Shell Script de Linux. Me manejo bien con la programacion, pero el tiempo aprieta y tampoco puedo ponerme solo y exclusivamente con Java, de ahí que quiera algo para tener una base.
Gracias.
Un saludo.
PS24EVeR escribió:De objetos muy poco, en PHP un tema que había de eso pero por encima. Si que trabajamos con alguna clase como mysqli para trabajar con las bases de datos, pero programacion orientada a objetos nada. Me tengo que acostumbrar a eso.
El ingles no lo domino, mas o menos puedo entenderlo cuando busco algo y tal, pero para ponerme con un manual de 100 o 200 paginas, como que no, se me haría eterno de leer jeje
El otro lenguaje creo que era algo así como cesar. No me he acordado de preguntarle. Me dijo que era similar a C pero con objetos también. Así que voy a tener que ponerme con la programacion orientada a objetos a full.
¿Que usáis para programar?. Tengo Eclipse instalado del año pasado que íbamos a usar Java, pero no se si hay alguno mejor, con este estoy muy verde aun. Ayer empece a leerme un manual no muy amplio sobre Java aunque tiene ya tiempo (2006) y de momento bien porque son cosas que mas o menos controlo de otros lenguajes.
monoculero escribió:Hola buenos dias ompañeros.
Estoy buscando informacion para poder crear ficheros que cumplan la norma 19 a la hora de lanzar remesas. No encuentro nada por la red. Alguien que me pueda indicar un poco el camino a seguir?
Gracias
Tensing escribió:Hola a todos!
veréis estoy haciendo como proyecto de clase un programa que hace la gestión de una biblioteca (por un lado tenemos usuarios, por otros libros y por ultimo la relacion entre ellos que son los alquileres / devoluciones).
El caso es que la parte de devoluciones me está trayendo bastantes quebraderos porque no encuentro manera de comparar dos fechas, la fecha de alquiler y la fecha de devolución, solo me interesa comparar los dias de por medio (está programado de tal forma que cuando pasan 5 dias de la fecha de alquiler , la cuenta del usuario se bloquee automáticamente) , alguien me puede ayudar??
String texto="Hola Paco"
String[] textos={"Hola","Paco"}
Finalshare escribió:Una duda que no encuentro por ningún sitio, se puede hacer referencia a un carácter de una cadena de texto sin necesidad de pasarlo a un array de chars?
Me refiero si yo tengo algo como:String texto="Hola Paco"
Como puedo hacer referencia a la P de Paco por ejemplo
Y otra duda seria como hacerlo en un array de string
Si yo tengo por ejemplo_String[] textos={"Hola","Paco"}
Como podria hacer referencia a la c de paco todo esto sin pasarlo a un array de chars.
thanatos_xbox escribió:Buenas, he visto la recomendacion en cuanto a libros comerciales pero el post no ha sido modificado desde el año 2009... asi que me preguntaba cual es la guia mas actualizada para aprender java desde 0, que no tenga un precio desorbitado por supuesto.
dysoco escribió:Buenas.
Despues de aprender python y un poco de C++, estoy aprendiendo un poco de Java.
El caso es que no me gusta utilizar IDEs como Eclipse, en Windows usaba Notepad++, y luego compilaba por cmd con "javac".
Estoy buscando un editor similar para Linux, he probado Kate, pero no es lo que busco, quien haya usado Notepad++ sabe de lo que hablo.
O mejor un IDE liviano como DevCpp, es decir, sencillo de usar, porque en Eclipse me pierdo.
Por cierto, ayer me compre este libro de Visual J++ por 1 euro:
Es del 97, me sirve ?
Por cierto, que libro de Java en español me recomendais ? piensa en java ? la biblia de java ? el de deitel & deitel ?
Endher escribió:Como IDE liviano, yo uso Geany y me gusta mucho...
Lo primero, si este no es su sitio lo siento, y que algun mod me diga donde iria o lo mueva, ya que no estaba seguro de donde ponerlo.
El problema es el siguiente, me he descargado la aplicacion de Tuenti, para java, y lo he instalado en mi movil.
La aplicacion es esta (en el spoiler):
Bien, al instalarlo y ejecutarlo sin problema, pero, sigiento estas imagenes (en el Spoiler):
Asi es como se me ve ami, y asi:
Como se deverian ver, se ve que las imagenes se salen, las barras de arriba y abajo son muy grandes, y me ocupan la mitad de la pantalla y esas cosas, y he aqui mi pregunta, ¿Se puede editar para redimensionarlas a un tamaño que no me de problemas? ¿Decopilando el jar editar algo y volviendolo a copilar?
A ver si alguien me puede ayudar... Mi resolucion del movil es 176x220
Gracias y Adios
PS24EVeR escribió:Hombre, poner el código ya es dártelo todo en bandeja, complicate un poco que así es como se aprende. De Java no se mucho, pero hay funciones que te devuelven el numero de días del mes. Con esa función y un bucle del 1 al 12 puedes sacar los meses que tienen los mismos días (lo calculas antes del bucle y comparas). La fecha no se como la recibes, si es un objeto de tipo fecha podrás sacar el mes sin problemas.
amuchamu escribió:¿Te dan una fecha (día, mes y año) y tienes que decir qué meses del mismo año tienen el mismo número de días? Para eso no te hace falta ni un for, con un switch es suficiente, ni siquiera te hace falta sacar si el año es bisiesto. Si el mes tiene 31 días escribes los meses que tienen 31 días (enero, marzo, etc), si es febrero no muestras nada y en otro caso muestras los meses que tienen 30 días.
import java.util.Calendar;
import java.util.Date;
import java.util.GregorianCalendar;
public class FechaActual {
public static void main(String[] args) {
System.out.println (new Date());
Calendar c = new GregorianCalendar();
String dia, mes, anyo;
dia = Integer.toString(c.get(Calendar.DATE));
mes = Integer.toString(c.get(Calendar.MONTH)+1);
anyo = Integer.toString(c.get(Calendar.YEAR));
System.out.println (dia + " /" + mes +" / " + anyo);
}
}