fork download
  1. ; your code goes here
  2. (defrule R1-disco-duro
  3. (equipo pc_laboratorio1)
  4. (sintoma ruido_disco)
  5. =>
  6. (assert (componente-sospechoso disco_duro))
  7. )
  8.  
  9. (defrule R2-memoria-ram
  10. (equipo pc_laboratorio1)
  11. (sintoma no_inicia)
  12. =>
  13. (assert (componente-sospechoso memoria_ram))
  14. )
  15.  
  16. (defrule R3-fuente-poder
  17. (equipo pc_laboratorio2)
  18. (sintoma no_enciende)
  19. =>
  20. (assert (componente-sospechoso fuente_poder))
  21. )
  22.  
  23. (defrule R4-tarjeta-video
  24. (equipo pc_multimedia)
  25. (sintoma pantalla_negra)
  26. =>
  27. (assert (componente-sospechoso tarjeta_video))
  28. )
  29.  
  30. (defrule R5-bateria
  31. (equipo laptop_juan)
  32. (sintoma se_apaga)
  33. =>
  34. (assert (componente-sospechoso bateria))
  35. )
  36.  
  37. (defrule R6-cargador
  38. (equipo laptop_docente)
  39. (sintoma no_carga)
  40. =>
  41. (assert (componente-sospechoso cargador))
  42. )
  43.  
  44. ;; --- REGLAS R7 A R12: Generación del diagnóstico ---
  45.  
  46. (defrule R7-diagnostico-disco
  47. (componente-sospechoso disco_duro)
  48. =>
  49. (assert (diagnostico revisar_disco_duro))
  50. )
  51.  
  52. (defrule R8-diagnostico-ram
  53. (componente-sospechoso memoria_ram)
  54. =>
  55. (assert (diagnostico revisar_memoria_ram))
  56. )
  57.  
  58. (defrule R9-diagnostico-fuente
  59. (componente-sospechoso fuente_poder)
  60. =>
  61. (assert (diagnostico revisar_fuente_poder))
  62. )
  63.  
  64. (defrule R10-diagnostico-video
  65. (componente-sospechoso tarjeta_video)
  66. =>
  67. (assert (diagnostico revisar_tarjeta_video))
  68. )
  69.  
  70. (defrule R11-diagnostico-bateria
  71. (componente-sospechoso bateria)
  72. =>
  73. (assert (diagnostico revisar_bateria))
  74. )
  75.  
  76. (defrule R12-diagnostico-cargador
  77. (componente-sospechoso cargador)
  78. =>
  79. (assert (diagnostico revisar_cargador))
  80. )
  81.  
  82. ;; --- Regla para mostrar los diagnósticos en la salida (stdout) ---
  83. (defrule imprimir-diagnostico
  84. (diagnostico ?d)
  85. =>
  86. (printout t "DIAGNOSTICO OBTENIDO: " ?d crlf)
  87. )
  88.  
  89. (deffacts caso-prueba
  90. (equipo pc_laboratorio1)
  91. (sintoma ruido_disco)
  92. (sintoma no_inicia)
  93. )
  94.  
  95. (reset)
  96. (run)
  97. (facts)
  98. (exit)
  99. ; empty line at the end
Success #stdin #stdout 0.01s 5316KB
stdin
Standard input is empty
stdout
DIAGNOSTICO OBTENIDO: revisar_memoria_ram
DIAGNOSTICO OBTENIDO: revisar_disco_duro
f-0     (initial-fact)
f-1     (equipo pc_laboratorio1)
f-2     (sintoma ruido_disco)
f-3     (sintoma no_inicia)
f-4     (componente-sospechoso memoria_ram)
f-5     (diagnostico revisar_memoria_ram)
f-6     (componente-sospechoso disco_duro)
f-7     (diagnostico revisar_disco_duro)
For a total of 8 facts.