Está en la página 1de 6

Laboratorio de metodos

Pregunta 1.
Escriba un método denominado circleArea que acepte el radio de un círculo como
parámetro (como un número real) y devuelva el área de un círculo con ese radio. Por
ejemplo, la llamada deárea(2.0) debe retornar 12.566370614359172. Puede suponer que
el radio pasado es un número no negativo.

Pregunta 2.

Escriba un método denominado averageOf3 que acepte tres enteros como parámetros
y devuelva el promedio de los tres enteros como un número real. Por ejemplo, la
llamada de averageOf3(4, 7, 13) devuelve 8

Pregunta 3.

Escriba un método denominado boxOfStars que acepte dos parámetros enteros que
representen un ancho y alto, e imprime en la consola una figura de 'caja' cuyo borde es
* estrellas y cuyo centro está hecho de espacios. Por ejemplo, la llamada de
boxOfStars(8, 5);debe imprimir la siguiente salida:

Puede suponer que los valores pasados para la anchura y la altura son mayores o iguales
a 2.

Pregunta 4.

Escriba un método denominado triángulo que acepte un parámetro entero que


represente un tamaño e imprima en la consola una figura de triángulo alineada a la
derecha cuyos lados sin hipotenusa sean esa longitud. Por ejemplo, la llamada de
triangulo(5);debe imprimir la siguiente salida:

Suponer que el valor que se pasa siempre es igual o mayor que 1


Pregunta 5.
Escriba un método denominado printPay que calcule e imprima la cantidad de dinero
que un empleado debe ganar. El método acepta dos parámetros: un número real para
el salario por hora del empleado y un entero para el número de horas que trabajó el
empleado. Cada hora despues de la octava paga a 1,5 veces el salario normal. Por
ejemplo, la llamada de printPay(10.00, 11); debe imprimir la siguiente salida:
Horas trabajadas 11
Pago 125 soles

Pregunta 6.
Escriba un método denominado countDigits que acepte un parámetro entero y devuelva
el número de dígitos de ese entero. Por ejemplo, countDigits(38015) devuelve 5. Para los
números negativos, devuelva el mismo valor que si el número fuera positivo. Por
ejemplo, countDigits(-72) devuelve 2.
Pregunta 7.
Escriba un método denominado computeDistance que acepte cuatro coordenadas
enteras x1, y1, x2 e y2 como parámetros y calcule la distancia entre puntos (x1, y1) y (x2,
y2) en el plano cartesiano. La fórmula para la distancia entre dos puntos es:

Por ejemplo, la llamada de computeDistance(10, 2, 3, 5) retorna 7.615773105863909.

Pregunta 8.
El siguiente programa de consola utiliza parámetros y genera dos líneas de salida.
¿Cuáles son?
Pregunta 9.
Escribir un programa de consola en una clase llamada Inversión que calcula el dinero
ganado por dos inversores. Utilice la siguiente fórmula de interés compuesto:
PV * (1 + r)n = FV

También informe de la "calidad" general de la inversión a partir de la siguiente tabla:


Beneficio Categoría

0 - 10% Débil

10 - 50% Medio

Sobre50% Fuerte

Haga coincidir el siguiente registro de salida de ejemplo (con la entrada del usuario
mostrada de esta manera):
#1 inversor:
¿Cantidad inicial? 100.00
Tasa de interés%? .03
¿Num. de meses? 5
Importe final: $115.93
Beneficio: $15.93 (16%)
Medio

#2 inversor:
¿Cantidad inicial? 5.25
Tasa de interés? .08
¿Num. de meses? 24
Importe final: $33.29
Beneficio: $28.04 (534%)
Fuerte

Que tengas un buen día!

Usar metodos

Pregunta 10.

Escriba un programa de consola en una clase denominada IMC que solicite la entrada
del usuario y calcule el índice de masa corporal (IMC) de 2 personas, utilizando la
siguiente fórmula:
IMC = Peso/ Altura2 * 703
La clasificación del IMC agrupa a cada persona en una de las siguientes cuatro categorías:
Imc Categoría

Abajo 18.5 Clase 1

