Reto
Extrañamente, esto aún no se ha hecho: muestra la fecha actual.
Reglas
El formato de fecha que debe seguir es el siguiente:
YYYY-MM-DD
Donde el mes y el día deben rellenarse con ceros si son menores de 10.
Por ejemplo, si el programa se ejecuta el 24 de mayo de 2017, debería generar
2017-05-24
La fecha puede estar siempre en UTC o en la fecha local.
Debes manejar saltos años. es decir, en años bisiestos, febrero tiene 29 días pero 28 días en un año normal.
Victorioso
El código más corto en bytes gana.
Respuestas:
Bash ,
167 bytes-8 bytes gracias a Neil (y fergusq) (no se requiere tubería para la salida)
-1 byte gracias a 12431234123412341234123 (¡use la opción integrada con bandera
-I
!)Pruébalo en línea!
fuente
echo $(...)
?date
salidas ya, la salida se canaliza a stdout. No necesita canalizarloecho
, lo que lo canaliza a stdout. Pruébalo en línea!echo
, al menosecho `date +%F`
.-I
?PHP, 17 bytes
fuente
YYYY-MM-DDThh:mm:ss+hh:mm
también es una fecha con formato ISO 8601 y estos 11 bytes:<?=date(c);
imprime todo. ;)<?=strstr(date(c),T,1);
darle una pequeña oportunidad al formato cJapt , 6 bytes
Pruébalo en línea!
Explicación:
fuente
Bash, 15 bytes
Ejecución de muestra:
Pruébalo en línea!
fuente
T
.JavaScript (ES6), 34 bytes
fuente
_=>new Date().toJSON().slice(0,10)
SQLite, 13 caracteres
Buen chico, SQLite. Otros dialectos de SQL generalmente necesitan
current_date
odate(now())
.Ejecución de muestra:
fuente
curdate
Mathematica, 20 bytes
fuente
Perl 6 ,
1412 bytesIntentalo
Intentalo
fuente
Excel, 24 bytes
Excel seguirá haciendo un año de 4 dígitos con solo 3
y
's.fuente
")
. Excel no lo hará. Se va a añadir el)
de la final, pero sólo después de que le pide que lo que requeriría la entrada del usuario adicional y conducir la puntuación de nuevo. 24 bytes es probablemente la respuesta más breve de Excel a menos que permitamos la configuración regional utilizando el formato de fecha ISO de forma predeterminada y eso está en debate .R , 10 bytes
Pruébalo en línea!
fuente
sys.date
ya es una función, no tiene que agregar el()
, por lo que solo son 8 bytes :)Sys.Date
es una función, por lo que sería suficiente como solución. No es necesario llamarlo explícitamente.Sys.Date
hace la salida por ti. Es similar a cuando tiene una solución que comienza confunction(x)
, tampoco termina con una llamada explícita. Es solo cómo se puntúan los incorporados.Lua, 18 personajes
Ejecución de muestra:
Pruébalo en línea!
fuente
Alice , 9 bytes
Pruébalo en línea!
Explicación
Dejaré el flujo de control exacto como ejercicio para el lector, pero el código linealizado que se ejecuta en modo Ordinal es:
Y esto es lo que hace:
Una forma en que esto podría ser golfable es reutilizar
%
para terminar el programa en modo Cardinal con una división por cero, pero el único diseño que he encontrado es el siguiente:Pero aquí, el
%
realmente no termina el programa, porque presionamos 111 ('o
) de antemano para que nunca haya una división por cero.En principio, también podría ser posible reutilizar
%
para deshacerse de él;
, ya que tratar de dividir la fecha alrededor de la hora simplemente descartará la hora.fuente
SmileBASIC 3, 29 bytes
SB tiene una cadena de fecha integrada ... ¡pero está en el formato incorrecto! Utiliza barras en lugar de guiones, no sirve. Además, al ser el BASIC que se respeta a sí mismo, no existe una función de reemplazo global. Supongo que tengo que hacerlo yo mismo ...
fuente
VBA,
525 bytesimpredecible, dependiente de la configuración de fecha corta del sistema?Date
Salida:
fuente
. The default format for this is
M / D / YYYY` y, por lo tanto, esto para la salida de laDate
función es5/25/2017
. Para corregir esto, su respuesta debería estar envuelta en unaFormat
llamada.?format(now,"yyyy-mm-dd")
el usonow
es más corta quedate
Prólogo (SWI) , 46 bytes
Pruébalo en línea!
fuente
QBIC , 33 bytes
Explicación:
fuente
CJam ,
2215 bytesPruébalo en línea!
-7 bytes gracias a Challenger5.
Explicación:
fuente
e[
(matriz de pad) para 15 bytes:et3<{sY0e[}%'-*
Python 2, 40 bytes
fuente
Ir ,
6256 bytesPruébalo en línea!
fuente
Oracle SQL, 46 bytes
fuente
Powershell,
2617 bytesGracias a @ConnorLSW por los 9 bytes.
fuente
date -f 'yyyy-MM-dd'
Ruby, 23 bytes
Imprime la hora local.
fuente
p Time.now.to_s[0..9]
MATLAB / Octave ,
2515 bytesPruébalo en línea!
La función incorporada
now
devuelve la fecha actual del sistema en un formato serial MATLAB extraño.datestr
formatea el extraño formato de serie en una cadena de un formato solicitado, que es en este caso'YYYY-mm-dd'
. Resulta que MATLAB tiene una lista de formatos predefinidos paradatestr
. ISO8601 es uno de ellos y está representado por el número 29, que permite un ahorro de 10 bytes.fuente
Pitón 2 ,
5340 bytes-10 bytes gracias a Gábor Fekete (ISO-8601 es el formato predeterminado para un objeto de fecha)
Pruébalo en línea!
¿Cómo?
datetime.date.today()
devolverá undatetime.date
objeto que contiene la información de la fecha local.print
imprimirá una representación de cadena de ese objeto, esto llamará al objeto__str__
función .De los documentos :
date.__str__()
: Para adate
d
,str(d)
es equivalente ad.isoformat()
.date.isoformat()
: Devolver unastring
que representa la fecha en la norma ISO 8601 de formato,‘YYYY-MM-DD’
. Por ejemplo,date(2002, 12, 4).isoformat() == '2002-12-04'
.fuente
import datetime;print datetime.date.today()
esto es solo 43 bytes y usa datetime. ¿Por qué se elimina la versión aún más corta?print
). Salvó a otros tres haciendo (el mal)import*
.print
tiempo eliminado y luego no borrado.Cristal ,
30 bytes24 bytes21 bytes-6 gracias a Nick Clifford
-3 de mirar la respuesta de snail_ en Ruby
Pruébalo en línea!
fuente
%F
. Además, ¡es bueno ver a Crystal en PPCG!Óxido, 84 bytes
fuente
C #,
4645 bytesSalvó un byte gracias a @raznagul.
fuente
Sytem
?System
espacio de nombres porque seguía haciendo el mismo error tipográfico ..."yyy-MM-dd"
también funcionará.Java 8,
2632 bytesFormato fijo gracias a Kevin Cruijssen
fuente
()->java.time.LocalDate.now().toString()
en su lugar. Por otra parte, puede jugar.toString()
al golf+""
, por lo que se convierte()->java.time.LocalDate.now()+""
en total ( 32 bytes ).C ++ 14,
143 bytes139 bytesTimtech me señaló que no necesito todos los espacios
¡Pruebame!
fuente
Rápido, 13 bytes
fuente