Ejercicios Capitulo 04 bloque08

This commit is contained in:
2024-11-11 00:02:35 +01:00
parent f6f66903f7
commit d1f6f5f3a4
4 changed files with 149 additions and 0 deletions

View File

@@ -0,0 +1,45 @@
package capitulo04.bloque08;
import static capitulo04.utils.Utils.crearArrayNumsAleatorios;
import static capitulo04.utils.Utils.mostrarArrayNums;
public class Ejercicio01 {
public static void main(String[] args) {
int[] nums = crearArrayNumsAleatorios(20, 0, 100);
mostrarArrayNums(nums);
//Contamos los pares
int cuentaPares = 0;
for (int i = 0; i < nums.length; i++) {
if (nums[i] % 2 == 0) cuentaPares++;
}
int[] pares = new int[cuentaPares];
int[] impares = new int[nums.length - cuentaPares];
cuentaPares = 0;
int cuentaImpares = 0;
for (int num : nums) {
if (num % 2 == 0) {
pares[cuentaPares] = num;
cuentaPares++;
} else {
impares[cuentaImpares] = num;
cuentaImpares++;
}
}
for (int i = 0; i < pares.length; i++) {
nums[i] = pares[i];
}
for (int i = 0; i < impares.length; i++) {
nums[pares.length + i] = impares[i];
}
System.out.println();
mostrarArrayNums(nums);
}
}

View File

@@ -0,0 +1,40 @@
package capitulo04.bloque08;
import static capitulo04.utils.Utils.solicitarIntScanner;
public class Ejercicio02 {
public static void main(String[] args) {
int[] nums = new int[10];
for (int i = 0; i < nums.length; i++) {
nums[i] = solicitarIntScanner("Introduzca el número " + (i + 1) + ": ");
}
System.out.println("Array con indices:");
for (int i = 0; i < nums.length; i++) {
System.out.println("Indice " + i + ": " + nums[i]);
}
int inicial, finalPos;
do {
inicial = solicitarIntScanner("Introduzca la posición inicial del rango a ignorar (0-9): ");
finalPos = solicitarIntScanner("Introduzca la posición final del rango a ignorar (0-9): ");
} while (inicial >= finalPos || inicial < 0 || finalPos > 9);
int tempNum = nums[nums.length - 1];
for (int i = nums.length - 1; i > finalPos; i--) {
nums[i] = nums[i - 1];
}
nums[finalPos + 1] = nums[inicial - 1];
for (int i = inicial - 1; i > 0; i--) {
nums[i] = nums[i - 1];
}
nums[0] = tempNum;
System.out.println("Array modificado: ");
for (int i = 0; i < nums.length; i++) {
System.out.println("Indice " + i + ": " + nums[i]);
}
}
}

View File

@@ -0,0 +1,14 @@
package capitulo04.bloque08;
import static capitulo04.utils.Utils.solicitarIntScanner;
public class Ejercicio03 {
public static void main(String[] args) {
int numDNI = solicitarIntScanner("Introduce el número de DNI: ");
char[] letrasDNI = {'T', 'R', 'W', 'A', 'G', 'M', 'Y', 'F', 'P', 'D',
'X', 'B', 'N', 'J', 'Z', 'S', 'Q', 'V', 'H', 'L',
'C', 'K', 'E'};
int indice = numDNI % 23;
System.out.println("El DNI completo es: " + numDNI + letrasDNI[indice]);
}
}

View File

@@ -0,0 +1,50 @@
package capitulo04.bloque08;
public class Ejercicio04 {
public static void main(String[] args) {
int[][] matrizdeNums = new int[6][10];
boolean[] numerosUsados = new boolean[1001];
for (int i = 0; i < matrizdeNums.length; i++) {
for (int j = 0; j < matrizdeNums[0].length; j++) {
int num;
do {
num = (int) (Math.random() * 1001);
} while (numerosUsados[num]);
matrizdeNums[i][j] = num;
numerosUsados[num] = true;
}
}
int max = matrizdeNums[0][0];
int min = matrizdeNums[0][0];
int filaMax = 0, columnaMax = 0;
int filaMin = 0, columnaMin = 0;
for (int i = 0; i < matrizdeNums.length; i++) {
for (int j = 0; j < matrizdeNums[0].length; j++) {
if (matrizdeNums[i][j] > max) {
max = matrizdeNums[i][j];
filaMax = i;
columnaMax = j;
}
if (matrizdeNums[i][j] < min) {
min = matrizdeNums[i][j];
filaMin = i;
columnaMin = j;
}
}
}
System.out.println("Matriz:");
for (int i = 0; i < matrizdeNums.length; i++) {
for (int j = 0; j < matrizdeNums[0].length; j++) {
System.out.print(matrizdeNums[i][j] + "\t");
}
System.out.println();
}
System.out.println("Valor máximo: " + max + " en la posición (" + (filaMax + 1) + ", " + (columnaMax + 1) + ")");
System.out.println("Valor mínimo: " + min + " en la posición (" + (filaMin + 1) + ", " + (columnaMin + 1) + ")");
}
}