Enviado em 22/05/2015 - 19:42h
Olá, eu preciso fazer um código em C que descubra o dia da semana que cairá primeiro de Janeiro. Entretanto, não consigo atingir meu objetivo. Alguém aí pode me ajudar?
#include <stdio.h>
#include <stdlib.h>
int main() {
int ano, y, g, c, x, z, e, n, d, primeirojaneiro, nabril, subtratorabril, ia;
char v[119];
printf("Insira o ano\n");
scanf("%d", &y);
ano = y;
//verifica se o ano é bissexto:
if (ano%100 == 0)
ano = (ano/100);
if (ano%4 == 0){
printf("O ano é bissexto \n");
}
if (ano%4 != 0){
printf("O ano não é bissexto \n");
}
g = ((y%19)+1); //cálculo do número áureo
c = ((y/100)+1); //cálculo do século
x = (((3*c)/4)-12); //fator de correção 1
z = ((((8*c)+5)/25)-5); //fator de correção 2
e = ((((11*g)+20+z)-x)%30); //cálculo do epacta
if((e == 25)&&(g > 11))
e = (e+1);
if(e == 24)
e = (e+1);
n = (44 - e); //lua cheia
if (n < 21)
n = (n + 30);
d = (((5*y)/4)-(x + 10)); //domingo de páscoa
//dia e mês da páscoa:
n = ((n+7) - ((d + n)%7));
if (n > 31)
printf("A páscoa será dia %d de abril\n", n-31);
if (n <= 31)
printf("A páscoa será dia %d de março \n", n);
nabril = n - 31;
subtratorabril = nabril - 30;
ia = 119 - subtratorabril; //119 é número de dias que faltam para 1 de janeiro em 30 de abril
if (ano%4 != 0){
if (n > 31){
for(v[ia]; v[ia]>0; v[ia-7]){
v[ia] = 'd'; //domingo;
v[ia-1] = 's'; //sábado;
v[ia-2] = 'x'; //sexta-feira;
v[ia-3] = 'q'; //quinta-feira;
v[ia-4] = 'u'; //quarta-feira;
v[ia-5] = 't'; //terça-feira;
v[ia-6] = 's'; //segunda-feira;
}
}
}
printf("Primeiro de janeiro será %c \n", v[1]);
return 0;
}
Compartilhando a tela do Computador no Celular via Deskreen
Como Configurar um Túnel SSH Reverso para Acessar Sua Máquina Local a Partir de uma Máquina Remota
Configuração para desligamento automatizado de Computadores em um Ambiente Comercial
Como renomear arquivos de letras maiúsculas para minúsculas
Imprimindo no formato livreto no Linux
Vim - incrementando números em substituição
Efeito "livro" em arquivos PDF
Como resolver o erro no CUPS: Unable to get list of printer drivers
É cada coisa que me aparece! - não é só 3% (3)
Melhorando a precisão de valores flutuantes em python[AJUDA] (5)
[Python] Automação de scan de vulnerabilidades
[Python] Script para analise de superficie de ataque
[Shell Script] Novo script para redimensionar, rotacionar, converter e espelhar arquivos de imagem
[Shell Script] Iniciador de DOOM (DSDA-DOOM, Doom Retro ou Woof!)
[Shell Script] Script para adicionar bordas às imagens de uma pasta