ForHosting KIT · Matemáticas

Código Fibonacci

Convierta cualquier entero positivo en su código Fibonacci: 6 pasa a ser 10011, formado por los sumandos 1 y 5. Todo código termina en 11, así que varios códigos seguidos se separan sin indicar longitudes: útil en ejercicios de compresión y diseño de protocolos. Gratis en su navegador.

  • Gratis
  • Funciona en su navegador
  • Sin registro
  • Sus datos no salen de su equipo
Úselo desde WebAPIEmailTelegramApp pronto
Si escribe
N
6
Obtiene
Código de Fibonacci
10011
Longitud en bits
5
Términos de Zeckendorf
1, 5

El código Fibonacci es un código binario universal que asigna a cada entero positivo una cadena de bits única que siempre termina en dos unos consecutivos. La construcción se apoya en el teorema de Zeckendorf: todo entero positivo es suma de números de Fibonacci no consecutivos de la sucesión que comienza uno, dos, tres, cinco, ocho, y así sucesivamente. Coloque un uno por cada sumando, un cero por cada término de base omitido desde F dos en adelante y añada un bit terminador final para que el código termine en once. Estudiantes de teoría de la información, deberes de compresión y diseñadores de protocolos que necesitan una codificación auto-delimitada de enteros usan este convertidor para comprobar ejemplos sin armar a mano la tabla de Fibonacci.

Qué es el código Fibonacci y por qué termina en 11

El código Fibonacci pertenece a la familia de códigos universales para enteros positivos: todo n mayor o igual que uno recibe una palabra binaria, y ninguna palabra código es prefijo de otra, de modo que un flujo de códigos se puede analizar sin prefijos de longitud. El hecho matemático clave es el teorema de Zeckendorf.

Usando la sucesión de Fibonacci escrita como F dos igual a uno, F tres igual a dos, F cuatro igual a tres, F cinco igual a cinco, y así sucesivamente (la sucesión habitual sin la primera duplicación del uno), todo entero positivo tiene una representación única como suma de términos no consecutivos de esa sucesión. La codificación coloca un bit bajo cada valor de base desde F dos hasta el mayor sumando que aparece: el bit es uno cuando se usa ese número de Fibonacci y cero en caso contrario.

Como Zeckendorf prohíbe dos unos consecutivos en los bits de base, el bit más alto usado es siempre uno y nunca va seguido de otro uno dentro de la base. Añadir un único uno terminador produce por tanto un final distintivo de dos unos consecutivos. Ese patrón es la señal de parada del decodificador: lea bits hasta ver once, quite el uno final y recupere la suma de Zeckendorf.

Los valores clásicos pequeños hacen el patrón concreto. Uno se codifica como once, dos como cero uno uno, tres como cero cero uno uno, cuatro como uno cero uno uno, cinco como cero cero cero uno uno y seis como uno cero cero uno uno. Un n mayor solo amplía la tabla de Fibonacci hasta el mayor Fk no superior a n, ejecuta la selección voraz desde arriba y emite la misma cadena terminada.

La longitud del código crece como O del logaritmo en base phi de n, de modo que incluso enteros seguros grandes siguen siendo cadenas de bits cortas aptas para demos, vectores de prueba y diapositivas sobre códigos de enteros libres de prefijo.

Comprobación de deberes de teoría de la información

Los estudiantes codifican a mano enteros positivos con tablas de Zeckendorf y verifican el código Fibonacci binario (siempre terminado en 11) frente a un oráculo determinista.

Demos de compresión y códigos universales

Los materiales de clase comparan la longitud del código Fibonacci con códigos de Elias en enteros de muestra y muestran el patrón terminador que hace el flujo libre de prefijo.

¿Cómo convierto un número a código Fibonacci?

Envíe un entero positivo n (n ≥ 1).

¿Por qué todo código Fibonacci termina en 11?

Los bits de Zeckendorf nunca terminan en dos unos consecutivos; se añade un terminador 1 tras el bit de base más alto (siempre 1), produciendo el patrón de parada 11 distintivo para decodificación única.

¿Qué ocurre si n es cero o negativo?

El código Fibonacci solo está definido para enteros positivos (n ≥ 1), y las solicitudes inválidas no se facturan.

¿Qué sucesión de Fibonacci usa el codificador?

