Arrays
Arrays
un mismo tipo. El tamaño de los arrays se declara en un primer momento y no puede cambiar
en tiempo de ejecución como puede producirse en otros lenguajes. La declaración de un
array en Java y su inicialización se realiza de la siguiente manera:
1)
public class array1 {
}
}
}
1.1)
public class array1 {
}
}
2)
matriz1[0]=1;
matriz1[1]=2;
matriz1[2]=3;
matriz1[3]=4;
matriz1[4]=5;
3)
4)
import java.util.Scanner;
public class array4 {
5)
6)
import java.util.Random;
Ejercicios ARRAY 7
import java.util.Scanner;
t[i] = leer.nextInt();
}
System.out.println("Los números son:");
for (int i = 0; i < 7; i++) {
System.out.println(t[i]);
}
}
}
import java.util.Scanner;
matriz[i] = leer.nextInt();
}
System.out.println("Los números son:");
for (int i = 6; i >= 0; i--) {
System.out.println(matriz[i]);
}
}
}
EJERCICIO 3 ARRAYS
import java.util.Scanner;
switch(selec){
case 1:
for (String toda:matriz) {
System.out.println(toda);
}
break;
case 2:
System.out.println("¿QUE NUMERO DE CLIENTE QUIERES
IMPRIMIR?");
int selec2;
selec2=leer.nextInt();
System.out.println(matriz[selec2-1]);
break;
case 3:
for(int j=0;j<matriz.length;j++) {
for(int k=0;k<matrizbase.length;k++) {
boolean sino =
matriz[j].equalsIgnoreCase(matrizbase[k]);
if (sino==true){
System.out.println("el cliente "+matriz[j]+ "
ya existe");
}
}
break;
case 4:break;
} leer.close();
}
}
import java.util.Scanner;
switch(selec){
case 1:
for (String toda:matriz) {
System.out.println(toda);
}
break;
case 2:
System.out.println("¿QUE NUMERO DE CLIENTE QUIERES
IMPRIMIR?");
int selec2;
selec2=leer.nextInt();
System.out.println(matriz[selec2-1]);
break;
case 3:
for(int j=0;j<matriz.length;j++) {
for(int k=0;k<matrizbase.length;k++) {
boolean sino =
matriz[j].equalsIgnoreCase(matrizbase[k]);
if (sino==true){
System.out.println("el cliente "+matriz[j]+ "
ya existe");
}
}
break;
case 4:break;
} leer.close();
}
}
Con este programa terminamos los ejercicios de estructuras y matrices. El fin
de este ejercicio es poner en práctica todo lo aprendido hasta ahora y
desarrollar la destreza de programador que llevamos dentro.
En Java hay clases con métodos para casi todo, pero a veces tenemos que
construir las nuestras propias para una tarea determinada. Por todo esto
vamos a hacer un mini-juego sobre la consola que nos suponga un desafío
con estas características.
Desarrollo:
En nuestro caso, vamos a hacer un hundir los barcos sencillo.
El programa será totalmente libre pero como mínimo deberá contener los puntos siguientes.
1 2 3 4
1 0 0 0 0
2 0 0 0 0
3 0 0 0 0
4 0 0 0 0
1-START
2-SALIR
- Cuando seleccionemos START nos debe de pedir las coordenadas que pueden ser:
DE LA (1,1) A LA (4,4)
Véase el ejemplo.
***************
* TOCADO!!! *
***************
lanza la bomba!, dame las coordenadas
primera!
- Cuando hemos tocado un barco, el siguiente punto sabemos que queda alrededor del
punto que hemos tocado. Una vez acertado el segundo punto nos debe aparecer:
***************
* TOCADO!!! *
***************
***************
* Y HUNDIDO! *
***************
- Si volvemos a lanzar una bomba en un punto ya impactado nos debe de decir que es agua.
***************
* TOCADO!!! *
***************
***************
* Y HUNDIDO! *
***************
1 2 3 4
1 x x 0 x
2 0 0 0 x
3 0 0 0 0
4 0 0 0 0
public static void main(String[] args) {// tenemos que meter los barcos
// TODO Auto-generated method stub
int clave;
int contador=0;
int posinibar1; //posicion inicial barco 1
int posinibar2; //posicion inicial barco 2
int [][] matriz = new int [4][4]; //matriz de barcos
char [][] matriz2=new char [4][4]; // matriz de representacion x para barco
Random aleatorio=new Random();
Scanner leer=new Scanner (System.in);
int suma=0,primera=0,segunda=0,suma2=0;
for(int ñ=0;ñ<4;ñ++) {
for(int o=0;o<4;o++) {
matriz2[ñ][o]='0';
}
}
switch (clave) {
case 1:
do {
for(int ñ=0;ñ<4;ñ++) {
for(int o=0;o<4;o++) {
matriz[ñ][o]=0;
suma=0;
}
}
posinibar1=aleatorio.nextInt(4);
posinibar2=aleatorio.nextInt(4);
}
for(int j=0;j<2;j++) {
matriz[j][posinibar2]=2; //pone a 2 las posiciones del barco
vertical
}
for(int k=0;k<4;k++) {
for(int l=0;l<4;l++) {
suma=suma+matriz[k][l];
}
}
} while (suma!=6);
do {
System.out.println("lanza la bomba!, dame las coordenadas");
System.out.print("primera!");
primera=leer.nextInt();System.out.print("segunda!"); segunda=leer.nextInt();
if(matriz[primera-1][segunda-1]==1||matriz[primera-1][segunda-1]==2) {
System.out.println("");
System.out.println("\t***************");
System.out.println("\t* TOCADO!!! *");
System.out.println("\t***************");
matriz[primera-1][segunda-1]=3;
contador++;
if(contador==2||contador==4) {
System.out.println("\t***************");
System.out.println("\t* Y HUNDIDO! *");
System.out.println("\t***************");
System.out.println("");
}
else {System.out.print(" AGUA!!");}
suma2=suma2+matriz[primera-1][segunda-1];
}while(suma2!=12);
for(int m=0;m<4;m++) {
for(int n=0;n<4;n++) {
if(matriz[m][n]==1) {
matriz2[m][n]='x';
}
}
}
System.out.println("");
System.out.println("Este es el tablero con tus barcos hundidos");
System.out.println("");
System.out.println("\t 1 2 3 4 ");
System.out.println("\t1 "+matriz2[0][0]+" "+matriz2[0][1]+" "+matriz2[0][2]+"
"+matriz2[0][3]);
System.out.println("\t2 "+matriz2[1][0]+" "+matriz2[1][1]+" "+matriz2[1][2]+"
"+matriz2[1][3]);
System.out.println("\t3 "+matriz2[2][0]+" "+matriz2[2][1]+" "+matriz2[2][2]+"
"+matriz2[2][3]);
System.out.println("\t4 "+matriz2[3][0]+" "+matriz2[3][1]+" "+matriz2[3][2]+"
"+matriz2[3][3]);
break;
case 2:
break;
default:
System.out.println("error, no existe eleccion");
}
}
}
Xº) ejercicio propio, un ejercicio por alumno usando todas las estructuras
Xº) ejercicios, por alumno de la pagina 160, métodos String.
import java.util.Scanner;
import java.util.Arrays;
System.out.println("");
System.out.println("\n");
System.out.println("");
System.out.println("\n");
System.out.println("\n");
// G clonar un array
int[] array_clone = array3.clone();
System.out.println("el clone es " +Arrays.toString(array3));
}
}
Ejercicio 1 metodos arrays