Exercícios de programação
Utilize a seguinte fórmula:
Data Juliana: (1461 * (ano + 4800 + (mes – 14) / 12)) / 4 + (367 * (mes – 2 – 12 * ((mes – 14) / 12)))/ 12 – (3 * ((ano + 4900 + (mes – 14) / 12) / 100)) / 4 + dia – 32075
42) Dia da semana: Escreva uma função que receba dia, mês e ano e calcule dia da semana que caiu essa data. Para isso, basta transformar a data gregoriana em juliana (utilize a função escrita no exercício anterior) e calcular o resto da divisão da data Juliana por 7. A função retornará um número 0 - 6, indicando o seguinte resultados:
0 - Segunda-feira
1 - Terça-feira
2 - Quarta-feira
3 - Quinta-feira
4 - Sexta-feira
5 - Sábado
6 - Domingo
43) Juliana para Gregoriano: Escreva uma função que converta uma data Juliana em data Gregoriana. A função deverá encontrar o dia, mês e ano correspondente à data Juliana que ela recebe como argumento e retornar um número do tipo long no formato aaaammdd.
O algoritmo é o seguinte:
B = Data Juliana + 68569
N = (4 * B) / 146097
B = B – ((146097 * N + 3) / 4)
K = (4000 * (B + 1)) / 1461001
B = B – (1461 * K) / 4 + 31
J = (80 * B) / 2447
Dia =B – (2447 * J ) / 80
B = (J / 11)
Mês = J + 2 – (12 * B)
Ano = 100 * (N – 49 ) + K + B
47) Escreva uma função cursiva chamada potencial ( ) que aceite dois argumentos inteiros positivos i e j. A função retornará i elevado a potencia j. Por exemplo: Potência (2,3) é igual a 8. Use a seguinte definição :
i elevado à potência j é igual a i elevado à potência j-1 vezes i.
j j-1 i = i * i
48) Escreva uma função recursiva de nome soma ( ) que receba um número inteiro positivo n como argumento e retorne a soma dos n primeiros números inteiros. Por exemplo, se a função receber n= 5 deverá retornar 15, pois: 15 = 1 + 2 + 3 + 4 +