La selección voraz produce la expansión de Zeckendorf única sin términos consecutivos.

¿Cuál es el código Fibonacci de 12?

12 se codifica como 101011. Sus sumandos de Zeckendorf son 1, 3 y 8, que suman 12, y el 1 final añadido forma el 11 de cierre que marca dónde termina el código.

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.

POSThttps://api.kit.forhosting.com/numth/fibonacci-coding

¿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.

curl -X POST https://api.kit.forhosting.com/numth/fibonacci-coding \
  -H "Authorization: Bearer $KIT_KEY" \
  -H "Content-Type: application/json" \
  -d '{"n":6}'
{
  "n": 6
}
{
  "task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
  "type": "numth.fibonacci_coding",
  "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.

Por solicitud$0.002

Precio publicado — sin tokens ni créditos inventados. Una tarea fallida no se cobra.

HTTPCódigoSignificado
401unauthorizedAPI key ausente o inválida.
402insufficient_balanceEl saldo no cubre el precio de la tarea.
404unknown_typeEl tipo de tarea no existe.
429rate_limitedDemasiadas peticiones. Use el webhook en vez de sondear.

El mismo algoritmo puro alimenta la herramienta gratuita del navegador y la ruta de API de pago, de modo que un ejemplo áureo de aula coincide byte a byte con la automatización de producción, sin modelo y sin red dentro del solucionador.

Contrato de entrada, campos de respuesta y errores

Ejemplo: n igual a uno produce el código mínimo once con un solo término de Zeckendorf igual a uno. Ejemplo: n igual a doce produce uno cero uno cero uno uno con sumandos uno, tres y ocho. Los clientes que solo necesitan la cadena de bits pueden ignorar los campos didácticos; correctores y cuadernos pueden comprobar el código y los sumandos para detectar errores de desfase en la tabla manual del alumno. La implementación es parse pura de nivel A: sin red saliente, sin azar y sin dependencia del reloj, de modo que el mismo n produce siempre la misma carga útil y es seguro fijarlo en pruebas áureas automatizadas. Envíe por POST un cuerpo JSON con un único campo obligatorio n: un entero positivo mayor o igual que uno. El valor puede llegar como número JSON dentro del rango de enteros seguros o como cadena de dígitos que se normaliza al mismo rango. Si falta n, hay cadenas vacías, no enteros, valores no finitos, cero o cualquier número negativo, la tarea falla con invalid_input y no se factura. En caso de éxito la respuesta repite n, devuelve fibonacci_code como la cadena binaria que siempre termina en once, informa bit_length como la longitud en caracteres de esa cadena, lista zeckendorf_terms como los sumandos de Fibonacci en orden ascendente que suman de nuevo n, e incluye una fórmula breve que reexpresa la construcción para mostrarla junto a la respuesta. Ejemplo: n igual a seis produce fibonacci_code uno cero cero uno uno, bit_length cinco y zeckendorf_terms uno y cinco, porque cinco más uno es seis y los bits de base de F dos a F cinco son uno, cero, cero, uno antes del terminador.

Dónde aporta valor una API de código Fibonacci

Los cursos de teoría de la información y de compresión usan el código Fibonacci como código universal concreto junto a Elias gamma y delta; un convertidor en vivo permite a los estudiantes comprobar codificaciones de deberes para enteros positivos arbitrarios sin armar una hoja de cálculo de Fibonacci cada vez. Los diseñadores de protocolos que evalúan codificaciones de enteros de longitud variable pueden comparar longitudes del código Fibonacci con esquemas de ancho fijo y al estilo LEB128 sobre secuencias de ID de muestra antes de fijar un formato de cable. La validación fallida no consume saldo. Como cada llamada exitosa es un ítem facturable a $0.002 con coste analítico muy por debajo de ese suelo, la capacidad sigue siendo barata para scripts de corrección por lotes y workers en el borde.

Vectores de prueba para herramientas Zeckendorf

Los scripts que implementan numeración Fibonacci o ID auto-delimitados pueden fijar fibonacci_code y zeckendorf_terms para muchos n sin incrustar una segunda implementación.

¿Cuánto cuesta el convertidor de código Fibonacci?

La herramienta del navegador es gratuita. Las solicitudes API usan saldo KIT prepago a $0.002 por llamada exitosa; la entrada inválida no se factura.

Ver la documentación completa del KIT →