SStackSundial
Flujos de trabajo

Flujos de programación · Aritmética posfija acotada

03
Producto

Flujos de trabajo

Evalúa entre uno y 100 tokens posfijos con enteros acotados y los operadores +, -, * y //. Comprueba la división negativa hacia menos infinito y rechaza división por cero, una pila incompleta o magnitudes intermedias superiores a 10**18.

01

Descarga la aplicación

Selecciona una carpeta y pide al asistente que lea los archivos relevantes antes de editarlos. Mantén el objetivo y los límites de la tarea en la conversación.

02

Abre la carpeta del proyecto

Elige un endpoint compatible. Las herramientas disponibles y la calidad de las respuestas dependen del modelo y del servidor configurados.

03

Conecta y prueba el modelo

Revisa las modificaciones y la salida de los comandos. Ejecuta las comprobaciones de tu proyecto antes de aceptar el resultado; el código generado no está probado por defecto.

04

Revisa los cambios y ejecuta las pruebas

Compara el comportamiento real con el resultado esperado. Si una prueba falla, investiga la causa antes de hacer más cambios.

Aritmética posfija acotada

Flujos de trabajo
def postfix_value(tokens):
    tokens = tuple(tokens)
    if not 1 <= len(tokens) <= 100:
        raise ValueError("tokens.limit")
    stack = []
    for token in tokens:
        if type(token) is int and abs(token) <= 1000000000:
            stack.append(token)
            continue
        if type(token) is not str or token not in ("+", "-", "*", "//") or len(stack) < 2:
            raise ValueError("token.invalid")
        right, left = stack.pop(), stack.pop()
        if token == "//" and right == 0:
            raise ValueError("division.zero")
        value = (left + right if token == "+" else left - right if token == "-" else left * right if token == "*" else left // right)
        if abs(value) > 10**18:
            raise ValueError("result.range")
        stack.append(value)
    if len(stack) != 1:
        raise ValueError("stack.remainder")
    return stack[0]

Revisa antes de aplicar. Revisa las modificaciones y la salida de los comandos. Ejecuta las comprobaciones de tu proyecto antes de aceptar el resultado; el código generado no está probado por defecto.

Espacio de programación con IA

Tu próxima idea empieza aquí.

Descargar para Windows ↗