Java - ayuda con mi tarea por favor

 
Vista:

ayuda con mi tarea por favor

Publicado por pedro (4 intervenciones) el 03/11/2021 02:32:16
Escriba un programa iterativo que presente un menú con las siguientes opciones:
1. Determinar si el año introducido por el usuario es bisiesto.
Nota: Un año es bisiesto si es multiplo de 4 salvo el caso en que sea multiplo de 100, y no sea multiplo de 400.
Por ejemplo:
El año 1900 no fue bisiesto, el año 2000 si y el 2100 no lo es.

2. La fecha de cualquier Domingo de Pascua se calcula de la siguiente forma:
Sea X el año para el que se quiere calcular la fecha.
Sea A el residuo de la division de X entre 19.
Sea B el residuo de la division de X entre 4.
Sea C el residuo de la division de X entre 7.
Sea D el residuo de la division de (19 * A + 24) entre 30.
Sea E el residuo de la division de (2 * B + 4 * C + 6 * D + 5) entre 7.
La fecha para el domingo de Pascua es el dia (22 + D + E) de Marzo (Observe que puede dar una fecha del mes de Abril).
Se deberá pedir el año e imprimir la fecha del Domingo de Pascua para ese año.

3. Calcular e imprimir la serie de ULAM para un número dado.
El calculo de la serie es de la siguiente manera:
Si el numero es par, se divide entre 2.
Si el numero es impar, se multiplica por 3 y se le suma 1.
La serie termina cuando se llega a 1.
Por ejemplo, la serie de ULAM para el numero 13 es:
13, 40, 20, 10, 5, 16, 8, 4, 2, 1.
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder
Imágen de perfil de Kabuto
Val: 3.428
Oro
Ha mantenido su posición en Java (en relación al último mes)
Gráfica de Java

ayuda con mi tarea por favor

Publicado por Kabuto (1381 intervenciones) el 03/11/2021 11:19:54
Todos consisten en usar el operador módulo. Este operador hace una división pero el resultado que te retorna, es el resto y no el cociente.

Te resuelvo, a modo de ejemplo, el primer ejercicio donde escribo una función/método que recibe un año y retorna true o false para indicar si es bisiesto.
Luego tendrás que adaptarlo al programa iterativo con menú que pide el enunciado.

Intenta tú hacer otras dos funciones similares para resolver los otros dos puntos del ejercicio. No importa si te equivocas (es la mejor forma de aprender), consigue lo que puedas y te ayudamos a completarlo.

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
import java.util.Scanner;
public class Main
{
    public static void main(String[] args) {
        Scanner teclado = new Scanner(System.in);
        System.out.print("Indique año: ");
        int anio = teclado.nextInt();
 
        if (esBisiesto(anio))
            System.out.println("Es bisiesto");
        else
            System.out.println("No es bisiesto");
    }
 
    public static boolean esBisiesto(int anio) {
        if (anio % 4 == 0) {//Es multiplo de 4
            //Además, NO es multiplo de 100 o sí lo es de 400
            if ((anio % 100 != 0) || (anio % 400 == 0))
                return true;
            else
                return false;
        }
        else //No es multiplo de 4
            return false;
    }
}
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar