RX0060

Dominio: Ejecución

Mensaje de error

%s no tiene resto por cero (divisor %s)

En el mensaje, %s marca un valor que el motor completa cuando lanza el error.

La historia

Intentaste calcular el resto de una división entre cero, y el motor te lo impidió. El operador porcentaje es una división que deja el resto aparte. Pero dividir entre cero no tiene cociente, y si no hay cociente, tampoco hay resto: no hay nada que calcular ni nada que guardar. Otros lenguajes devuelven un valor raro, como NaN, o un infinito, o un cero por defecto. Rush no: la ley dice que dividir o calcular el resto entre cero se rechaza en voz alta, nunca con un valor inventado. Así no hay resultados falsos que viajen por tu programa. El mensaje te da el dividendo, tal como lo guarda la memoria, y el divisor tal como lo escribiste. Un ejemplo: diez porcentaje cero. La solución: comprueba el divisor antes de operar. Si puede valer cero, añade una condición que lo trate aparte, y deja el cálculo para cuando sea distinto de cero. Con un cero de divisor, no hay resto que valga.

Texto del catálogo de errores del motor de Rush.