Programación en JAVA Ejercicios de SELECCIÓN Óscar Blasco tic6axx Curso 2017/2018
Sumario 00.- Control par-impar...2 01.- Valor absoluto...3 02.- Son múltiplos?...4 03.- Dos números ordenados...5 03b.- Tres números ordenados...6 04.- Numero capícua...7 05.- Clasificacion de un número...8 06.- Boletín de notas...9 07.- Vocal aleatoria...10 08.- Vocal aleatoria con switch...11 09.- Boletín de notas mejorado...12 10.- Máquina de calcular...13 11.- Posición de una letra...15 12.- Mayor de cuatro números...16 13.- Segundo siguiente...17 14.- Año bisiesto...18 15.- Sistema de ecuaciones mejorado...19 16.- Ecuación de segundo grado mejorado...20 17.- Calculadora de números romanos...21 Óscar Blasco - tic6axx 1
00.- Control par-impar Solicitar un número entero por teclado y saca un mensaje si es par o impar. sel_00 import java.util.scanner; public class sel_00 { /** * @param args */ public static void main(string[] args) { // TODO Auto-generated method stub // Variables de entrada ; // Variable de salida String ; // Crea objeto Scanner para entrada Scanner entrada = new Scanner(System.in);...... FASE DE PROCESO if (( % 2) == 0) ="PAR"; else ="IMPAR"; } } Óscar Blasco - tic6axx 2
01.- Valor absoluto Solicitar un número entero por teclado y muestra por pantalla su valor absoluto sel_01 Óscar Blasco - tic6axx 3
02.- Son múltiplos? Solicitar dos números enteros por teclado y decir si el primero es múltiplo del segundo. absoluto sel_02 Óscar Blasco - tic6axx 4
03.- Dos números ordenados Solicitar dos números enteros por teclado y los muestra ordenados por pantalla. sel_03 Óscar Blasco - tic6axx 5
03b.- Tres números ordenados Solicitar tres números enteros por teclado y los muestra por pantalla ordenados. sel_03b Óscar Blasco - tic6axx 6
04.- Numero capícua Solicitar un número entero por teclado de CINCO CIFRAS y muestra por pantalla si es capicua o no sel_04 Óscar Blasco - tic6axx 7
05.- Clasificacion de un número Solicitar un número entero por teclado y muestra por pantalla si es positivo, negativo o cero. sel_05 Óscar Blasco - tic6axx 8
06.- Boletín de notas Solicitar una nota entera por teclado y muestra por pantalla su correspondiente nota alfabética o mensaje de error si no se corresponde con ninguna nota válida (0..10) sel_06 Óscar Blasco - tic6axx 9
07.- Vocal aleatoria Muestra por pantalla una vocal obtenida de forma aleatoria sel_07 vocal char } } // Variable de salida char vocal; FASE DE PROCESO // preparo una semilla para la generacion de eros aleatorios Random aleatorio = new Random (System.currentTimeMillis()); // Genera un ero aleatorio entre 0 y 4 alea= aleatorio.nextint(5); // Obtengo la vocal a partir del ero aleatorio if (alea == 0) vocal='a'; else if (alea == 1) vocal='e'; else if (alea == 2) vocal='i'; else if (alea == 3) vocal='o'; else vocal='u'; FASE DE SALIDA System.out.prln("La vocal obtenida es "+ vocal); Óscar Blasco - tic6axx 10
08.- Vocal aleatoria con switch Muestra por pantalla una vocal obtenida de forma aleatoria, utilizando la estructura condicional switch. sel_08 vocal char // Obtengo la vocal a partir del ero aleatorio switch (alea) { case 0 : vocal ='a'; break; case 1 : vocal ='e'; break; case 2 : vocal ='i'; break; case 3 : vocal ='o'; break; default: vocal ='u'; } Óscar Blasco - tic6axx 11
09.- Boletín de notas mejorado Igual que el sel_06 pero con la estructura condicional switch. sel_09 Óscar Blasco - tic6axx 12
10.- Máquina de calcular Simulación de una calculadora de dos números enteros. Primero se solicita el primer número enterio, despues se solicita la operación Suma : + Resta : - Multiplicación: * Cociente: c o C Resto: r o R Despues se solicita el segúndo número enterio. Mostrando el tado érico por pantalla en el caso de operación conocida. Si la operación es errónea, se muestra mensaje de error. Op1,op2 sel_10 Resul op_sal char operacion char // Variable de proceso boolean error_op; FASE DE ENTRADA........ // Solicito la operacion System.out.prln("Escribe la operacion (+,-,*,C,R)"); operacion = entrada.next().charat(0);........ Óscar Blasco - tic6axx 13
FASE DE PROCESO error_op = false; =0; op_sal = operacion; switch(operacion){ case '+' : = op1 + op2; break; case '-' : = op1 - op2; break; case '*' : = op1 * op2; break; case 'c' : case 'C' : = op1 / op2; op_sal = '/'; break; case 'r' : case 'R' : = op1 % op2; op_sal = '%'; break; default : error_op = true; } FASE DE SALIDA if (error_op == true) System.out.prln("*** ERROR : Operacion "+op_sal+" no soportada"); else System.out.prln(op1+" "+op_sal+" "+op2+" = "+); } } Óscar Blasco - tic6axx 14
11.- Posición de una letra Solicita una letra por teclado y muestra la posición de la letra en el abecedario o bien mensaje de error si el carácter no fuera una letra. char letra sel_11 posicion letra char // Variable de proceso boolean error_letra;.......... FASE DE PROCESO letra = Character.toUpperCase(letra); posicion = letra - 'A' +1; if (letra <'A' letra > 'Z') error_letra = true; else error_letra = false; FASE DE SALIDA if (error_letra) System.out.prln("ERROR : el caracter " +letra+" no es una letra"); else System.out.prln("La posicion de "+letra+" es "+posicion); } } Óscar Blasco - tic6axx 15
12.- Mayor de cuatro números Solicita por teclado cuatro números enteros, y muestra por pantalla el mayor de los cuatro sel_12 Óscar Blasco - tic6axx 16
13.- Segundo siguiente Solicita por teclado las horas, minutos, y segundos actuales, y muestra por pantalla la hora, minutos y segundos transcurridos UN SEGUNDO. sel_13 Óscar Blasco - tic6axx 17
14.- Año bisiesto Solicita un año por teclado y muestra si es bisiesto o no. sel_14 Óscar Blasco - tic6axx 18
15.- Sistema de ecuaciones mejorado Mejora del programa secuencial del sistema de ecuaciones, para controlar si no hay solución por ser rectas paralelas o coincidentes. sel_15 Óscar Blasco - tic6axx 19
16.- Ecuación de segundo grado mejorado Mejora del programa secuencial de ecuación de segundo grado, para dar tanto soluciones reales como complejas. sel_16 Óscar Blasco - tic6axx 20
17.- Calculadora de números romanos. Simulación de una calculadora de dos números ROMANOS. Primero se solicita el primer número romano (I-V-X-C-D-M), despues se solicita la operación : Suma : +, Resta : - o Multiplicación: *. Despues se solicita el segúndo número ROMANO. Mostrando el tado érico por pantalla en el caso de operación conocida y los dos números romanos conocidos; en caso contrario se muestra mensaje de error. Óscar Blasco - tic6axx 21