Desafío:
Genere los 'dígitos enteros' de una de las siguientes seis tablas aritméticas basadas en la entrada:
- suma ( +
);
- resta ( -
);
- multiplicación ( *
);
- división ( /
);
- exponenciación ( ^
);
- operación de módulo ( %
).
Reglas:
- Lo defino como 'enteros-dígitos': todos los resultados del operando aritmética que es exactamente uno de los siguientes:
0
,1
,2
,3
,4
,5
,6
,7
,8
,9
. Esto significa que excluye cada resultado de10
o superior, cada resultado de-1
o inferior, y cada resultado no entero. ¿Cómo calculamos los resultados aritméticos? Al usar primero el dígito superior y luego usar el operando con el dígito izquierdo.¡Se le permite hacer esto al revés (es decir, eny/x
lugar dex/y
), siempre y cuando sea consistente para las seis salidas! (Por lo tanto, no puede usary-x
yx/y
en la misma respuesta) †- No mostraremos nada para dividir por 0 casos de prueba (para las tablas de operación de división y módulo)
- No enviaremos nada para el caso de borde
0^0
.
Salida:
Por lo tanto, envíe lo siguiente (el formato de tabla es algo flexible (ver más abajo): por lo que las líneas son opcionales y se agregan principalmente para facilitar la lectura de los casos de prueba):
Adición:
+ | 0 1 2 3 4 5 6 7 8 9
-----------------------
0 | 0 1 2 3 4 5 6 7 8 9
1 | 1 2 3 4 5 6 7 8 9
2 | 2 3 4 5 6 7 8 9
3 | 3 4 5 6 7 8 9
4 | 4 5 6 7 8 9
5 | 5 6 7 8 9
6 | 6 7 8 9
7 | 7 8 9
8 | 8 9
9 | 9
Sustracción:
- | 0 1 2 3 4 5 6 7 8 9
-----------------------
0 | 0 1 2 3 4 5 6 7 8 9
1 | 0 1 2 3 4 5 6 7 8
2 | 0 1 2 3 4 5 6 7
3 | 0 1 2 3 4 5 6
4 | 0 1 2 3 4 5
5 | 0 1 2 3 4
6 | 0 1 2 3
7 | 0 1 2
8 | 0 1
9 | 0
Multiplicación:
* | 0 1 2 3 4 5 6 7 8 9
-----------------------
0 | 0 0 0 0 0 0 0 0 0 0
1 | 0 1 2 3 4 5 6 7 8 9
2 | 0 2 4 6 8
3 | 0 3 6 9
4 | 0 4 8
5 | 0 5
6 | 0 6
7 | 0 7
8 | 0 8
9 | 0 9
División:
/ | 0 1 2 3 4 5 6 7 8 9
-----------------------
0 |
1 | 0 1 2 3 4 5 6 7 8 9
2 | 0 1 2 3 4
3 | 0 1 2 3
4 | 0 1 2
5 | 0 1
6 | 0 1
7 | 0 1
8 | 0 1
9 | 0 1
Exponenciación:
^ | 0 1 2 3 4 5 6 7 8 9
-----------------------
0 | 1 1 1 1 1 1 1 1 1
1 | 0 1 2 3 4 5 6 7 8 9
2 | 0 1 4 9
3 | 0 1 8
4 | 0 1
5 | 0 1
6 | 0 1
7 | 0 1
8 | 0 1
9 | 0 1
Módulo:
% | 0 1 2 3 4 5 6 7 8 9
-----------------------
0 |
1 | 0 0 0 0 0 0 0 0 0 0
2 | 0 1 0 1 0 1 0 1 0 1
3 | 0 1 2 0 1 2 0 1 2 0
4 | 0 1 2 3 0 1 2 3 0 1
5 | 0 1 2 3 4 0 1 2 3 4
6 | 0 1 2 3 4 5 0 1 2 3
7 | 0 1 2 3 4 5 6 0 1 2
8 | 0 1 2 3 4 5 6 7 0 1
9 | 0 1 2 3 4 5 6 7 8 0
Reglas de desafío:
- Las nuevas líneas y los espacios finales son opcionales
- Las líneas horizontales y verticales en los casos de prueba son opcionales. Solo los agregué para una mejor legibilidad.†
- Los espacios entre cada resultado NO son opcionales.
- El símbolo de la aritmética puede ser diferente, siempre que esté claro cuál es. Es decir
×
o en·
lugar de*
para multiplicación;÷
en lugar de/
por división; etc. †
Y mientras sea un solo personaje, lo siento, Python**
. - El formato de entrada es flexible. Puede elegir un índice de 0-5 o 1-6 para las seis tablas correspondientes; puede ingresar el operando-símbolo; etc. (A diferencia de lo que muestra en el resultado, puede ingresar cadenas completas, o
**
en el caso de Python). ¡
Solo asegúrese de indicar qué formato de entrada usa en su respuesta!
Reglas generales:
- Este es el código de golf , por lo que la respuesta más corta en bytes gana.
No permita que los lenguajes de código de golf lo desalienten de publicar respuestas con idiomas que no sean de código. Trate de encontrar una respuesta lo más breve posible para 'cualquier' lenguaje de programación. - Se aplican reglas estándar para su respuesta, por lo que puede usar STDIN / STDOUT, funciones / método con los parámetros adecuados, programas completos. Tu llamada.
- Las lagunas predeterminadas están prohibidas.
- Si es posible, agregue un enlace con una prueba para su código.
- Además, agregue una explicación si es necesario.
† Ejemplo de salida válida sin líneas horizontales y verticales, ÷
como símbolo, y usando en y/x
lugar de x/y
:
÷ 0 1 2 3 4 5 6 7 8 9
0 0 0 0 0 0 0 0 0 0
1 1
2 2 1
3 3 1
4 4 2 1
5 5 1
6 6 3 2 1
7 7 1
8 8 4 2 1
9 9 3 1
1
, otros 0
, otros algo más para 0^0
dividir / mod 0, pero tendrá que evitar eso. En cuanto a su segunda pregunta: Sí, claro, siempre que los dígitos sigan en las mismas columnas / filas, puede usar tantos espacios como desee.
y-x
, y/x
, y^x
y y%x
en lugar de x-y
, x/y
, x^y
y x%y
? Hmm, supongo que eso podría estar bien. Lo editaré en la respuesta; siempre y cuando sea consistente para los seis (de modo que no y-x
y x/y
en la misma respuesta).