Spaces:
Runtime error
Runtime error
riabayonaor
commited on
Commit
•
9645475
1
Parent(s):
629a4fb
Update app.py
Browse filescambios en el manejo de bucles y errores
app.py
CHANGED
@@ -50,25 +50,28 @@ if 'aciertos' not in st.session_state:
|
|
50 |
st.session_state.aciertos = 0
|
51 |
if 'errores' not in st.session_state:
|
52 |
st.session_state.errores = 0
|
|
|
|
|
53 |
|
54 |
# Mostrar los contadores en la barra lateral
|
55 |
st.sidebar.write(f"Aciertos: {st.session_state.aciertos}")
|
56 |
st.sidebar.write(f"Errores: {st.session_state.errores}")
|
57 |
|
58 |
# Generación o recuperación del problema actual
|
59 |
-
if
|
60 |
st.session_state.ecuacion, st.session_state.respuestas, st.session_state.respuesta_correcta = generar_ecuacion_y_respuestas()
|
|
|
61 |
|
62 |
st.write(st.session_state.ecuacion)
|
63 |
-
respuesta_elegida = st.radio("Elige tu respuesta", [str(respuesta) for respuesta
|
64 |
|
65 |
# Botón de envío
|
66 |
if st.button("Enviar"):
|
67 |
resultado = manejar_respuesta(st.session_state.ecuacion, respuesta_elegida, st.session_state.respuesta_correcta)
|
68 |
st.write(resultado)
|
69 |
-
#
|
70 |
|
71 |
-
# Botón para generar un nuevo problema
|
72 |
-
if st.button("Generar Nuevo Problema"
|
73 |
-
st.session_state.
|
74 |
-
st.experimental_rerun()
|
|
|
50 |
st.session_state.aciertos = 0
|
51 |
if 'errores' not in st.session_state:
|
52 |
st.session_state.errores = 0
|
53 |
+
if 'nuevo_problema' not in st.session_state:
|
54 |
+
st.session_state.nuevo_problema = True # Se añade un nuevo estado para controlar la generación de nuevos problemas
|
55 |
|
56 |
# Mostrar los contadores en la barra lateral
|
57 |
st.sidebar.write(f"Aciertos: {st.session_state.aciertos}")
|
58 |
st.sidebar.write(f"Errores: {st.session_state.errores}")
|
59 |
|
60 |
# Generación o recuperación del problema actual
|
61 |
+
if st.session_state.nuevo_problema:
|
62 |
st.session_state.ecuacion, st.session_state.respuestas, st.session_state.respuesta_correcta = generar_ecuacion_y_respuestas()
|
63 |
+
st.session_state.nuevo_problema = False # Restablecer para evitar re-ejecuciones innecesarias
|
64 |
|
65 |
st.write(st.session_state.ecuacion)
|
66 |
+
respuesta_elegida = st.radio("Elige tu respuesta", [str(respuesta) for respuesta en st.session_state.respuestas])
|
67 |
|
68 |
# Botón de envío
|
69 |
if st.button("Enviar"):
|
70 |
resultado = manejar_respuesta(st.session_state.ecuacion, respuesta_elegida, st.session_state.respuesta_correcta)
|
71 |
st.write(resultado)
|
72 |
+
# No se necesita llamar a st.experimental_rerun() aquí porque la página se actualiza con el resultado
|
73 |
|
74 |
+
# Botón para generar un nuevo problema
|
75 |
+
if st.button("Generar Nuevo Problema"):
|
76 |
+
st.session_state.nuevo_problema = True # Activar la señal para generar un nuevo problema
|
77 |
+
st.experimental_rerun() # Re-ejecutar la aplicación para reflejar el cambio
|