segunda-feira, 11 de março de 2013

Como Descobrir o Dia da Semana em que Você Nasceu






Parece mágica, mas o que o personagem da tirinha fez é possível e tem uma explicação matemática.
Primeiramente dê uma olhada no calendário de 1986:
Realmente o personagem acertou! Mas como isso é possível?
De fato, existe uma regra  para determinarmos o dia da semana de qualquer data entre 01 de Janeiro de 1900 até 2399. Basta seguir os seguintes passos:

Passo 1: Calcule quantos anos se passaram desde 1900 até o ano em que você nasceu. Chamaremos esse valor de A.

Passo 2: Calcule quantos 29 de Fevereiro existiram depois de 1900. Para isso, basta dividir por 4 o valor de A, sem considerar o resto da divisão. Chamaremos esse valor de B. Caso seja ano bissexto e a data for anterior  ou igual  a 29 de Fevereiro, considere então  B-1.

Passo 3: Considerando o mês do nascimento, obtenha o número associado a ele (que chamaremos de C), que está presente na seguinte tabela:

Passo 4: Considere o dia do nascimento x. Calcule x-1, chamaremos essa quantidade de D.

Passo 5: Some os quatro valores anotados A,B (ou B-1), C e D então divida o resultado por 7 e tome o resto dessa divisão, após isso confira o dia da semana associado à esse resto:
Como um exemplo, vamos reproduzir os cálculos do personagem da tirinha.

Vejamos, a data de nascimento é 17 de Julho de 1986, temos:

A = 86 (1986-1900)
B = 21 ( 86 dividido por 4 é igual à 21 e possui resto 2, e 1986 não foi bissexto)
C = 6 (Julho)
D = 16 (17-1)

A+B+C+D = 129

129:7 = 18 e resto 3

Conferindo na tabela da semana vemos que 3 está associado à Quinta-Feira!



Até mais !