18.5 - 24.9 Clase 2

25.0 - 29.9 Clase 3

30.0 y mas Clase 4

La salida del programa será:

Este programa lee los datos de dos personas


y calcula su índice de masa corporal (IMC).

Información de la Persona 1:
altura (en pulgadas)? 70.0
peso (en libras)? 194.25
IMC 27,9
clase 3

Información de la Persona 2:
altura (en pulgadas)? 62.5
peso (en libras)? 130.5
IMC 23,5
clase 2

¡Que tengas un buen día!

Pregunta 11.
Escriba un método denominado showTwos que muestre los factores de 2 en un entero
determinado. Por ejemplo, las siguientes llamadas:

showTwos(7);
showTwos(18);
showTwos(68);
showTwos(120);

debe producir estos resultados:

7=7
18 = 2 * 9
68 = 2 * 2 * 17
120 = 2 * 2 * 2 * 15
La idea es expresar el número como un producto de factores de 2 y un número impar.
El número 120 tiene 3 factores de 2 multiplicados por el número impar 15. Para números
impares (por ejemplo, 7), no hay factores de 2, por lo que solo muestra el número en sí.
Supongamos que el método se pasa un número mayor que 0.

Pregunta 12.
Escriba un método denominado fitnessGoal que acepte un parámetro entero
denominado goal y solicite al usuario cuántos minutos ejerce cada día hasta que
aumenten sus minutos para los días consecutivos.

Por ejemplo, la llamada de fitnessGoal(3); debe solicitar al usuario hasta que aumente
sus minutos durante 3 días seguidos. Si el usuario hace ejercicio durante 5 minutos el
primer día y 10 minutos el segundo día, el usuario ha incrementado sus minutos de
ejercicio. Pero si el usuario hace ejercicios durante sólo 8 minutos en el tercer día (o
cualquier cantidad inferior a 10), no aumentó, por lo que el conteo comienza de nuevo.
En el cuarto día, el usuario ahora tendría que superar 8 para estar aumentando.

¡Después de solicitar minutos de ejercicio cada día, imprima “Gran trabajo!" si sus
minutos están aumentando o "Comenzar de nuevo." si los minutos no aumentaron.
Asumiremos implícitamente que el usuario no ejerció el día antes de que el método
comience a ejecutarse, por lo que no importa cuántos minutos ejerciten el día 1, hicieron
un gran trabajo y han estado aumentando durante 1 día.

El siguiente registro representa la salida de la consola de una llamada de ejemplo de


fitnessGoal(3); El método debe coincidir exactamente con el comportamiento y la
estructura de salida que se muestran. (La entrada del usuario de la consola se muestra así
para mayor claridad.)

Entrene hasta que aumente durante 3 días.


¿Minutos? 5
¡Buen trabajo!
¿Minutos? 10
¡Buen trabajo!
¿Minutos? 8
Empezar de nuevo.
¿Minutos? 9
¡Buen trabajo!
¿Minutos? 11
¡Buen trabajo!
¿Minutos? 2
Empezar de nuevo.
¿Minutos? 10
¡Buen trabajo!
¿Minutos? 15
¡Buen trabajo!
¿Minutos? 20
¡Buen trabajo!
¡Alcanzamos tu objetivo en 9 días en total!

Tenga en cuenta que el método finaliza cuando el usuario ha aumentado durante 3 días
consecutivos. En este caso, es el aumento de 2 minutos a 10, luego de 10 a 15, luego de
15 a 20. Si la llamada hubiera sido en su lugar fitnessGoal(5);, volveríamos a preguntar
al usuario hasta que sus actas hubieran estado aumentando durante 5 días
consecutivos.

Suposiciones: puede suponer que el valor del parámetro pasado será un entero positivo
y puede suponer que el usuario escribirá un entero positivo para el número de minutos
cada día. No es necesario preocuparse por pluralizar palabras en la salida como "día" vs
"días".

Restricciones: no debe utilizar estructuras de datos como matrices o cadenas para


ayudarle a resolver este problema. Puede declarar tantas variables simples (como ints o
doubles) como desee.

También podría gustarte