Quiero un programa para subir un archivo echo Word el cual vuelva a generar las preguntas cambiando de orden las respuestas las respuestas están en color amarillo y quiero que me evalúes sii respuesta coincide al final de evaluarme muestra aprobado caso contrario muestra reprobado
Para crear un programa que cumpla con tus requisitos, necesitarás utilizar un lenguaje de programación que pueda manejar archivos de Word y realizar operaciones de manipulación de texto. A continuación, te proporcionaré un ejemplo básico en Python utilizando la biblioteca python-docx
para trabajar con archivos de Word. Este programa leerá un archivo de Word, buscará las respuestas en color amarillo, las mezclará y luego evaluará las respuestas del usuario.
Instalar Python: Asegúrate de tener Python instalado en tu sistema.
Instalar la biblioteca python-docx
: Puedes instalarla usando pip:
pip install python-docx
Aquí tienes un ejemplo de cómo podría ser el programa:
import random
from docx import Document
from docx.shared import RGBColor
def obtener_respuestas_y_preguntas(archivo):
doc = Document(archivo)
preguntas = []
respuestas = []
for parrafo in doc.paragraphs:
if parrafo.text.strip(): # Ignorar párrafos vacíos
# Suponemos que las respuestas están en color amarillo
for run in parrafo.runs:
if run.font.color and run.font.color.rgb == RGBColor(255, 255, 0): # Color amarillo
respuestas.append(run.text.strip())
else:
preguntas.append(parrafo.text.strip())
return preguntas, respuestas
def mezclar_respuestas(respuestas):
random.shuffle(respuestas)
return respuestas
def evaluar_respuestas(respuestas_correctas, respuestas_usuario):
return set(respuestas_correctas) == set(respuestas_usuario)
def main():
archivo = input("Introduce el nombre del archivo Word (con extensión .docx): ")
preguntas, respuestas_correctas = obtener_respuestas_y_preguntas(archivo)
print("\nPreguntas:")
for pregunta in preguntas:
print(pregunta)
respuestas_mezcladas = mezclar_respuestas(respuestas_correctas)
print("\nRespuestas (mezcladas):")
for i, respuesta in enumerate(respuestas_mezcladas, 1):
print(f"{i}. {respuesta}")
respuestas_usuario = []
for i in range(len(respuestas_mezcladas)):
respuesta_usuario = input(f"Introduce tu respuesta para la opción {i + 1}: ")
respuestas_usuario.append(respuesta_usuario.strip())
if evaluar_respuestas(respuestas_correctas, respuestas_usuario):
print("\nAprobado")
else:
print("\nReprobado")
if __name__ == "__main__":
main()
Guarda el código anterior en un archivo llamado evaluador.py
.
Crea un archivo de Word con preguntas y respuestas, asegurándote de que las respuestas correctas estén en color amarillo.
Ejecuta el programa desde la terminal o línea de comandos:
python evaluador.py
Introduce el nombre del archivo de Word cuando se te solicite.
Responde a las preguntas según las respuestas mezcladas que se te presenten.