Rutas
/
Java
Java
/
Ejercicios
/
Cocina tu lasaña
Cocina tu lasaña

Cocina tu lasaña

Ejercicio de aprendizaje

Introducción

Conceptos básicos

Java es un lenguaje de tipado estático, lo que significa que el tipo de una variable se conoce en tiempo de compilación. Asignar un valor a un nombre se conoce como definir una variable. Una variable se define especificando explícitamente su tipo.

int explicitVar = 10;

Actualizar el valor de una variable se hace mediante el operador =. Aquí, = no representa la igualdad matemática. Simplemente asigna un valor a una variable. Una vez definida, el tipo de una variable nunca puede cambiar.

int count = 1; // Assign initial value
count = 2;     // Update to new value

// Compiler error when assigning a different type
// count = false;

Java es un lenguaje orientado a objetos y exige que todas las funciones se definan dentro de una clase. La palabra clave class se usa para definir una clase.

class Calculator {
    // ...
}

Una función dentro de una clase se conoce como método. Cada método puede tener cero o más parámetros. Todos los parámetros deben tener un tipo explícito; no hay inferencia de tipos para los parámetros. De forma similar, el tipo devuelto también debe ser explícito. Los valores se devuelven desde los métodos con la palabra clave return. Para permitir que otras clases llamen a un método, hay que añadir el modificador de acceso public.

class Calculator {
    public int add(int x, int y) {
        return x + y;
    }
}

Para invocar o llamar a un método, se especifica su clase y el nombre del método y se pasan argumentos para cada uno de los parámetros del método.

int sum = new Calculator().add(1, 2);  // here the  "add" method has been called to perform the task of addition

El scope en Java se define entre los caracteres { y }.

Java admite dos tipos de comentarios. Los comentarios de una sola línea van precedidos de // y los comentarios multilínea se insertan entre /* y */.

Instrucciones

En este ejercicio vas a escribir algo de código para ayudarte a cocinar una lasaña excelente con tu libro de cocina favorito.

Tienes cuatro tareas, todas relacionadas con el tiempo que se tarda en cocinar la lasaña.

1. Define el tiempo esperado en el horno, en minutos

Define el método expectedMinutesInOven(), que no recibe ningún parámetro y devuelve cuántos minutos debe estar la lasaña en el horno. Según el libro de cocina, el tiempo esperado en el horno es de 40 minutos:

Lasagna lasagna = new Lasagna();
lasagna.expectedMinutesInOven();
// => 40

2. Calcula el tiempo restante en el horno, en minutos

Define el método remainingMinutesInOven() que recibe como parámetro los minutos reales que la lasaña lleva en el horno y devuelve cuántos minutos tiene que seguir la lasaña en el horno, según el tiempo esperado en minutos de la tarea anterior.

Lasagna lasagna = new Lasagna();
lasagna.remainingMinutesInOven(30);
// => 10

3. Calcula el tiempo de preparación en minutos

Define el método preparationTimeInMinutes() que recibe como parámetro el número de capas que has añadido a la lasaña y devuelve cuántos minutos has dedicado a preparar la lasaña, suponiendo que cada capa te lleva 2 minutos de preparación.

Lasagna lasagna = new Lasagna();
lasagna.preparationTimeInMinutes(2);
// => 4

4. Calcula el tiempo total de trabajo en minutos

Define el método totalTimeInMinutes() que recibe dos parámetros: el primero es el número de capas que has añadido a la lasaña, y el segundo es el número de minutos que la lasaña lleva en el horno. La función debe devolver cuántos minutos en total has trabajado en cocinar la lasaña, que es la suma del tiempo de preparación en minutos y el tiempo en minutos que la lasaña lleva en el horno en ese momento.

Lasagna lasagna = new Lasagna();
lasagna.totalTimeInMinutes(3, 20);
// => 26
Editar en GitHub El enlace se abre en una ventana o pestaña nueva
Java Exercism

¿Listo para empezar Cocina tu lasaña?

Regístrate en Exercism para aprender y dominar Java con 26 conceptos158 ejercicios y mentoría humana real, todo gratis.