Setembro de 1993 é conhecido na Usenet como o setembro que nunca terminou. Assim, por exemplo, o dia em que esta pergunta está sendo publicada é sábado, setembro de 8740, 1993.
Seu programa ou função deve ter como entrada qualquer data gregoriana (com ano positivo) e retornar a mesma data que a saída, se for anterior a setembro de 1993 ou a data do calendário de setembro de 1993, posteriormente.
Você pode aceitar AAAA-MM-DD, AAAA / MM / DD, MM / DD / AAAA, DD / MM / AAAA, D-Monthnameabbr-AAAA ou qualquer outro formato popular que utilize a totalidade do ano (em oposição ao ano módulo 100). Você só precisa aceitar um desses formatos, de sua escolha. O formato de saída deve corresponder ao formato de entrada.
Entrada de amostra → saída:
- Domingo, 6 de agosto de 2017 → domingo, 8741 setembro de 1993
- Terça-feira, 28 de janeiro de 1986 → terça-feira, 28 de janeiro de 1986
Ou:
- 2017-08-06 → 1993-09-8741
- 1986-01-28 → 1986-01-28
No interesse de respostas mais interessantes, o uso de uma função interna projetada para essa finalidade (como o sdate
comando UN * X ) não é permitido. Além disso e das exceções padrão , isso é golfe, então a resposta mais curta vence.