Sie sind auf Seite 1von 5

1.

Indica cuál es el valor de las siguientes variables:


a. i, j y z

b. z

c. z
2. Implementa una función en Java que reciba como parámetro un String. Dicha función
debe pedir al usuario un parámetro de tipo entero (mostrándole previamente el texto
recibido como parámetro en la función), y devolverá el entero al cuadrado.

3. Una empresa calcula el sueldo de sus trabajadores en función de su antigüedad


medida en periodos de 5 años llamados quinquenios. El sueldo mensual de cada
trabajador se obtiene a partir del sueldo base (1500€) más 100 euros por cada
quinquenio. Por ejemplo, un trabajador que llevase 17 años en la empresa tendría en
la actualidad 5 quinquenios de antigüedad. Por simplificar, consideramos que las
cantidades son enteros positivos (sin céntimos). Se pide
a. Declarar en Java una constante de nombre SUELDO_BASE para fijar el sueldo
base de la empresa y otra de nombre VALOR_QUINQUENIO para fijar la
cantidad que la empresa paga por cada quinquenio.
b. Implementar en Java una función antiguedad que recibe como parámetro el
año de inicio del contrato de un trabajador y devuelve el número de
quinquenios que lleva trabajando en la empresa, teniendo en cuenta que, si
lleva contratado desde el año 2014, tiene un quinquenio.
c. Implementar en Java la función sueldoMensual que recibe como argumento el
año de inicio del contrato de un trabajador y devuelve su sueldo mensual en
euros.

4. Dado el siguiente código:


static int f (int v){
int p = 0;
int t = 0;
while(t<=v){
p = p+t;
t = t+2;
}
return p;
}

Se pide:
a. Indicar el valor que devuelve la función al ejecutar la llamada f(1)
b. Indicar el valor que devuelve la función al ejecutar la llamada f(4)

5. Implementa un procedimiento en Java que reciba dos parámetros n1 y n2. Debe


devolver por salida estándar ambos números, mostrándolos de mayor a menor.

6. Define en Java una función sumaImpares que recibe dos enteros a y b, y devuelve la
suma de todos los números impares contenidos en el intervalo cerrado [a, b]
Ejemplos:
sumaImpares(3, 7) = 3+5+7 = 15
sumaImpares(7, 3) = 0
sumaImpares(4, 8) = 5+7 = 12

7. Redactar en Java 4 pruebas para la función sumaImpares del ejercicio anterior


8. Definir en Java la función traducirDireccion que recibe un carácter representando un
punto cardinal en nomenclatura inglesa (N, S, E, W) y devuelve la palabra
correspondiente en español (Norte, Sur, Este, Oeste). En caso de introducir un carácter
erróneo, deberá devolver el texto “DIRECCIÓN ERRONEA”.

9. Escribe cual será la salida al ejecutar el siguiente código:


class Ejercicio9 {
static boolean incognita (int uva, int gusano, int pera){
int escogido = pera;
boolean horror = false;
while (escogido <= uva && !horror) {
if (escogido == gusano)
horror = true;
escogido = escogido +1;
} // fin while
return horror ;
} //fin incognita

public static void main ( String [ ] arg ) {


System.out.println ("incognita (6,4,2) = " +incognita (6,4,2));
System.out.println ("incognita (6,14,2) = " +incognita (6,14,2));
} // fin main
} // fin Ejercicio9

10. Dado el siguiente código para la función misterio que usa la función auxiliar esImpar,
da el resultado de llamar a esa función con los siguientes parámetros de entrada: 3428
y 8.
static int misterio (int num) {
int resultado = 0;
int pos =1;
int digito;
for (int numero = Math.abs(num); numero > 0; numero=numero/10) {
digito = numero%10;
if(esImpar(pos))
resultado = resultado + digito;
pos++;
} // fin del for
return resultado;
} // fin misterio