77 comentários:

  1. Interessante, Diego. Mas acho que dá menos trabalho consultar um calendário permanente que fazer essas contas todas de cabeça, hehehe.
    Vou pensar sobre a matemática por traz disso tudo. Espero chegar a resposta antes da sua próxima postagem.

    ResponderExcluir
    Respostas
    1. De fato, é preciso ter um raciocínio no estilo Von Newmann para realizar contas em fração de segundos!
      O intuito da postagem na realidade é estimular a curiosidade do leitor de saber porque o método funciona, desse modo BINGO! Temos um Leitor interessado! Aguardarei sua resposta antes da postagem.
      Tenho que confessar que não conhecia o Calendário Permanente, farei uma postagem apresentando o Calendário Permanente.
      Até mais !

      Excluir
    2. No caso do ultimo resultado, deverá haver aproximação dos decimais? Exemplo: 15,28 deverá sofrer aproximação decimal para 2,3? data calculada foi 24 de outubro de 1968

      Excluir
    3. Devemos considerar o resto da divisão, assim não há possibilidades de números decimais e se faz desnecessário aproximações.

      Excluir
    4. O dia da semana do meu nascimento só da certo, segundo essa maneira, se arredondar o resto.

      Excluir
    5. O PROGRAMA TEM UM DEFEITO.
      EU NASCI NUMA QUINTA E O PROGRAMA RESPONDE SEXTA
      VOU FAZER SEXTA QUANTO DIVER 100 ANOS

      Excluir
  2. Por trás deste algoritmo está a Aritmética Modular. Muito interessante este post e parabéns pela iniciativa de compartilhar conosco.

    ResponderExcluir
    Respostas
    1. Exatamente Prof. Paulo Sérgio, a aritmética modular é a "chave" para esse método.

      Até mais !

      Excluir
  3. Olá Diego,
    Você diz:
    "De fato, existe uma regra para determinarmos o dia da semana de qualquer data entre 01 (1º) de Janeiro de 1900 até 2399. Basta seguir os seguintes passos:

    Passo 2: Calcule quantos 29 de Fevereiro existiram depois de 1900. Para isso, basta dividir por 4 o valor de A, sem considerar o resto da divisão. Chamaremos esse valor de B. Caso seja ano bissexto e a data for anterior ou igual a 29 de Fevereiro, considere então B-1."

    Para os anos de 2100 e 2300 o passo 2 falha, haja vista que 4 divide 2100 e 2300, mas 2100 e 2300 não são bissexto.
    Abraços
    Sebá

    ResponderExcluir
    Respostas
    1. Na verdade para calculo com anos que terminam em '00' é diferente, peguei este site como referencia:
      http://ciencia.hsw.uol.com.br/ano-bissexto1.htm
      Quando o ano terminar em '00', você deve dividi-lo por 400, se der resto 0 é bissexto, caso contrario não é.
      Ou você pode contar os '00' e fazer direto 21 dividido por 4 (no caso do ano 2100) e você verá que 21 não é divisível por 4, portanto não é bissexto.
      Não existe erro, apenas uma falta de informação quanto ao calculo do ano bissexto.

      Excluir
    2. Fabio Arruda todo ano terminado em 00 é bissexto a cada 100 anos temos 25 anos bissextos então 2000 é bissexto, 2100, 2200, 2300, 2400, 2500, 2600,2700, e assim por diante, para saber se um ano é bissxto basta dividir os 2 ultimos numeros por 4 se der resto 0 é bissexto.

      Excluir
    3. Fabio Arruda está certo.

      Excluir
    4. está errado, nem sempre essa teoria se aplica
      veja isso: http://pt.wikihow.com/Descobrir-se-um-Ano-%C3%A9-Bissexto

      Excluir
    5. Nosso calenário veja a cada 400 anos. Tudo o ano divisivel por 4 é bissexto. Exceto os os anos com vinais 00 que não sejam divisiveis por 400.
      Ex. Ano de 1.700, 1800, 1900 não foram bissextos. O ano 2.000 já foi bissexto. Logico dizer que 2.100, 2.200, 2300 não vai ser e 2.400 vai.
      Quem criou o calenadario previu 97 bizzextos em 400 anos. Com isso o tempo e o espaço se veja com o calendario solar. É logico que o assunto tem mais historias ... abraços...

      Excluir
    6. Formúla para calcular qualquer ano. desde 5 agosto 1.583 ate o Fim do mundo.

      ((DIA+(MES*2,6-0,02)INT+(XX+XX/4)INT+YY)/7)INT)*7

      VAI ENCONTRAR OS NUMEROS DE 0 A 6 OU PROXIMOS

      ONDE 0=DOMINGO 1=SEGUNDA 2=TERÇA 3=QUARTA 4=QUINTA 5=SEXTA = 6=SABADO

      NÃO SE ESQUEÇA QUE DO MES 3 A 12 DIA 10 PARA MES

      JANEIRO E FEVEREIRO MAIS 10 .

      PORQUE O ANO COMEÇA DIA 1 MARÇO E VAI ATE 28 OU 20 FEVEREIRO DO ANO SEGUINTE.
      POIS FAÇO O CALCULO PENSANDO SOLAR.

      Excluir
    7. Eu entendi tudo e sei de cor, - ate mesmo os números de cada mês. Agora o que vcs não sabe é que a cada 28 anos o calendário é o mesmo ou seja, vc pode substituir por 28 ou múlt dele ( 56, 84, 112,140...) pra ficar + fácil, e tem outra coisa ao chegar no 4 pede pra tirar 1, e se por 1: veja ao inves de tirar 1 (dia-1) vc aumentar 1 ( dia + 1) você estará aumentando 2, assim > no final resto 0 é (=sab.)/ resto 1= dom./ 2= seg. e assim vai até 6 q. é sexta.
      Isto com o que foi publicado. por exemplo: 25/12/2012 pega 2012 -1900= 112 (ano)+ 28 é (ano/4) + (mês) 5 + 26 (dia+1) > = 112+28+5+26 = 171 ou ignore o 112 e o 28 pois são múltiplos de 28 e de 171 cai pra 31 e pode cair pra 3 , logo TER . Uma outro coisa, pra mim não tem essa de ano bissexto - ele errou nisso -.. Eu aproveito e falo pro meu amigo Alfredo eu gostaria de entender a história dele com algum exemplo dado, assim ficaria melhor.

      Excluir
  4. Olá Diego, tenho uma dúvida...
    Se ao final dos passos a divisão por 7 for exata, o que posso fazer? Existe algum outro passo?

    ResponderExcluir
    Respostas
    1. Caro leitor,
      Quando a divisão por 7 for exata então o resto é ZERO, logo pela tabela temos SEGUNDA-FEIRA.

      Excluir
    2. eu to calculando aqui, nasci dia 07/06/1993 e valor da 0 só que pelo calendário e domingo e nao segunda como a explicação esta falando.

      Excluir
    3. Oi.Existe o método valpiniano.para qualquer dsta.
      Baseado em chaves
      07/06/1993
      Dia 7 + 5(chave de junho)+0(Cv século)+4(Cv ano)= 16-14(múltiplos de 7)=2 que é segundo dis da semana ou segunda feira. Valpinio Fabio.abraços

      Excluir
  5. Logica do ano bissexto:
    Todos os anos que sejam múltiplos de 4 mas que não sejam múltiplos de 100, com exceção daqueles que são múltiplos de 400, são bissextos

    ResponderExcluir
  6. Onde eu encontro o código para esse gadget?

    ResponderExcluir
  7. Diego, vc deve ter apreciado o filme "numb3rs",então!
    Grande abraço!
    Wilson C. Raauvendaal

    ResponderExcluir
  8. Se considerarmos o texto, quando diz para dividir por 4 e "se for ano bissexto".... Não vejo como se tivesse dito que a divisão por 4 já daria se o ano é ou não bissexto, mas que" se for bissexto.. " proceda como se segue..... Hehehe! Como foi mostrado, para determinar se o ano é ou não bissexto, tem cálculo/procedimento próprio!

    ResponderExcluir
  9. Uma outra dica sobre ano bissexto. Todo ano bissexto é ano de jogos olímpicos.

    ATT
    Walter

    ResponderExcluir
  10. Como o valor da tabela mês é calculado?

    ResponderExcluir
    Respostas
    1. A tabela mês pode ser obtida pela seguinte fórmula:

      Nº mês = [[ 2.m + {3.(m+1)/5} + 2]]/7 ( o valor é o resto da divisão)

      Traduzindo literalmente seria. Número a ser atribuído ao mês é igual a 2 vezes o número do mês (como expressamos em datas), somado a 3 vezes o numero do mês mais 1 dividido por 5, somados a 2, o resultado dividido por 7. O valor será o resto da divisão.

      Mas atenção, esta formula não se aplica aos meses de janeiro e fevereiro.

      Excluir
  11. Achei o blog procurando pela minha data de nascimento. Você também nasceu em 17/07/1986, Diego?

    ResponderExcluir
  12. ola , um desafio diegoo...
    se hoje dia 4 de abril de 2014 cai numa sexta feira , 2014 dias depois caira em uma... seg ter quarta quinta sex sab ou dom

    ResponderExcluir
    Respostas
    1. Olá Anônimo, esse desafio é relativamente simples, observe inicialmente que daqui a 7 dias será sexta novamente, daqui a 14 sexta de novo, assim, para saber em que dia da semana será 2014 dias depois basta dividir esse número por 2014 e considerar o resto, assim se sobrar 2 saberemos que basta contar mais dois dias para frente, assim será domingo.
      Mas vejamos, 2014 dividido por 7 dá 287 e resto 5, ou seja, se passaram 287 sextas e mais 5 dias, então basta contar que dia da semana será daqui a 5 dias, nesse caso será quarta.
      Assim a resposta para o seu desafio é Quarta.
      Até mais!

      Excluir
  13. Muito Jóia cara. ótimo para utilizar como modelo para fazer um programa java no Net Bens para quem está iniciando.

    ResponderExcluir
  14. Considerando que a cada 4 anos temos anos bissextos, sendo estes os anos múltiplos de 4 ou 400 , com excessão dos anos de fim de século ,esses sendo bissextos apenas a cada 400 anos...(2000,2400,2800...) , podemos usar outra regra pra anos do mesmo século ou anos de séculos diferentes com encerramento em ano bissexto pro primeiro século , o tipo de ano que estamos , por exemplo , 02 de maio de 2014 caiu em uma sexta feira , como 2014 foi ano de copa(copa do mundo apenas é referencia , na verdade seria um ano comum par não secular , mas considerando q todas as copas do mundo acontecem nesse tipo de ano , vamos chamar esses anos de ano de copa...),então 02 de maio só cairá novamente na sexta em 2025 , ano de copa das conf.(novamente , apenas referencia...),depois 02 de maio será na sexta em 2031 , ano de copa américa(novamente apenas referencia) , depois será em 2036,ano olimpico(apenas referencia...),depois em 2042 ano de copa...,pra datas de 01/01 até 28/02 , a regra é depois de ano de copa américa,11 anos,depois de copa do mundo,6 anos,depois de ano olimpico,5 anos,depois de copa das conf 6 anos

    ResponderExcluir
  15. Ainda não consegui entender por que acha chave do ano 1984 dá 0. Vc pode fazer o calculo passo a passo para que eu possa entender com clareza. Ficarei muito grato por isso.

    ResponderExcluir
    Respostas
    1. porque a chave do ano 84 dá 0. É assim meio sem lógica. Ou eu devo está enganado. Responde aí pra mim Diego Sousa. Desde já agradeço pela sua intenção.

      Excluir
    2. Eu - hoje mesmo anunciei q. A cada 28 anos o calendário é o mesmo , sabia disso, não , então fique sabendo . Isto com o 1900 como referência. Agora vamos a 1 ex: se nasci em 19/11/1984 84 já é múltiplo de 28, então vc pode ate ignorar pois ( 1900 = 1928= 1956 = 1984..+28) poderia ser um outro ponto de referência para este caso , logo é só vê o mês + o dia , assim, Nov. = 3 (= fev. e Mar.) + dia +1 ( assim seg é 2 , ter. É 3, quar. È 4 ate 6 =sex. / 0 sáb. E Dom. = 1) ,então dia+1= 20 é o meu jeito > somando 3+20=23 /7 = resto 2, resp. segunda. se for dia -1 segue o q. fala acima no link. Ex: se de 0=segunda- feira. sabe pq. é pq dia +1 tem 2 a mais veja, (19+1=20) pois dia-1 (19-1= 18). Vê e aprende agora. Eu sou Cássio / BH- MG.

      Excluir
  16. não tem problema isso quer dizer que o resto é zero, logo basta somar zero

    ResponderExcluir
  17. http://www.lisbrasil.com/pagina/calend%C3%A1rio-permanente aqui esta o calendário permanente vai ensinando como calcular.

    ResponderExcluir
  18. http://www.lisbrasil.com/pagina/calend%C3%A1rio-permanente

    ResponderExcluir
  19. De onde você tirou esses números das tabelas ?

    ResponderExcluir
  20. O algoritmo funciona, mas a calculadora disponível on-line está fornecendo o dia errado. Está dando como resposta o dia posterior ao correto. Faça uns testes. ;)

    ResponderExcluir
  21. Nasci na quarta-feira, no dia 30 de maio de 2001!

    ResponderExcluir
  22. Eu tenho um método melhor que eu mesmo fiz, é mais rápido.

    ResponderExcluir
    Respostas
    1. Que ótimo! Você mesmo criou o método? Gostaria de aprender esse novo método, o blog está a disposição para atendê-lo!
      Até mais !

      Excluir
  23. Rapaz, eu conheci um fela da puta que fazia isso... descobria a idade de todo mundo! Eu achava q era macumba... mas o cara é um gênio.

    ResponderExcluir
  24. Parabéns pelo post, Diego.
    Como sugestão, para datas no século XXI, use como referência o dia 01 de janeiro de 2001... Assim a conta fica mais fácil de fazer!

    ResponderExcluir
  25. gente afinal, 2096 é bissexto porque 2100 também não é? Se os bissextos acontecem a cada 4 anos? Alguem pode matematicamente provar que 2100 não é bissexto?

    ResponderExcluir
    Respostas
    1. A definição de ano bissexto é:

      "Os anos bissextos são múltiplos de 4, não múltiplos de 100 (1900 não é bissexto) e múltiplos de 400 (2000 é bissexto)."

      Como 2100 é múltiplo de 100 e não é múltiplo de 400, então 2100 não é bissexto (mesmo sendo múltiplo de 4), pois a definição é essa.

      Até mais !

      Excluir
  26. A unica logica do caminho mais curto e a ultima tabela, comecando segunda feira pelo zero, e dando continuidade sem precisar fazer essas contas todas, domingo termina em seis, quem nasceu por exemplo no dia 10 e so dar continuidade na referida tabela no caso quinta-feira, respectivamente

    ResponderExcluir
  27. Passo 2: Calcule quantos 29 de Fevereiro existiram depois de 1900. Para isso, basta dividir por 4 o valor de A, sem considerar o resto da divisão. Chamaremos esse valor de B. Caso seja ano bissexto e a data for anterior ou igual a 29 de Fevereiro, considere então B-1.

    Boa tarde!
    Quando disse assim...
    Caso seja ano bissexto e a data for "anterior" ou igual a 29 de fevereiro.. considere então B-1.

    Esse "Anterior" eu não consigo intender. Montei a fórmula aqui mas o valor não da certo.

    Alguém por uma grande gentileza poderia me ajudar.


    ResponderExcluir
  28. 19 de fevereiro de 1972 foi um Sábado e o algoritmo automático devolve Domingo

    ResponderExcluir
  29. alguém pode me ajudar por favor, obrigada
    como faco para descobrir o mês do ano que nasci pois fui registrada com data errada e existe um empasse se nasci em 24 de junho ou 24 de julho de 1969 e meu registro e datado de 10 de setembro. meu e-mail iliane_analista@hotmail.com

    ResponderExcluir
  30. não consegui assimilar essa formula que me foi sugerida se foi em resposta a minha pergunta.....me desculpe....

    ResponderExcluir
  31. acho que essa fórmula tem que ser reavaliada, se você testar em um mês de 31 dias de um ano bixesto, o resultado erra o dia. Mostra sempre dia seguinte.

    ResponderExcluir
  32. Por que só funciona para as datas entre 1900 e 2399? Conhece como calcular para outras datas fora desse intervalo?

    ResponderExcluir
  33. Diego... 129/7 = 18,4..... E não 18,3
    Deu errado, tentei passar as fórmulas para o computador..e com este erro, logicamente ferra tudo :/

    ResponderExcluir
  34. esquece... Eu peguei o 'resto' que seria o decimal.. mas é o resto da divisão comum.. foi mal

    ResponderExcluir
  35. Este comentário foi removido pelo autor.

    ResponderExcluir
  36. Boa tarde! Gostei da postagem. Quero saber se tem uma explicação para a tabela dos meses, por que apresenta esses números?

    ResponderExcluir
  37. Bom dia!
    Estou tendo dificuldade para fazer uma questão , será que você poderia me ajudar a fazer e calcular?
    O problema me dá a data de 07/10/2013, afirmando que era uma segunda feira; ele está me perguntando qual o dia que caiu a primeira segunda feira de janeiro? Me orienta como farei para achar está data ?

    ResponderExcluir
    Respostas
    1. Conte quantos dias já passaram a partir de 1º de Janeiro, depois basta dividir a quantidade de dias por 7 e tomar o resto (por exemplo, se o resto for 3 isso quer dizer 07/10 é exatamente 3 dias depois do dia da semana de 1º de janeiro, assim, como 07/10 é segunda, 01/01 seria sexta e portanto a primeira segunda do ano seria no dia 04/10).

      Agora, basta fazer as contas e dizer o que você encontrou.

      Espero ter ajudado.

      Excluir
  38. Não deu certo para a data 18/05/2001

    O resultado mostra que é num sábado mas na verdade caiu numa sexta feira

    Fiz algo errado?

    ResponderExcluir
  39. 12 de Abril de 2002. Sempre pela fórmula dá sábado. Mas no calendário consta como sexta-feira.

    Alguém pode me ajudar?

    ResponderExcluir

Você pode inserir suas fórmulas e equações no formato $\LaTeX$ nos comentários, basta escrevê-lo entre os símbolos $ \$ \ldots \$ $. Por exemplo, se você deseja escrever a seguinte fórmula:

$\lim_{x\to\infty}f(x)=0$

basta digitar a seguinte fórmula:

$ \$ $ \lim_{x\to\infty}f(x)=0 $ \$ $
(Um exemplo mais simples: $x^2=a$ é escrito como \$ x^2=a \$).

Agora é com você, comente à vontade, seu comentário é uma ferramenta fundamental para o crescimento do Giga Matemática!!!