sexta-feira, 17 de setembro de 2010

Exercício cap.3.15

15. Escreva um algoritmo que leia duas datas, na forma dia, mês e ano, e informe qual é a mais recente.

Resposta:

1.  algoritmo "Qual data é mais recente"
2.  var
3.    d1,d2,m1,m2,a1,a2,data1,data2:inteiro
4.  inicio
5.    escreval("Qual data é mais recente.")
6.    escreva("Digite o dia da primeira data = ")
7.    leia(d1)
8.    escreva("Digite o mês da primeira data = ")
9.    leia(m1)
10.   escreva("Digite o ano da primeira data = ")
11.   leia(a1)
12.   escreva("Digite o dia da segunda data  = ")
13.   leia(d2)
14.   escreva("Digite o mês da segunda data  = ")
15.   leia(m2)
16.   escreva("Digite o ano da segunda data  = ")
17.   leia(a2)

18.   se (d1>31) entao
19.     escreva("O dia da primeira data não corresponde, tente um valor de 1 a 31.")
20.     fimalgoritmo
21.   senao
22.     se (m1>12) entao
23.       escreva("O mês da primeira data não corresponde, tente um valor de 1 a 12.")
24.       fimalgoritmo
25.     senao
26.       se ((a1 mod 4)=0) e ((a1 mod 100)<>0) entao
27.         a1<-(a1*366)
28.        37.  se m1 = "2" entao
29.           se (m1>29) entao
30.             escreva("O mês da primeira data não corresponde, tente um valor de 1 a 29.")
31.           senao
32.            m1<- m1*29
33.           fimse
34.         fimse
35.       senao
36.         a1<-(a1*365)
37.         m1<-(m1*30)
38.         data1 <- a1+m1+d1
39.       fimse
40.       fimse
41.       fimse
42.      
43.   se (d2>31) entao
44.     escreva("O dia da segunda data não corresponde, tente um valor de 1 a 31.")
45.   senao
46.     se (m2>12) entao
47.       escreva("o mês da segunda data não corresponde, tente um valor de 1 a 12.")
48.     senao
49.       se ((a2 mod 4)=0) e ((a2 mod 100)<>0) entao
50.         a2<-(a2*366)
51.         se m2 = "2" entao
52.            se (m2>29) entao
53.              escreva("O mês da segunda data não corresponde, tente um valor de 1 a 12.")
54.            senao
55.            m2 <- m2*29
56.            fimse
57.         fimse
58.       senao
59.         a2<-(a2*365)
60.         m2<- (m2*30)
61.         data2<- a2+m2+d2
62.       fimse
63.         se data1>data2 entao
64.           escreva("A primeira data é mais recente.")
65.         senao
66.           escreva("A Segunda data é mais recente.")
67.         fimse
68.         fimse
69.         fimse

70. fimalgoritmo

Nenhum comentário:

Postar um comentário