Documentos de Académico
Documentos de Profesional
Documentos de Cultura
En primer lugar hay que instalar el JDK 17, luego hay que tener
instalado Eclipse. Por último vamos a Help -> MarketPlace y en buscar
escribimos java 17. En el plugin Java 17 Support for Eclipse 2021-09
pulsamos install y aceptamos las licencias.
1/24
UNIDAD 3. Ejercicios de U03 Soluciones.
int i = 0;
while (i <= 1000) { // Observa que cambia el < por <=
System.out.println(i); // Y el orden de hacer las operaciones
i++;
};
2/24
UNIDAD 3. Ejercicios de U03 Soluciones.
System.out.println( invertida );
E1. TEST
1. ¿Qué es un bloque de sentencias? ¿Cómo se hacen en Java?
3/24
UNIDAD 3. Ejercicios de U03 Soluciones.
(1)
int x, y; // Los dos números enteros
do {
x = (int)(10 * Math.random() + 1);
y = (int)(10 * Math.random() + 1);
} while (x == y); // continuar hasta que sean distintos
System.out.println(x + " " + y);
(2)
int x, y; // Los dos números enteros
4/24
UNIDAD 3. Ejercicios de U03 Soluciones.
(3)
int x, y; // Los dos números enteros
x = (int)(10 * Math.random() + 1); // Elijo uno
do {
y = (int)(10 * Math.random() + 1);
} while (x == y);
System.out.println(x + " " + y);
5/24
UNIDAD 3. Ejercicios de U03 Soluciones.
}
}
2
4
8
16
32
64
6/24
UNIDAD 3. Ejercicios de U03 Soluciones.
if (comienza)
System.out.println( nombre.charAt(i) );
if ( nombre.charAt(i) == ' ' )
comienza = true;
else
comienza = false;
}
11. Imagina que tienes un array llamado a cuyo tipo base es int
( int[] a; ). Escribe un trozo de código que cuente y muestre el
número de veces que aparece el número 42 en el array.
int c42;
c42 = 0;
int i;
for ( i = 0; i < array.length; i++ ) {
if ( array[i] == 42 ) {
c42++;
}
}
System.out.println("Hay " + c42 + " valores 42 en el array.")
7/24
UNIDAD 3. Ejercicios de U03 Soluciones.
E2. ¿Cuántas veces debes lanzar dos dados hasta que te salga
Snake eyes (ojos de serpiente, que son dos unos)? Haz un
programa que simule lanzamientos de dos dados y cuente el número
de tiradas hasta que te salgan dos unos.
8/24
UNIDAD 3. Ejercicios de U03 Soluciones.
9/24
UNIDAD 3. Ejercicios de U03 Soluciones.
import java.util.Scanner;
10/24
UNIDAD 3. Ejercicios de U03 Soluciones.
11/24
UNIDAD 3. Ejercicios de U03 Soluciones.
ventas.
while (obj.hasNextLine()){
String lineaTexto = obj.nextLine();
System.out.println(lineaTexto);
lineas++;
// separamos en campos: campos[0] es ciudad y campos[1] ventas
String[] campos = lineaTexto.split(":");
12/24
UNIDAD 3. Ejercicios de U03 Soluciones.
13/24
UNIDAD 3. Ejercicios de U03 Soluciones.
} // fin main
}
∑i = 1 + 2 + 3 + 4 + 5 + 6 + 7 + 8 + 9 + 10
i=1
∏i = 1 * 2 * 3 * 4 * 5 * 6 * 7 * 8 * 9 * 10
i=1
14/24
UNIDAD 3. Ejercicios de U03 Soluciones.
import java.util.Scanner;
15/24
UNIDAD 3. Ejercicios de U03 Soluciones.
do {
System.out.print( "Dimensiones (entero n > 0): " );
n = teclado.nextInt();
} while(n <= 0);
// Definir A
ma = new double[n][n];
System.out.println( "Defina A: " );
for(int f= 0; f < n; f++)
for(int c= 0; c < n; c++) {
System.out.print( "A[" + (f+1) + ", " + (c+1) + "]= " );
ma[f][c] = teclado.nextDouble();
}
// Definir B
mb = new double[n][n];
System.out.println( "Defina B: " );
for(int f= 0; f < n; f++)
for(int c= 0; c < n; c++) {
System.out.print( "B[" + (f+1) + ", " + (c+1) + "]= " );
mb[f][c] = teclado.nextDouble();
}
// Calcular C
mc = new double[n][n];
for(int f= 0; f < n; f++) {
System.out.print("|");
for(int c = 0; c < n; c++) {
mc[f][c] = ma[f][c] + mb[f][c];
System.out.printf( " %6.2f ", mc[f][c] );
}
System.out.println("|");
}
} // fin main
}
16/24
UNIDAD 3. Ejercicios de U03 Soluciones.
Ejemplo: elemento 0,0 es multiplicar la fila (1, 2) por la columna (3, 4).
Debajo, el elemento (1,1)
import java.util.Scanner;
// Definir A
do {
System.out.print( "Filas de matriz A (> 0): " );
aF = teclado.nextInt();
System.out.print( "Columnas de matriz A (> 0): " );
aC = teclado.nextInt();
} while(aF <= 0 || aC <= 0);
ma = new double[aF][aC];
// Definir B
do {
System.out.print( "Filas de matriz B (>0): " );
bF = teclado.nextInt();
System.out.print( "Columnas de matriz B (> 0): " );
bC = teclado.nextInt();
} while(bF <= 0 || bC <= 0);
mb = new double[bF][bC];
17/24
UNIDAD 3. Ejercicios de U03 Soluciones.
18/24
UNIDAD 3. Ejercicios de U03 Soluciones.
:
Nombre del alumno 4: Santi
Nota: 9,3
Ahora, ordena de mayor a menor nota los datos (nombres y notas):
6.1 9.3
19/24
UNIDAD 3. Ejercicios de U03 Soluciones.
do {
System.out.print( "Número de alumnos (> 0): " );
n = teclado.nextInt();
} while( n <= 0 );
notas = new double[n];
nombres = new String[n];
// Leer datos
for(int i = 0; i < n; i++) {
teclado.nextLine(); // Quita retornos de nextInt/nextDouble
System.out.print( "Nombre de alumno " + (i+1) + ": " );
nombres[i] = teclado.nextLine();
System.out.print( "Nota de alumno " + (i+1) + ": " );
notas[i] = teclado.nextDouble();
}
// Ordenar arrays de nombres y notas por notas de mayor a menor
for(int i = 0; i < n-1; i++) {
double mayor = notas[i];
int pmayor= i;
for(int j= i+1; j < n; j++)
if( mayor < notas[j] ) {
pmayor = j;
mayor = notas[j];
}
// comprobar si hay otro mayor
if( pmayor != i ) { // hay otro más mayor
// Intercambiar notas
double temp = notas[i];
notas[i] = mayor; // mayor es igual a notas[pmayor]
notas[pmayor]= temp;
// Intercambiar nombres
String tempS = nombres[i];
nombres[i]= nombres[pmayor];
nombres[pmayor]= tempS;
20/24
UNIDAD 3. Ejercicios de U03 Soluciones.
}
}
// Mostrar arrays ordenados
for(int i= 0; i < n; i++) {
if ( i != 0 ) System.out.print(", "); // Pone ',' salvo 1a vez
System.out.print(nombres[i] + "(" + notas[i] + ")");
}
} // fin main
}
21/24
UNIDAD 3. Ejercicios de U03 Soluciones.
22/24
UNIDAD 3. Ejercicios de U03 Soluciones.
j++;
}
i++;
j = 0;
}
// Si hay más ocurrencias que la posible, se cambia
if( nuevaOcu > posibleOcu ) {
posibleOcu = nuevaOcu;
posibleModa = nuevaModa;
}
}
} while( continuar );
System.out.println( "El valor de moda es " + posibleModa + " con " +
posibleOcu + " ocurrencias.");
} // fin main
}
23/24
UNIDAD 3. Ejercicios de U03 Soluciones.
package p1;
import java.util.Arrays;
24/24