Java - Ejercicios resueltos de array 01

   
Vista:

Ejercicios resueltos de array 01

Publicado por burlon (14 intervenciones) el 20/03/2015 10:31:47
Escribir un programa que rellene un array unidimensional de enteros ALEATORIOS y luego lo muestre por pantalla. El usuario elegirá la longitud del array por lo que controlaremos que nos introduzca un entero (mediante excepciones) y que además la dimensión esté comprendida entre 1 y 10.

public class EjercicioObligatorios01 {

/**
* @param args the command line arguments
*/
public static int solicitarLonguitud(){

int longuitud = 0;

Scanner teclado = new Scanner(System.in);

do {

System.out.println("Cuantas posiciones va a tener la array: ");

try {

longuitud = teclado.nextInt();

} catch (Exception e) {

System.err.println(e);
System.err.println("Debe ser un numero entero ");

}

finally{

teclado.nextLine();
}

if (longuitud < 1 || longuitud > 10) {

System.err.println("La longuitud del vector debe ser mayor que 0 y menor que 10 ");

}

} while (longuitud < 1 || longuitud > 10);


return longuitud;
}

public static void rellenarArray(int array[]){

System.out.println("Vamos a rellenar la array de " + array.length + " posiciones");

int aleatorio;

for (int i = 0; i < array.length; i++) {

aleatorio = (int) (Math.random() *10) + 1;

array[i] = aleatorio;

}
}

public static void mostrarArray(int array[]){

System.out.println("Vamos a mostar la Array");

for (int i = 0; i < array.length; i++) {

System.out.println("Para la posicion " + i + " El valor es " + array[i] );

}

}

public static void main(String[] args) {
// TODO code application logic here

int[] array = new int [solicitarLonguitud()];
rellenarArray(array);
mostrarArray(array);


}

}

------------------------------------------------------------------------------------------------
Escribir un programa que rellene un array unidimensional con los 80 primeros números primos y luego los visualice. (Utiliza al menos 2 métodos, uno para rellenar y otro para visualizar.)

public class NumerosPrimos {
public static boolean esPrimo(int num) {
boolean primo = true;

for (int i = 2; i < num; i++) {

if ((num % i) == 0) {

primo = false;

}
}
return primo;
}
public static void rellenarArray(int [] array) {
int numero =1;
Scanner teclado = new Scanner(System.in);

System.out.println("Se va a rellenar la array con numeros primos");

for (int i = 0; i < array.length; i++) {
do {


if (esPrimo(numero) == true) {

array[i] = numero;
}
numero++;

} while (esPrimo(numero) == false);
}

}

public static void mostrarArray(int [] array) {

for (int i = 0; i < array.length; i++) {

System.out.println("En la posicion " + i + " El numero primo es: " + array[i] );

}
}

public static void main(String[] args) {

int [] array = new int[80];
rellenarArray(array);
mostrarArray(array);
}

}
-------------------------------------------------------------------------------------------

Realizar un programa que le pida al usuario un número entero de 4 cifras y le devuelva el mismo número escrito al revés. (Ejemplo: El número 3518 devolvería 8153).

public class EjercicioVoluntario09 {

/**
* @param args the command line arguments
*/

public static int solicitarNumero(){
int numero;
Scanner teclado = new Scanner(System.in);
System.out.println("Introduce un Numero de 4 cifras");

numero = teclado.nextInt();

return numero;
}

public static void rellenarArray(int array[]){

int valores = solicitarNumero();

array[3] = valores / 1000;
valores = valores % 1000;

array[2] = valores / 100;
valores = valores % 100;

array[1] = valores / 10;
valores = valores % 10;

array[0] = valores / 1;
valores = valores % 1;

}

public static void mostrarArray(int array[]){

for (int i = 0; i < array.length; i++) {
System.out.print(array[i]);
}
System.out.println("");
}


public static void main(String[] args) {
// TODO code application logic here

int[] array = new int[4];
rellenarArray(array);
mostrarArray(array);

}

}
----------------------------------------------------------------------------------------

: Escribe un programa que contenga un método que acepte como parámetro un vector de 8 números enteros mayores
que 0, pudiendo contener elementos duplicados. Este método debe sustituir cada valor repetido por 0. Para terminar, realiza un método muestre el array modificado.
Ejemplo: 2 7 8 4 5 8 7 1 2 0 0 4 5 0 0 1

