DATA POR EXTENSO
Publicado por Thiago 29/10/2005
[ Hits: 16.499 ]
Quer saber em que dia da semana caiu tal data ?
Esse programa resolve o problema.
Pelo menos acho kkkk.
#include<stdio.h>
#include<math.h>
// Autor: thiagoamm, ALGORITMO: LIVRO DO HARRY FARRER
/* Programa que determina o dia da semana a partir de uma determinada
data informada pelo user */
// Inicio.
main()
{
int datas; // Numeros de datas pesquisadas.
int dia; // Dia da semana a ser determinado.
int mes; // Mes lido.
int ano; // Ano lido.
int m; // Numero do mes.
int d; // Dia do mes.
int a; // Dois ultimos algarismos do ano.
int s; // Dois primeiros algarismos do ano.
printf("\n");
for(datas = 1; datas <= 50; datas++)
{
printf("@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ ");
printf("\n --> AVISO: Para sair do programa a qualquer momento informe um numero negativo.");
printf("@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ ");
printf("\n################################################################################");
printf("Informe o numero relativo ao dia do mes: ");
scanf("%d",&d);
if(d < 0)
{
printf("\n --> Autor: thiagoamm \n");
break;
}
printf("Informe o numero relativo ao mes: ");
scanf("%d",&mes);
if(mes < 0)
{
printf("\n --> Autor: thiagoamm \n");
break;
}
printf("Informe o numero relativo ao ano: ");
scanf("%d",&ano);
if(ano < 0)
{
printf("\n --> Autor: thiagoamm \n");
break;
}
s = ano / 100; // Parte inteira da divisao.
a = ano % 100; // Resto da divisao.
if(mes <= 2)
{
m = mes + 10;
a = a - 1;
}
else
{
m = mes - 2;
}
// Fomula para calculo do dia para qualquer data informada.
dia = (int)(2.6 * m - 0.1) + d + a + (a / 4) + (s / 4) - 2 * s;
dia = dia % 7;
if(dia < 0)
{
dia = dia + 7;
}
// Dias
switch(dia)
{
case 0:
printf("\n DATA: DOMINGO,");
break;
case 1:
printf("\n DATA: SEGUNDA-FEIRA,");
break;
case 2:
printf("\n DATA: TERÇA-FEIRA,");
break;
case 3:
printf("\n DATA: QUARTA-FEIRA,");
break;
case 4:
printf("\n DATA: QUINTA-FEIRA,");
break;
case 5:
printf("\n DATA: SEXTA-FEIRA,");
break;
case 6:
printf("\n DATA: SABADO,");
break;
}
// Meses
switch(mes)
{
case 1:
printf(" %d DE JANEIRO DE %d \n",d,ano);
break;
case 2:
printf(" %d DE FEVEREIRO DE %d \n",d,ano);
break;
case 3:
printf(" %d DE MARCO DE %d \n",d,ano);
break;
case 4:
printf(" %d DE ABRIL DE %d \n",d,ano);
break;
case 5:
printf(" %d DE MAIO DE %d \n",d,ano);
break;
case 6:
printf(" %d DE JUNHO DE %d \n",d,ano);
break;
case 7:
printf(" %d DE JULHO DE %d \n",d,ano);
break;
case 8:
printf(" %d DE AGOSTO DE %d \n",d,ano);
break;
case 9:
printf(" %d DE SETEMBRO DE %d \n",d,ano);
break;
case 10:
printf(" %d DE OUTUBRO DE %d \n",d,ano);
break;
case 11:
printf(" %d DE NOVEMBRO DE %d \n",d,ano);
break;
case 12:
printf(" %d DE DEZEMBRO DE %d \n",d,ano);
break;
}
printf("################################################################################ \n");
printf("\n");
}
} // Fim.
Calcula valor da prestação atrasada
Tabela hash com classes e tratamento de colisões por encadeamento
Cinnamon seria a aposta acertada frente às outras interfaces gráficas mais populares?
KDE Plasma - porque pode ser a melhor opção de interface gráfica
Gentoo: detectando impressoras de rede e como fixar uma impressora por IP
Como o GNOME conseguiu o feito de ser preterido por outras interfaces gráficas
Por que sua empresa precisa de uma PKI (e como automatizar EMISSÕES de certificados via Web API)
Instalando NoMachine no Gentoo com Systemd (acesso Remoto em LAN)
Vou destruir sua infância:) (8)
Interface gráfica com problema (2)
Instalar Linux em notebook Sony Vaio VPCEG13EB (13)









