Factorádico
Pase enteros al sistema factorádico y vuelva: 23 es 3:2:1:0, que también se escribe 3210!, porque tres veces 3! más dos veces 2! más una vez 1! suman 23. Cada posición se comprueba contra su cifra máxima. Gratis en su navegador.
- Gratis
- Funciona en su navegador
- Sin registro
- Sus datos no salen de su equipo
Ejecutar — gratis
Ejemplo resuelto
- Valor
- 23
- Valor
- 23
- Modo de cálculo
- To factoradic
- Entrada
- 23
- Decimal
- 23
Esta capacidad implementa conversor factorádico de forma determinista en el motor parse. Introduce el texto o valor, elige el modo si aplica, y obtiene la conversión exacta sin red.
Contar con factoriales en lugar de potencias
En base diez cada posición vale diez veces más que la anterior. En el sistema factorádico cada posición vale un factorial: la primera por la derecha vale 0!, la siguiente 1!, luego 2!, 3! y así sucesivamente. Además, la cifra de cada posición no puede ser mayor que su índice: en la posición cero solo cabe el 0, en la primera el 0 o el 1, en la segunda del 0 al 2. Con esa regla cada entero no negativo tiene una única escritura, igual que en base diez. Por ejemplo, 23 es tres veces 3! más dos veces 2! más una vez 1! más cero veces 0!, es decir, 3:2:1:0, que en forma compacta se escribe 3210!. La herramienta muestra ese desglose para que pueda comprobar la cuenta.
Para qué sirve y los errores habituales
El sistema factorádico es la base de la ordenación de permutaciones: el código de Lehmer de una permutación es un número factorádico, y por eso se usa en concursos de programación, en clases de combinatoria y al numerar todas las ordenaciones posibles de una lista. El error más común es escribir una cifra mayor que su posición, por ejemplo un 3 en la posición dos; la herramienta lo rechaza en lugar de corregirlo a escondidas. También conviene indicar siempre el sentido de la conversión, porque 23 puede ser un decimal o una lista de cifras, y la herramienta no adivina. No admite negativos, fracciones ni notación científica, y trabaja con hasta cuarenta posiciones.
Qué hace
Los codificadores y conversiones de base son búsquedas frecuentes en ingeniería y educación. conversor factorádico aplica decimal↔factoradic con validación estricta de entrada. No hay estado ni reloj. El formulario web expone los campos de params con etiquetas en ocho idiomas.
Cómo funciona
Los campos opcionales se omiten en lugar de devolver null. Los límites declarados en params y cap.json se aplican en el código. El humo de cómputo usa la ruta real del runtime web.
Así se evita el fallo de se ve pero no computa en la web gratis.
Cuándo usarla
Use conversor factorádico cuando necesite la conversión exacta descrita, no un paquete criptográfico completo. No sustituye cifrados con clave ni compresión general. Combine con otras utilidades enc.* si construye un laboratorio de codificación.
Documente en su producto los límites de tamaño y los modos admitidos. Conserve los límites de tamaño y los modos documentados cuando integre esta capacidad en un producto o en un taller docente.
Qué puede hacer con ella
Clases que demuestran conversor factorád
Clases que demuestran conversor factorádico.
Utilidades de pipeline de texto.
Utilidades de pipeline de texto.
Preguntas frecuentes
¿Cómo paso 23 a factorádico a mano?
Divida entre 1, 2, 3 y así sucesivamente, anotando cada resto y siguiendo con el cociente. Para 23 los restos son 0, 1, 2 y 3; leídos del último al primero dan 3:2:1:0.
¿Cómo convierto un número factorádico a decimal?
Multiplique cada cifra por el factorial de su posición y sume: en 3210! eso es 18 más 4 más 1 más 0, es decir, 23. Puede separar las cifras con dos puntos, espacios o comas, o usar la forma compacta con signo de exclamación.
¿Por qué la última cifra factorádica siempre es 0?
Porque la posición menos significativa vale 0!, y en cada posición la cifra no puede superar su índice. En la posición cero la única cifra posible es el 0, así que todo número factorádico termina en 0.
¿Qué relación tiene el sistema factorádico con las permutaciones?
El código de Lehmer de una permutación es, en esencia, un número factorádico, de modo que cada una de las n! ordenaciones recibe su propio rango sin huecos ni repeticiones. Al pasar un rango a factorádico obtiene su código de Lehmer, y al revés.
Herramientas relacionadas
Para desarrolladores — acceso por API
Todo lo de esta página está disponible por programación. Esta sección es para equipos que quieren integrarlo en sus sistemas; el resto puede usar la herramienta de arriba sin más.
Endpoint de API
¿Prefiere automatizarlo? Un POST autenticado crea la tarea; el resultado llega por webhook o enlace firmado. La misma capacidad también se ejecuta aquí en la web, por email y desde Telegram — y pronto también desde nuestra app.
Llámela desde su stack
curl -X POST https://api.kit.forhosting.com/enc/factoradic \
-H "Authorization: Bearer $KIT_KEY" \
-H "Content-Type: application/json" \
-d '{"value":"23"}'const res = await fetch("https://api.kit.forhosting.com/enc/factoradic", {
method: "POST",
headers: {
"Authorization": `Bearer ${process.env.KIT_KEY}`,
"Content-Type": "application/json"
},
body: JSON.stringify({
"value": "23"
})
});
const { task_id } = await res.json();import os, requests
res = requests.post(
"https://api.kit.forhosting.com/enc/factoradic",
headers={"Authorization": f"Bearer {os.environ['KIT_KEY']}"},
json={
"value": "23"
},
)
task_id = res.json()["task_id"]<?php
$res = file_get_contents("https://api.kit.forhosting.com/enc/factoradic", false, stream_context_create([
"http" => [
"method" => "POST",
"header" => "Authorization: Bearer " . getenv("KIT_KEY") . "\r\nContent-Type: application/json",
"content" => '{"value":"23"}',
],
]));
$task = json_decode($res, true);body := bytes.NewBufferString(`{"value":"23"}`)
req, _ := http.NewRequest("POST", "https://api.kit.forhosting.com/enc/factoradic", body)
req.Header.Set("Authorization", "Bearer "+os.Getenv("KIT_KEY"))
req.Header.Set("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)Ejemplo de solicitud
{
"value": "23"
}Ejemplo de respuesta
{
"task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
"type": "enc.factoradic",
"status": "queued",
"_links": {
"result": "/tasks/tsk_…/result"
}
}La API es asíncrona: la llamada devuelve un task_id al instante y el resultado llega por webhook. El polling está limitado a 1 req/s por tarea.
Precio
Precio publicado — sin tokens ni créditos inventados. Una tarea fallida no se cobra.
Límites
max_places | 40 |
Errores
| HTTP | Código | Significado |
|---|---|---|
401 | unauthorized | API key ausente o inválida. |
402 | insufficient_balance | El saldo no cubre el precio de la tarea. |
404 | unknown_type | El tipo de tarea no existe. |
429 | rate_limited | Demasiadas peticiones. Use el webhook en vez de sondear. |
Notas técnicas
Precio de API $0.002 por solicitud correcta; la web gratuita usa el mismo núcleo.
Qué hace
Los errores tipados invalid_input evitan salidas silenciosas incorrectas.
Cómo funciona
Tras validar los campos, el núcleo ejecuta la transformación y devuelve un objeto JSON estable.
Cuándo usarla
API a $0.002; sin suscripciones. Además, el contrato de entrada documenta alias aceptados y valores por defecto, de modo que formularios y clientes API puedan enviar los mismos campos con nombres distintos sin divergir en el resultado.
Casos de integración
Pruebas unitarias de codificación.
Pruebas unitarias de codificación.
Preguntas técnicas
¿Es determinista?
Sí: misma entrada, misma salida.
¿Usa red o IA?
No; solo parse en el dispositivo o Worker.
¿Qué pasa con entrada inválida?
invalid_input con mensaje claro.
¿Precio?
La API cobra $0.002 por éxito; la web es gratis.
¿Hay widget?
Sí, tier A con la misma lib.js.