Ecuación iónica neta
Los iones plata, nitrato, sodio y cloruro frente al cloruro de plata sólido con sodio y nitrato se reducen a Ag+(aq) + Cl-(aq) → AgCl(s). Escriba los iones de cada lado y los espectadores se cancelan solos. Gratis en su navegador.
- Gratis
- Funciona en su navegador
- Sin registro
- Sus datos no salen de su equipo
Ejecutar — gratis
Una ecuación iónica neta muestra solo las especies químicas que realmente cambian durante una reacción en disolución. A partir de los iones acuosos escritos a cada lado de una ecuación iónica completa, esta calculadora cancela los iones espectadores que aparecen de forma idéntica entre reactivos y productos y devuelve la ecuación iónica neta restante como una sola cadena. La precipitación, la neutralización y muchos ejercicios de redox en disolución se reducen a esa cancelación una vez que cada electrolito fuerte ya está disociado en iones. Estudiantes, tutores y scripts de preparación de exámenes necesitan una respuesta determinista que falle con claridad cuando un ion listado tiene un formato de carga inválido, en lugar de omitir el token en silencio.
Qué es una ecuación iónica neta y cómo se cancelan los iones espectadores
En química acuosa la ecuación molecular escribe los compuestos intactos, la ecuación iónica completa separa cada electrolito fuerte en los iones que realmente existen en el agua, y la ecuación iónica neta conserva solo las especies cuyas fórmulas o cargas cambian. Los iones que figuran en ambos lados en igual cantidad son espectadores: equilibran la carga y mantienen la disolución eléctricamente neutra, pero no participan en formar un precipitado, un electrolito débil, un gas o un producto redox. Cancelarlos es una resta de multiconjuntos, no una opinión química.
Si el lado izquierdo lista Ag+, NO3-, Na+ y Cl-, y el lado derecho lista AgCl(s), Na+ y NO3-, entonces Na+ y NO3- se cancelan uno a uno y la ecuación iónica neta es Ag+(aq) + Cl-(aq) → AgCl(s). Los coeficientes importan: dos iones cloruro a la izquierda cancelan dos a la derecha, y el coeficiente sobrante permanece en el lado neto.
Cuando se cancela todo ion acuoso, no hay reacción neta en disolución y la calculadora devuelve la cadena no net reaction en lugar de un éxito vacío que un corrector podría malinterpretar. Las especies moleculares como AgCl(s), H2O(l) y CO2(g) no son espectadoras salvo que la misma fórmula y el mismo estado aparezcan en ambos lados; permanecen para que la ecuación neta quede completa. El algoritmo nunca inventa un sólido que usted no haya listado, nunca aplica reglas de solubilidad y nunca reordena átomos dentro de una fórmula.
Solo lee las listas que envía, empareja iones acuosos idénticos por fórmula y carga entera, y escribe el resto con una sola flecha.
Contrato de entrada, formatos de carga aceptados y errores
Cada elemento es un objeto con una cadena ion obligatoria y un coefficient entero positivo opcional que por defecto vale uno. También puede enviar una cadena simple en lugar del objeto; un coeficiente inicial pegado a la fórmula, como 2Cl-, se honra. Todo ion acuoso debe llevar un formato de carga válido.
Las formas aceptadas incluyen un signo final de magnitud uno (Na+, Cl-, NH4+, NO3-, OH-), una magnitud de uno a ocho y luego un signo tras una letra o corchete para iones simples (Ca2+, Al3+, Fe2+, O2-, [Fe(CN)6]4-), forma con acento circunflejo para iones poliatómicos cuya fórmula ya termina en un dígito (SO4^2-, PO4^3-, CO3^-2), carga entre paréntesis (SO4(2-), Fe(3+)), y superíndices Unicode como Na⁺ o SO₄²⁻ que se pliegan a ASCII antes del análisis. Un (aq) opcional sobre un ion se acepta y se normaliza.
Las especies moleculares deben llevar un estado no acuoso entre paréntesis: (s), (l) o (g). Arrays ausentes, arrays vacíos, más de cuarenta especies en un lado, coeficientes fuera de uno a cincuenta y basura no finita fallan igual y no se facturan. La visualización escribe cargas de magnitud uno como signo final, escribe Ca2+ sin circunflejo y escribe SO4^2- con circunflejo para que una fórmula que termina en dígito nunca choque con la carga.
Dónde resulta útil esta calculadora en clase y laboratorio
Las aulas y las plataformas de tutoría usan una calculadora de ecuación iónica neta para que el alumnado compruebe redes de precipitación y ácido-base sin perder un espectador por un error de signo. Los cuadernos de laboratorio que ya disociaron los electrolitos fuertes pueden enviar las dos listas de iones y guardar la cadena neta junto a la observación, más barato que abrir un sistema de álgebra computacional para una cancelación que es solo aritmética de multiconjuntos.
La validación fallida no consume saldo, lo que mantiene baratos los scripts exploratorios cuando el estudiante envía a propósito una carga rota para ver el contrato. Esta página no es un equilibrador de ecuaciones moleculares, ni un oráculo de reglas de solubilidad, ni una hoja de números de oxidación; envíe las listas iónicas completas que ya tiene y lea de vuelta la forma cancelada.
Qué puede hacer con ella
Comprobaciones de precipitación en el aula
Permita que el alumnado envíe los iones acuosos de AgNO3 + NaCl y verifique que Na+ y NO3- se cancelan, dejando Ag+(aq) + Cl-(aq) → AgCl(s).
Calificación automática de exámenes y LMS
Califique ítems de ecuación iónica neta con un oráculo determinista que rechaza un formato de carga inválido y nunca inventa un precipitado que el estudiante no listó.
Cuadernos de laboratorio y APIs
Guarde la cadena de la ecuación iónica neta junto a una observación de titulación o precipitación sin importar una biblioteca completa de álgebra computacional.
Preguntas frecuentes
¿Cómo se reduce una ecuación iónica completa a la ecuación iónica neta?
Los iones acuosos idénticos en ambos lados se cancelan.
¿Qué formatos de carga acepta la calculadora?
Use Na+, Ca2+, SO4^2-, SO4(2-) o superíndices Unicode como Na⁺. Los iones poliatómicos con |carga| > 1 cuya fórmula ya termina en dígito necesitan circunflejo o paréntesis.
¿Qué son los iones espectadores?
Los iones espectadores aparecen con la misma fórmula y carga en ambos lados de la ecuación iónica completa.
¿Por qué se rechazó mi ion?
Un ion listado debe tener un formato de carga válido, o una especie molecular debe llevar un estado como (s), (l) o (g).
¿Predice el precipitado o aplica reglas de solubilidad?
No. Solo cancela los iones que aparecen idénticos en los dos lados de las listas que usted escribe. Nunca inventa un sólido ni aplica reglas de solubilidad, así que incluya usted el producto insoluble con su estado, como AgCl(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/chem/net-ionic-equation \
-H "Authorization: Bearer $KIT_KEY" \
-H "Content-Type: application/json" \
-d '{"reactants":[{"ion":"Ag+","coefficient":1},{"ion":"NO3-","coefficient":1},{"ion":"Na+","coefficient":1},{"ion":"Cl-","coefficient":1}],"products":[{"ion":"AgCl(s)","coefficient":1},{"ion":"Na+","coefficient":1},{"ion":"NO3-","coefficient":1}]}'const res = await fetch("https://api.kit.forhosting.com/chem/net-ionic-equation", {
method: "POST",
headers: {
"Authorization": `Bearer ${process.env.KIT_KEY}`,
"Content-Type": "application/json"
},
body: JSON.stringify({
"reactants": [
{
"ion": "Ag+",
"coefficient": 1
},
{
"ion": "NO3-",
"coefficient": 1
},
{
"ion": "Na+",
"coefficient": 1
},
{
"ion": "Cl-",
"coefficient": 1
}
],
"products": [
{
"ion": "AgCl(s)",
"coefficient": 1
},
{
"ion": "Na+",
"coefficient": 1
},
{
"ion": "NO3-",
"coefficient": 1
}
]
})
});
const { task_id } = await res.json();import os, requests
res = requests.post(
"https://api.kit.forhosting.com/chem/net-ionic-equation",
headers={"Authorization": f"Bearer {os.environ['KIT_KEY']}"},
json={
"reactants": [
{
"ion": "Ag+",
"coefficient": 1
},
{
"ion": "NO3-",
"coefficient": 1
},
{
"ion": "Na+",
"coefficient": 1
},
{
"ion": "Cl-",
"coefficient": 1
}
],
"products": [
{
"ion": "AgCl(s)",
"coefficient": 1
},
{
"ion": "Na+",
"coefficient": 1
},
{
"ion": "NO3-",
"coefficient": 1
}
]
},
)
task_id = res.json()["task_id"]<?php
$res = file_get_contents("https://api.kit.forhosting.com/chem/net-ionic-equation", false, stream_context_create([
"http" => [
"method" => "POST",
"header" => "Authorization: Bearer " . getenv("KIT_KEY") . "\r\nContent-Type: application/json",
"content" => '{"reactants":[{"ion":"Ag+","coefficient":1},{"ion":"NO3-","coefficient":1},{"ion":"Na+","coefficient":1},{"ion":"Cl-","coefficient":1}],"products":[{"ion":"AgCl(s)","coefficient":1},{"ion":"Na+","coefficient":1},{"ion":"NO3-","coefficient":1}]}',
],
]));
$task = json_decode($res, true);body := bytes.NewBufferString(`{"reactants":[{"ion":"Ag+","coefficient":1},{"ion":"NO3-","coefficient":1},{"ion":"Na+","coefficient":1},{"ion":"Cl-","coefficient":1}],"products":[{"ion":"AgCl(s)","coefficient":1},{"ion":"Na+","coefficient":1},{"ion":"NO3-","coefficient":1}]}`)
req, _ := http.NewRequest("POST", "https://api.kit.forhosting.com/chem/net-ionic-equation", 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
{
"reactants": [
{
"ion": "Ag+",
"coefficient": 1
},
{
"ion": "NO3-",
"coefficient": 1
},
{
"ion": "Na+",
"coefficient": 1
},
{
"ion": "Cl-",
"coefficient": 1
}
],
"products": [
{
"ion": "AgCl(s)",
"coefficient": 1
},
{
"ion": "Na+",
"coefficient": 1
},
{
"ion": "NO3-",
"coefficient": 1
}
]
}Ejemplo de respuesta
{
"task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
"type": "chem.net_ionic_equation",
"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_items | 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
Contrato de entrada, formatos de carga aceptados y errores
Envíe un cuerpo JSON con dos arrays obligatorios: reactants y products. Un token sin carga ni ese estado, un signo doble como Na++, un circunflejo sin nada detrás, un Na+- mixto o un ion cargado etiquetado como sólido provoca invalid_input nombrando el campo y la fila. Si hay éxito el cuerpo incluye net_ionic_equation, la full_ionic_equation reconstruida, spectator_ions, spectator_count, canceled_units, has_net_reaction, las cadenas restantes reactants_net y products_net, method spectator_cancellation y un recordatorio breve de fórmula.
Dónde resulta útil una API de ecuación iónica neta
Los generadores de exámenes necesitan un oráculo determinista que marque Na++ como invalid_input en lugar de omitir el ion en silencio y producir una red plausible pero incorrecta. Como la implementación es parse pura de nivel A, cada llamada exitosa cuesta el $0.002 publicado, sin tokens de modelo y sin red saliente. Mantenga cada lado dentro del tope publicado de cuarenta especies, fije en las pruebas la cadena net_ionic_equation devuelta y obtendrá redes reproducibles para deberes, complementos LMS y workers de borde sin levantar un motor químico propio.
Preguntas técnicas
¿Cuánto cuesta la calculadora de ecuación iónica neta?
La herramienta del navegador es gratuita. Las peticiones API usan saldo prepago de KIT a $0.002 por llamada exitosa; la entrada inválida no se factura.