Pascal/Turbo Pascal - Programa de Pascua

 
Vista:

Programa de Pascua

Publicado por Amy (1 intervención) el 06/03/2014 00:29:23
HEY, espero me puedan ayudar con éste programa D; por favor D;

Sabiendo que la fecha de pascua corresponde al primer domingo después de la primera luna llena que sigue al equinoccio de primavera, y además que se calcula utilizando las siguientes expresiones:

A <— año MOD 19

B <— año MOD 4

C <— año MOD 7

D <—(19A + 24) MOD 30

E <— (2B + 4C + 6D + 5) MOD 7

N <— D + E

donde N indica el día de marzo o abril correspondiente al domingo de pascua, hacer un programa que determine la fecha de ese día según el año ingresado.
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

Programa de Pascua

Publicado por ramon (2158 intervenciones) el 07/03/2014 13:44:36
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
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
{Mira esto a ver si te sirve pongo las variables en un array puedes cambiar por variables sueltas}
 
program pascua;
 uses
   crt;
 var
  calculo : array[0..10] of integer;
  domi, n, ayo : integer;
 
  begin
     clrscr;
     writeln('  **** El Domingo De Pascua ****');
     writeln;
     write('  Entre a¤o a calcular : ');
     readln(ayo);
     n := 0;
     calculo[n] := ayo;
     n := n + 1;
     calculo[n] :=  calculo[0] mod 19;
     n := n + 1;
     calculo[n] :=  calculo[0] mod 4;
     n := n + 1;
     calculo[n] :=  calculo[0] mod 7;
     n := n + 1;
     calculo[n] :=  calculo[0] div 100;
     n := n + 1;
     calculo[n] :=  (13 + (8 * calculo[n - 1])) div 25;
     n := n + 1;
     calculo[n] :=  calculo[n - 2] div 4;
     n := n + 1;
     calculo[n] :=  ((15 - calculo[n - 2]) + (calculo[n - 3] -
                     calculo[n - 1]) mod 30);
     n := n + 1;
     calculo[n] := (4 + calculo[n - 4] - calculo[n - 2]) mod 7;
     n := n + 1;
     calculo[n] := ((19 * calculo[n - (n - 1)]) + calculo[n - 2]) mod 30;
     n := n + 1;
     calculo[n] := ((2 * calculo[n - 8] + 4 * calculo[n - 7] +
                    6 * calculo[n - 1] + calculo[n - 2]) mod 7);
     if (calculo[9] + calculo[10]) < 10 then
     domi := calculo[9] + calculo[10] + 22;
     if (calculo[9] + calculo[10]) > 9 then
     domi := calculo[9] + calculo[10] - 9;
     if domi = 26 then
     domi := 19;
     if (domi = 25) and (calculo[9] = 28) and (calculo[3] = 6) and
                                    (calculo[1] > 10) then
     domi := 18;
     writeln;
     writeln('   El Domingo De Pascua Es : ',domi,' De Abril');
     writeln;
     writeln('   ulse Una Tecla ');
    readkey;
  end.
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