Ejercicios del 1 al 6 del cap 4 bloque 2

This commit is contained in:
2024-10-18 14:03:52 +02:00
parent f830509366
commit 6c09baef4d
7 changed files with 186 additions and 0 deletions

View File

@@ -0,0 +1,20 @@
package capitulo04.bloque02;
import static capitulo04.utils.Utils.*;
public class Ejercicio01 {
public static void main(String[] args) {
int[] nums150 = crearArrayNumsAleatorios(150,-100,100);
mostrarArrayNums(nums150);
cambiaSignoEnValores(nums150);
System.out.println();
mostrarArrayNums(nums150);
}
public static void cambiaSignoEnValores(int array[]) {
for (int i = 0; i < array.length; i++) {
if ((array[i] % 2) == 0) array[i] = -array[i];
}
}
}

View File

@@ -0,0 +1,33 @@
package capitulo04.bloque02;
import static capitulo04.utils.Utils.crearArrayNumsAleatorios;
import static capitulo04.utils.Utils.mostrarArrayNums;
public class Ejercicio02 {
public static void main(String[] args) {
int[] array1 = crearArrayNumsAleatorios(150, 0, 100);
int[] array2 = crearArrayNumsAleatorios(150, 0, 100);
int[] array3 = creaTercerArray(array1, array2);
System.out.print("Array 1: ");
mostrarArrayNums(array1);
System.out.print("\nArray 2: ");
mostrarArrayNums(array2);
System.out.print("\nArray 3: ");
mostrarArrayNums(array3);
}
public static int[] creaTercerArray(int a1[], int a2[]) {
int[] array3 = new int[150];
for (int i = 0; i < a1.length; i++) {
if ((i % 2) == 0) {
array3[i] = a2[i];
} else {
array3[i] = a1[i];
}
}
return array3;
}
}

View File

@@ -0,0 +1,24 @@
package capitulo04.bloque02;
import static capitulo04.utils.Utils.*;
public class Ejercicio03 {
public static void main(String[] args) {
int[] array1 = crearArrayNumsAleatorios(150, 0, 100);
int numMulti = solicitarIntScanner("Indique por qué número quiere multiplicar el Array");
System.out.print("Array Normal: ");
mostrarArrayNums(array1);
multiplicaValoresPorFactor(array1, numMulti);
System.out.print("\nArray Multiplicado: ");
mostrarArrayNums(array1);
}
public static void multiplicaValoresPorFactor (int a[], int factor) {
for (int i = 0; i < a.length; i++) {
a[i] *= factor;
}
}
}

View File

@@ -0,0 +1,23 @@
package capitulo04.bloque02;
import static capitulo04.utils.Utils.crearArrayNumsAleatorios;
import static capitulo04.utils.Utils.mostrarArrayNums;
public class Ejercicio04 {
public static void main(String[] args) {
int[] array = crearArrayNumsAleatorios(5, 0, 100);
mostrarArrayNums(array);
desplazaCiclicoDerecha(array);
System.out.println();
mostrarArrayNums(array);
}
public static void desplazaCiclicoDerecha(int a[]) {
int tempVar = 0;
for (int i = a.length - 1; i >= 0; i--) {
if (i == a.length - 1) tempVar = a[i];
a[i] = (i == 0) ? tempVar : a[i - 1];
}
}
}

View File

@@ -0,0 +1,25 @@
package capitulo04.bloque02;
import static capitulo04.utils.Utils.*;
public class Ejercicio05 {
public static void main(String[] args) {
int[] array = crearArrayNumsAleatorios(5, 0, 100);
int movimientos = solicitarIntScanner("Introduzca cuantas posiciones quiere mover a la derecha el array: ");
mostrarArrayNums(array);
desplazaCiclicoDerecha(array, movimientos);
System.out.println();
mostrarArrayNums(array);
}
public static void desplazaCiclicoDerecha(int a[], int posiciones) {
for (int i = 0; i < posiciones; i++) {
int tempVar = 0;
for (int j = a.length - 1; j >= 0; j--) {
if (j == a.length - 1) tempVar = a[j];
a[j] = (j == 0) ? tempVar : a[j - 1];
}
}
}
}

View File

@@ -0,0 +1,48 @@
package capitulo04.bloque02;
import static capitulo04.utils.Utils.*;
import static capitulo04.utils.Utils.mostrarArrayNums;
public class Ejercicio06 {
public static void main(String[] args) {
int[] array = crearArrayNumsAleatorios(5, 0, 100);
int direccion = solicitarIntScanner("Introduzca 0 si quiere mover el array a la izquierda o 1 para moverlo a la derecha.");
int movimientos = solicitarIntScanner("Introduzca cuantas posiciones quiere mover el array: ");
mostrarArrayNums(array);
desplazaCiclico(array, movimientos, direccion);
System.out.println();
mostrarArrayNums(array);
}
public static void desplazaCiclico(int a[], int posiciones, int direccion) {
switch (direccion) {
case 1:
desplazaCiclicoDerecha(a, posiciones);
break;
case 0:
desplazaCiclicoIzquierda(a, posiciones);
break;
}
}
public static void desplazaCiclicoIzquierda(int a[], int posiciones) {
for (int i = 0; i < posiciones; i++) {
int tempVar = 0;
for (int j = 0; j < a.length; j++) {
if (j == 0) tempVar = a[j];
a[j] = (j == (a.length - 1)) ? tempVar : a[j + 1];
}
}
}
public static void desplazaCiclicoDerecha(int a[], int posiciones) {
for (int i = 0; i < posiciones; i++) {
int tempVar = 0;
for (int j = a.length - 1; j >= 0; j--) {
if (j == a.length - 1) tempVar = a[j];
a[j] = (j == 0) ? tempVar : a[j - 1];
}
}
}
}

View File

@@ -11,4 +11,17 @@ public class Utils {
public static double generarNumAleatorio(int multiplicador) { public static double generarNumAleatorio(int multiplicador) {
return Math.random() * multiplicador; return Math.random() * multiplicador;
} }
public static void mostrarArrayNums(int array[]) {
for (int num : array) {
System.out.print(num + " ");
}
}
public static int[] crearArrayNumsAleatorios(int cantidadElementos, int numMinimo, int numMaximo) {
int[] nums = new int[cantidadElementos];
for (int i = 0; i < nums.length; i++) {
nums[i] = numMinimo + (int) Math.round(generarNumAleatorio((numMaximo - numMinimo)));
}
return nums;
}
} }