ayuda de applescript

Estoy tratando de hacer un programa de suma matemática y tengo algunas preguntas.

  1. ¿Cómo hago para que cuando haga la pregunta, la diga en el mismo cuadro de diálogo? Tales como: "¿Cuál es la respuesta de x e y" en lugar de "¿cuál es la respuesta de x" seguido de un nuevo cuadro de diálogo "y"?
  2. No devuelve nada cuando escribes la respuesta correcta. Quiero que cuando escribas la respuesta correcta muestre "correcto" o "¡Buen trabajo!", y cuando te equivoques diga "Incorrecto" o "Intentar de nuevo".

Código:

set num1 to (random number from 0 to 100)
set num2 to (random number from 0 to 100)
set answer to num1 + num2
display dialog "What is the answer of " & num1
if text returned of (display dialog "and " & num2 default answer "") = answer then display dialog "correct"

Respuestas (1)

Unas pocas cosas:

  1. Debería haber dos cuadros de diálogo que se muestren:
    • Uno para la pregunta, que debe ser solo una cadena de texto. Este tendrá el default answer.
    • uno por el resultado
  2. No devuelve/muestra nada porque todas las respuestas son "incorrectas" y las respuestas incorrectas no desencadenan nada. Para arreglar esto:
    • Deberá convertir la entrada del usuario text returneden un número para compararlo conanswer
    • Tendrá que detectar las respuestas incorrectas utilizando elsepara mostrar el cuadro de diálogo "incorrecto".

El resultado:

set num1 to (random number from 0 to 100)
set num2 to (random number from 0 to 100)
set answer to num1 + num2
set question to ("What is the answer of " & num1 & " and " & num2)
set dialog to (display dialog question default answer "")
if text returned of dialog as number = answer then
    display dialog "correct"
else
    display dialog "incorrect"
end if

Además, si desea permitir que el usuario vuelva a intentarlo en los intentos incorrectos, deberá utilizar un bucle que termine en un intento correcto.