11. Se quiere desarrollar una función volumenTuerca para calcular el volumen en mm3 de
una tuerca octogonal (ver figura). La tuerca viene dimensionada con las siguientes
medidas en mm: su grosor (o altura), su apotema (distancia del centro del octógono al
punto medio de cualquiera de sus lados), el lado del octógono y el radio de su círculo
central. Todos estos datos se considerarán como números reales (double) mayores
que 0 (>0). Se dispone de las especificaciones de dos funciones (areaCirculo y
areaOctogono) que se utilizarán como funciones auxiliares, sin necesidad de definirlas
en Java:
FUNCION areaCirculo (|R radio) --> |R
PRE: radio > 0
POST: resultado = PI * radio * radio

FUNCION areaOctogono (|R lado, apotema) --> |R


PRE: (lado > 0) V (apotema > 0)
POST: resultado = perimetroOctogono(lado) * apotema
DONDE: perimetroOctogono (x) = 8*x

Define en Java la función volumenTuerca

12. Dadas las funciones ding y dong definidas en Java


static int dong (int n) {
if (n == 0)
return 0;
else
return n %10 - dong(n/10);
}

static int ding (int n) {


return Math.abs(dong(n));
}

Escribe los resultados que dará la función ding para valores de n respectivamente
9192, 1929, 316 y 41.

13. Encuentra el error o errores de programación en la siguiente función. Justifica dichos


errores.
static int costeConsulta(int x){
double precioFinal = 0;
switch(x){
case a:
System.out.println(El animal es un perro);
precioFinal = 30;
case 2:
System.out.println(El animal es un gato);
precioFinal = 25;
case 3:
System.out.println(El animal es un conejo);
precioFinal = 40;
}
return precioFinal
}
14. Implementar una función que devuelva el consumo medio (obtenerConsumoMedio) de
un modelo de coche dependiendo del tipo de combustible usado (pasado como un
carácter) y la zona por donde transita (dada como un entero), según la siguiente tabla:
Gasolina (‘G’) Diesel (‘D’)
Ciudad (1) 12.0 7.0
Carretera (2) 5.5 4.1

15. Función que calcule la distancia que podrá recorrer un coche con un depósito
de combustible de X litros (cantidad dada), dependiendo del tipo de
combustible usado (dado como carácter) y la zona donde transite (dado como
entero). Puedes emplear la función obtenerConsumoMedio anterior

16. El consultorio del doctor del amor Lorenzo T. Mata tiene como política cobrar la
consulta según el número de cita que se trate. Las dos primeras citas se cobran a
200€/cita, las tres siguientes citas a 150€/cita y las restantes a 100€/cita.
Implementar en Java la función costeConsulta que recibe el número de cita de un
paciente (1 si es la primera cita, 2 si es la segunda cita, etc..) y devuelve el coste de esa
consulta. Además, implementar en Java las pruebas que se consideren necesarias para
probar el buen funcionamiento de la función costeConsulta.

17. Se pide escribir en Java una función numerosPrimosHasta que reciba un argumento
ulti de tipo entero y que devuelva el número de enteros positivos primos hasta ulti
(incluido). Por ejemplo, la llamada numerosPrimosHasta(6) devolvería 3 y la llamada
numerosPrimosHasta(3) devolvería 2.
Nota 1: se considera ya implementada (por tanto, no hay que implementarla) la
función esPrimo que recibe un entero y devuelve un booleano que es true si el número
que ha recibido es primo y false en caso contrario.
Nota 2: el 1 no se considera primo.

18. La sucesión de Fibonacci es un fenómeno matemático sin igual. Consiste en lo


siguiente: se comienza la sucesión con un 0 y un 1. El siguiente número de la sucesión
sería 0 + 1 = 1, quedando así la sucesión (0, 1, 1). El siguiente se calcularía con 1 + 1 =
2, quedando (0,1,1,2). El siguiente 1 + 2 = 3 (0, 1, 1, 2, 3). Es decir, cada número es la
suma de sus dos anteriores.
0,1,1,2,3,5,8,13,21,34...
Se pide implementar la función recursiva fibonacci, que recibe como argumento un
entero n y calculará el número correspondiente a la secuencia de Fibonacci en la
posición n. Por ejemplo:
fibonacci(1) = 0
fibonacci(2) = 1
fibonacci(5) = 3
fibonacci(10) = 34

Das könnte Ihnen auch gefallen