Este documento describe un programa para calcular la fecha de Pascua para un año dado. Primero se analizan los datos de entrada y salida necesarios, luego se presenta un diagrama de flujo del algoritmo. Finalmente, se muestra el código Java implementando la lógica para calcular la fecha de Pascua según las fórmulas dadas y mostrar el resultado.
1. Programa 7
a) Planteamiento del problema
Sabemos que la Pascua es el primer domingo tras la primera Luna llena a
partir del equinoccio de primavera, podremos calcular que la fecha de
pascua estará entre los días 22 de marzo como mínimo y el 25 de abril
como máximo.
b) Análisis de datos (datos de: entrada / salida, condiciones y diccionario de
datos).
Este programa fue muy muy fácil elaborarlo porque simplemente fue seguir
las instrucciones dictadas por la profesora.
• “a” el resto de la división del año propuesto por 19
• “b” el resto de la división del año propuesto por 4
• “c” el resto de la división del año propuesto por 7
• “d” el resto de la división (19a+24):30
• “e” el resto de la división (2b +4c +6d+5):7
La fecha de Pascua es 22 +d +e en marzo o (si es superior a 31 seria abril)
d +e-9 en abril.
b) Diseño de solución (Diagrama de flujo usando el programa DFD)
2. c) Prueba de escritorio.
Año=2008
A=2008 mod 19
B= 2008 mod 4
C=2008 mod 7
D= ((19*A)+24) mod 7
E=(2*B) +(4*C) +(6*D)+5) mod 7
F=22 +d +e
F= 30 DE MARZO
d) Programa fuente (codificación en java)
/*
3. * To change this template, choose Tools | Templates
* and open the template in the editor.
*/
package ejercicio7;
/**
*
* @author Eduardo Avila
*/
import javax.swing.*;
public class Ejercicio7 {
/**
* @param args the command line arguments
*/
public static void main(String[] args) {
// TODO code application logic here
int año,a,b,c,d,e,f,g = 0;
año=Integer.parseInt(JOptionPane.showInputDialog(null, "Escribe un año
de 1900 a 2100"));
a=año%19;
b=año%4;
c=año%7;
d=((19*a)+24) % 7;
e=((2*b) +(4*c) +(6*d)+5) % 7;
f=22 +d +e;
if (f<=31)
{
JOptionPane.showMessageDialog(null, +f+" DE MARZO");
}
else
if(f>31)
{ g=f-31;
JOptionPane.showMessageDialog(null, +g+" DE ABRIL");
}
}
}
f) Depuración.- La forma de comprobar que su programa es funcional será
imprimiendo sus pantallas de salida, las cuales deberán estar previamente
diseñadas con presentación en su JOptionPane ver material de clases.
4. g) Conclusión de su práctica.
En esta práctica se reafirmo el uso que se le puede dar a los residuos de las
divisiones