Calculo de Anos bissextos
Publicado por Enzo de Brito Ferber (última atualização em 18/12/2011)
[ Hits: 6.081 ]
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;
}
Número par ou ímpar (com operado bit a bit)
Nenhum comentário foi encontrado.
Vale a pena ter mais de uma interface grafica no seu Linux?
Estrutura e Funcionamento de um Ebuild no Gentoo Linux
Instalação e Configuração do Void com Cinnamon
Montagem pré automática de HD externo usb em NTFS não funciona no Debian Trixie - Solução
Guia de instalação do Gentoo Linux com Cinnamon (UEFI, LUKS2, Btrfs)