public class EjercicioObligatorio11 {

/**
* @param args the command line arguments
*/

public static void metodoSustituirPor0(int array[]){

Scanner teclado = new Scanner(System.in);
int numero;

System.out.println("Vamos a rellenar la Array de 8 numeros");

for (int i = 0; i < array.length; i++) {


System.out.print(" [" + i + "] ---> ");
numero = array[i] = teclado.nextInt();

if (numero<=0) {

System.err.println("Número tiene que ser Mayor que 0");
i--;

}

}

System.out.println("El numero es ---> ");

for (int l = 0; l < array.length; l++) {

System.out.print(array[l]);

}

for (int j = 0; j < array.length; j++) {

for (int k = 0; k < array.length; k++) {

if ((j!=k) && (array[j] == array[k])) {

array[j] = 0;
array[k] = 0;

}

}

}
}
public static void mostrarArray(int array[]){

System.out.println();
System.out.println("El numero quedaria ---> ");

for (int x = 0; x < array.length; x++) {

System.out.print(array[x]);

}
System.out.println();
}

public static void main(String[] args) {
// TODO code application logic here

int[] array = new int[8];

metodoSustituirPor0(array);
mostrarArray(array);
}

}
-------------------------------------------------------------------------------------------------------

Diseña un programa que almacene las temperaturas medias de un mes que introduzca un usuario. Para hacerlo más
sencillo vamos a suponer que el mes tiene 28 días y está formado por 4 semanas de 7 días. Mostrar un menú que nos permita:
1. Rellenar las temperaturas.
2. Mostrar las temperaturas.
3. Visualizar la temperatura media del mes.
4. Día o días más calurosos del mes. Ejemplo: El día o días más calurosos fueron:
1. El Jueves de la Semana 3 con 40 grados.
2. El Sábado de la Semana 4 con 40 grados.

public class EjercicioObligatorio12 {

/**
* @param args the command line arguments
*/

public static void rellenarMes(int semana[] , String dias[], int temperatura[]) {

Scanner teclado = new Scanner(System.in);

int t;

dias[0] = "Lunes";
dias[1] = "Martes";
dias[2] = "Miercoles";
dias[3] = "jueves";
dias[4] = "Viernes";
dias[5] = "Sabado";
dias[6] = "Domingo";

System.out.println(" Vamos a rellenar las temperaturas ");

for (int s = 0; s < semana.length; s++) {

for (int d = 0; d < dias.length; d++) {

System.out.println("Que temperatura hizo el " + dias[d] + " de la Semana " + semana[s] + " : " );
temperatura[d] = teclado.nextInt();
}

}
}

public static void temperaturaMedia(int temperatuta[]){

double media = 0.0;

for (int i=0; i < temperatuta.length; i++) {

media = media + temperatuta[i];

}
media = media / temperatuta.length;

System.out.println("La Temperatura media es " + media + " grados");
}

public static void diaMasCaluroso(int semana[] , String dias[], int temperatura[]) {
float mayor;
int se;
String di;

mayor=temperatura[0];
di = dias[0];
se = semana[0];



for (int s = 0; s < semana.length; s++) {

for (int d = 0; d < dias.length; d++) {

if (temperatura[d] > mayor) {

mayor = temperatura[d];
di = dias[d];
se = semana[s];
}

}
}

System.out.println(" El " + di + " de la semana " + se + " es el mas caluroso: " + mayor);
}

public static void mostrarMes(int semana[] , String dias[], int temperatura[] ){


for (int s = 0; s < semana.length; s++) {

for (int d = 0; d < dias.length; d++) {

System.out.println(" para el " + dias[d] + " de la semana " + semana[s] + " La temperatura es de: " + temperatura[d] + " grados");

}

}

}
public static void main(String[] args) {
// TODO code application logic here
String[] dias = new String[7]; //7 dias
int[] semana = new int[4]; //4semanas
int[] temperatura = new int[28];

rellenarMes(semana, dias, temperatura);
mostrarMes(semana, dias, temperatura);
temperaturaMedia(temperatura);
diaMasCaluroso(semana, dias, temperatura);
}

}
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder