Calculo de Anos bissextos
Publicado por Enzo de Brito Ferber (última atualização em 18/12/2011)
[ Hits: 5.995 ]
Homepage: http://www.maximasonorizacao.com.br
Programa com rotina SIMPLIFICADA para calcular anos bissextos.
$ gcc -o byears byears.c
$ byears 2000 2004 2008 1600 1700 1800
// byears.c
// Enzo Ferber - dez 2011
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#define TRUE 1
#define FALSE 0
#define RED "\e[01;31m"
#define GREEN "\e[01;32m"
#define WHITE "\e[01;37m"
#define COLOR "\e[m"
int byear ( int year )
{
/*
* Regras dos anos bissextos:
*
* 1. De 4 em 4 anos e bissexto
* 2. De 100 em 100 anos nao e bissexto
* 3. De 400 em 400 anos e bissexto
* 4. Prevalecem as ultimas regras sobre as primeiras
*/
return ( year % 400 ) ? (year % 100 ? (year % 4 ? FALSE : TRUE) : FALSE) : TRUE;
}
int main (int argc, char *argv[] )
{
register int i;
// arg check
if ( argc < 2 )
{
printf ( "Usage: %s y1 y2 y3...\n", argv[0] );
return EXIT_FAILURE;
}
for ( i = 1; i < argc; i ++) printf ( "Ano("WHITE"%s"COLOR"): %s\n", argv[i],
byear(atoi(argv[i])) ? GREEN"SIM"COLOR : RED"NAO"COLOR );
return EXIT_SUCCESS;
}
Nenhum comentário foi encontrado.
Cirurgia para acelerar o openSUSE em HD externo via USB
Void Server como Domain Control
Modo Simples de Baixar e Usar o bash-completion
Monitorando o Preço do Bitcoin ou sua Cripto Favorita em Tempo Real com um Widget Flutuante
Como automatizar sua instalação do Ubuntu para desenvolvimento de software.
Consertando o áudio com estalos e interrupções no Pipewire
Como implementar Raid (0, 1, 5, 6, 10 e 50)
fusermount3 no Ubuntu 25.10 - mantenha o perfil do AppArmor
[Resolvido] dlopen(): error loading libfuse.so.2 AppImages require FUSE to run.
REDE WI-FI NÃO APARECE NO LINUX MINT (1)
Como programar um sistema de controle para distribuições linux em c? (5)
Servidor Ubuntu 24.04 HD 500 não tenho espaço na \home\adminis... (2)









