sistema experto de prolog

Sistema Experto: Test Orientación Vocacional Según (información sobre Holland el conocimiento Preferencias vocacionales

Views 205 Downloads 1 File size 258KB

Report DMCA / Copyright

DOWNLOAD FILE

Recommend stories

  • Author / Uploaded
  • paul
Citation preview

Sistema Experto: Test Orientación Vocacional Según (información sobre Holland el conocimiento Preferencias vocacionales de John

humano). Para que un sistema experto sea herramienta efectiva, los usuarios deben interactuar de una forma fácil, reuniendo Escuela de Informática dos capacidades para poder cumplirlo:  Explicar sus razonamientos o base del Docente: Ing. Arturo Díaz Pulido conocimiento: los sistemas expertos se deben

Universidad Nacional de Trujillo

Yenan, Salvador Rojas

Michel, Solano Arévalo

Paul, Sánchez Rodríguez

Ing. Informática Universidad Nacional de Trujillo

Ing. Informática Universidad Nacional de Trujillo

Ing. Informática Universidad Nacional de Trujillo

[email protected]

[email protected]

[email protected]

RESUMEN Implementaremos un sistema experto con Prolog cuya finalidad será orientar a los estudiantes preuniversitarios que aún no definen su perfil académico y poder ayudarles en su elección, los estudiantes utilizaran el Tés, interactuara con el Sistema Experto, brindándole opciones de elección por medio de preguntas, que permitirán definir el perfil vocacional del Usuario. Palabras clave Prolog, sistema experto, Test Vocacional, holan 1. INTRODUCION Un Sistema Experto se puede entender como una rama de la Inteligencia Artificial. Los tales tratan de igualar las actividades de un humano para resolver problemas. También se dice que un SE, se basa en el conocimiento declarativo (hechos, reglas, situaciones) y el conocimiento de control o guía

realizar siguiendo ciertas reglas o pasos comprensibles de manera que se pueda generar la explicación para cada una de estas reglas, que a la vez se basan en hechos. 

Adquisición de nuevos conocimientos o integrador del sistema: son mecanismos de razonamiento que sirven para modificar los conocimientos anteriores. Sobre la base de lo anterior se puede decir que los sistemas expertos son el producto de investigaciones en el campo de la inteligencia artificial ya que esta no intenta sustituir a los expertos humanos, sino que se desea ayudarlos a realizar con más rapidez y eficacia todas las tareas que realiza.

Para el desarrollo del Sistema Experto de Test de Orientación Vocacional,

elaboraremos uno del tipo basado en reglas las cuales se definirán de acuerdo a un conjunto de hechos.

1.2.4 Módulos de justificación Explica el razonamiento utilizado por el sistema para llegar a una determinada conclusión. 1.2.5 Interfaz de usuario Es la interacción entre el SE y el usuario, y se realiza mediante el lenguaje natural.

1.1 Usos de un Sistema Experto a) Un sistema experto puede ayudar a personas con poca experiencia pueden resolver problemas que requieren un conocimiento formal especializado. b) Los Sistemas Expertos pueden obtener conclusiones y resolver problemas de forma más rápida que los expertos humanos. c) Los sistemas expertos son buenos para predecir resultados futuros a partir del conocimiento que tienen. 1.2 Arquitectura y funcionamiento de un sistema experto. Los Sistemas expertos comúnmente están conformados por: 1.2.1 Base Conocimiento Contiene conocimiento modelado extraído del diálogo con el experto. 1.2.2 Base de Hechos Contiene los hechos sobre un problema que se ha descubierto durante el análisis. 1.2.3 Motor de inferencia: Modela el razonamiento humano.

proceso

de

1.3 Ventajas e inconvenientes de un sistema experto. 1.3.1 Ventajas a) Los conocimientos de un sistema experto pueden ser copiados y almacenados fácilmente, siendo muy difícil la pérdida de éstos. b) El Sistema Experto (SE) computarizado siempre está a pleno rendimiento. Cuando un humano se cansa, la exactitud de sus consejos puede decaer. c) La ventaja de un sistema experto está en que después de que un experto computarizado exista, usted puede crear un nuevo experto simplemente copiando el

programa de una máquina a otra. Un humano necesita mucho tiempo para convertirse en un especialista. 1.3.2 Inconvenientes a) Los humanos pueden responder creativamente a situaciones inusuales, los sistemas expertos no pueden. b) los humanos tienen un amplio rango de disponibilidad de experiencia sensorial. Y los sistemas expertos actualmente dependen de una entrada simbólica. c) los sistemas expertos no son bueno para reconocer cuando no existen respuestas o cuando los problemas están fuera de su área.

1.4 Prolog 1.4.1 Introducción a Prolog Prolog es un lenguaje declarativo e interpretado, esto quiere decir que el lenguaje se usa para representar conocimientos sobre un determinado dominio y las relaciones entre objetos de ese dominio, un programa en Prolog consiste de una base de hechos de relaciones , dicha base de datos no tiene una estructura impuesta, ni un procedimiento o clase principal. Consiste en declarar el conocimiento disponible acerca de los objetivos, además de sus relaciones y sus reglas. En lugar de correr en un programa para obtener una solución, se hace una pregunta, el programa revisa la base de datos para encontrar la solución a la pregunta.

1.4.2 Características de Prolog   



Basado en lógica y programación declarativa. No se especifica cómo debe hacerse, sino qué debe lograrse. Una característica importante en Prolog y que lo diferencia de otros lenguajes de programación, es que una variable sólo puede tener un valor mientras se cumple el objetivo. El programador se concentra más en el conocimiento que en los algoritmos. -¿Qué es conocido? (hechos, reglas) -¿Qué preguntar? (Cómo resolverlo)

En Prolog, se llega a una solución infiriéndola desde algo ya conocido (conocimiento).

2. TEST ORIENTACION VOCACIONAL 2.1 Planteamiento y diseño Queremos resolver la problemática que se enfrenta las personas al elegir el área en donde desarrollarse, le es difícil decidirse por una carrera profesional porque no tienen muy claro las definiciones de estas. Por ello decidimos realizar este sistema experto de test de orientación vocacional usando inventario de preferencias vocacionales de John holland. 2.2 Teoría de John Holland En la década de los 50 John Holland desarrollo su teoría de las orientaciones de la personalidad planteando que las personas desarrollan a temprana edad

tipos de personalidad como producto de la interacción del individuo con su medio social. Los factores sociales, culturales, el medio físico los modelos co-orientados (padres, profesores, amigos, hermanos, etc.) permiten la formación de intereses, valores, aspiraciones y actitudes. Este sistema motivacional orienta a las personas a preferir ciertas actividades afines a sus intereses siendo posible detectar tales preferencias mediante pruebas psicológicas. Holland partió de las siguientes consideraciones o conceptos básicos:









 La elección de la profesión es una expresión de la personalidad. Elegir una ocupación es acto expresivo que refleja la motivación, los conocimientos, la personalidad y la habilidad. Los estereotipos vocacionales poseen significados psicológicos y sociológicos confiables e importantes Los individuos de un grupo ocupacional común tienen personalidades e historias similares de desarrollo personal, de ello se deduce que reaccionan de manera análoga a muchas situaciones y problemas creándose un ambiente personal característico. La satisfacción en el trabajo, el rendimiento, la estabilidad en una profesión depende de la congruencia entre la propia personalidad y el ambiente en que se trabaja.

Holland plantea seis modelos ambientales análogos a su teoría de personalidad.

2.2.1

El ambiente realista. La caracterizan las tareas explicitas, físicas y concretas a que deben enfrentarse sus integrantes. Exigen ingenio y capacidad mecánica persistencia y desplazamiento físicos de un lugar a otro. 2.2.2

El ambiente intelectual La caracterizan las tareas que exigen a lo abstracto y lo creador más que percepción personal. Las soluciones efectivas requieren imaginación, inteligencia y sensibilidad para los problemas físicos e intelectuales. 2.2.3

El ambiente social La caracterizan los problemas que exigen capacidad para interpretar y modificar la conducta humana y para comunicarse y preocuparse por los demás.

2.2.4

El ambiente convencional

La caracterizan las tareas y problemas que exigen el procesamiento rutinario sistemático y concreto de información verbal y matemática. 2.2.5

El ambiente emprendedor La caracterizan tareas que valoran la facilidad verbal para dirigir o persuadir a otras personas 2.2.6

El ambiente artístico La caracterizan tareas y problemas que exigen interpretar o crear formas artísticas mediante el buen gusto sentimientos e imaginación. Holland representa estas seis orientaciones en un hexágono .En donde las orientaciones extremas son las más opuestas entre sí, mientras que las adyacentes son las más similares. Muchas personas no caen

Interés de Oficina

dentro de un mismo tipo, si no que combinan dos o tres orientaciones

Interés R Mecánico

espregunta('Conducir camiones o tractores?',X):-esrespuesta(X). espregunta('Trabajar con metalisteria o con máquina?',X):esrespuesta(X).

Interés I Científico

espregunta('Manejar un bólido o Interés una motocicleta?',X):Artístico esrespuesta(X). C

espregunta('Tomar cursos comerciales?',X):-esrespuesta(X).

A

espregunta('Tomar cursos de dibujo mecánico?',X):-esrespuesta(X). espregunta('Tomar cursos de ebanistería?',X):-esrespuesta(X). E Interés Persuasivo

S Interés de Servicio social

espregunta('Tomar cursos de mecánica automotriz?',X):esrespuesta(X).

% R - INTERES MECANICOS competencias 2.3 Implementación A continuación el código en prolog del sistema experto. esrespuesta('si').

espregunta('Operar un voltímetro',X):-esrespuesta(X). espregunta('Ajustar un carburador',X):-esrespuesta(X).

esrespuesta('no').

espregunta('Manejar herramientas motriz para metalurgia',X):esrespuesta(X).

% R - INTERES MECANICOS preferencias

espregunta('Hacer acabados en muebles o en trabajos de ebanistería',X):-esrespuesta(X).

espregunta('Componer articulos electronicos?',X):-esrespuesta(X). espregunta('Componer articulos mecánicos?',X):-esrespuesta(X). espregunta('Construir cosas de madera?',X):-esrespuesta(X).

espregunta('Interpretar copias heliográficas',X):-esrespuesta(X). espregunta('Hacer reparaciones eléctricas sencillas',X):esrespuesta(X).

espregunta('Reparar muebles',X):esrespuesta(X).

espregunta('Diseñador de herramientas',X):-esrespuesta(X).

espregunta('Hacer diseños mecánicos',X):-esrespuesta(X).

espregunta('Fotograbador-hace placas de metal\n para imprimir ilustarciones',X):-esrespuesta(X).

espregunta('Hacer reparaciones sencillas a un radio o televisor',X):esrespuesta(X). espregunta('Hacer reparaciones sencillas de plomería',X):esrespuesta(X).

% R - INTERES MECANICOS trabajos espregunta('Mecánico de aviaciónrepara aeroplanos',X):esrespuesta(X). espregunta('operador de central eléctrica',X):-esrespuesta(X). espregunta('Maestro plomeroarregla tuberias y fregaderos',X):esrespuesta(X). espregunta('Operador de escabadoras',X):-esrespuesta(X). espregunta('Topógrafo-mide distancias para \nconstruccion de edificios y caminos',X):esrespuesta(X). espregunta('Inspector de construcciones',X):-esrespuesta(X). espregunta('Radio operador-envia y recibe mensajes por radio',X):esrespuesta(X). espregunta('Ayudante de estación de gasolina',X):-esrespuesta(X). espregunta('Cirujano de árbolesarregla árboles',X):-esrespuesta(X).

espregunta('Electrisista',X):esrespuesta(X).

% I - Interes cientifico preferencias espregunta('Leer libros o publicaciones científicas?',X):esrespuesta(X). espregunta('Trabajar en un laboratorio?',X):-esrespuesta(X). espregunta('Elaborar proyectos científicos?',X):-esrespuesta(X). espregunta('Construir modelos de cohetes?',X):-esrespuesta(X). espregunta('Experimentar con equipos de química?',X):esrespuesta(X). espregunta('Leer temas especiales por mi cuenta?',X):-esrespuesta(X). espregunta('Tomar cursos de física?',X):-esrespuesta(X). espregunta('Tomar cursos de química?',X):-esrespuesta(X). espregunta('Tomar cursos de geometría?',X):-esrespuesta(X). espregunta('Tomar cursos de biología?',X):-esrespuesta(X).

% I - Interes cientifico competencias

espregunta('Entender cómo funciona un tubo de vacío',X):esrespuesta(X). espregunta('Nombrar tres alimentos de alto \ncontenido en proteínas',X):-esrespuesta(X). espregunta('Entender que es la "media vida" \nde un elemento radiactivo',X):-esrespuesta(X). espregunta('Emplear tablas de logaritmos',X):-esrespuesta(X). espregunta('Usar una regla de cálculo para multiplicar y dividir',X):-esrespuesta(X). espregunta('Manejar un microscopio',X):-esrespuesta(X). espregunta('Identificar tres constelaciones',X):-esrespuesta(X). espregunta('Describir la función de los \nglóbulos blancos de la sangre',X):-esrespuesta(X). espregunta('Interpretar Fórmulas químicas sencillas',X):esrespuesta(X). espregunta('\t\t\tEntender por qué los satélites \nhechos por el hombre no caen a la tierra',X):esrespuesta(X).

% I - Interes cientifico competencias espregunta('Meteorólogo-estudia el tiempo',X):-esrespuesta(X). espregunta('Biólogo-estudia plantas y animales',X):-esrespuesta(X).

espregunta('Astrónomo-estudia las estrellas',X):-esrespuesta(X). espregunta('Zoólogo-estudia los animales',X):-esrespuesta(X). espregunta('Químico-trabaja con sustancias químicas',X):esrespuesta(X). espregunta('Científico investigador independiente ',X):-esrespuesta(X). espregunta('Escritor de artículos científicos',X):-esrespuesta(X). espregunta('Editor de publicaciones científicas',X):-esrespuesta(X). espregunta('Geologo-estudia la tierra',X):-esrespuesta(X). espregunta('Botanico-estudia las plantas',X):-esrespuesta(X). espregunta('Ayudante de centros de investigación \ncientífica',X):esrespuesta(X). espregunta('Físico-estudia las leyes fisicas \nde la naturaleza',X):esrespuesta(X).

% A - PREFERENCIAS - Interés Artístico espregunta('Bosquejar,dibujar o pintar?',X):-esrespuesta(X). espregunta('Asistir a representaciones teatrales?',X):esrespuesta(X). espregunta('Diseñar muebles o edificios?',X):-esrespuesta(X).

espregunta('Tocar en una banda, grupo u orquesta?',X):esrespuesta(X). espregunta('Tocar un instrumento?',X):-esrespuesta(X). espregunta('Asistir a recitales,conciertos o espectáculos musicales?',X):-esrespuesta(X).

espregunta('Hacer pintura o escultura',X):-esrespuesta(X). espregunta('Hacer ceramica',X):esrespuesta(X). espregunta('Diseñar ropa cartele o muebles',X):-esrespuesta(X). espregunta('Escribir bien cuentos o poesías',X):-esrespuesta(X).

espregunta('Hacer retratos o fotografías?',X):-esrespuesta(X). espregunta('Leer obras teatrales?',X):-esrespuesta(X). espregunta('Leer o escribir poesía?',X):-esrespuesta(X). espregunta('Tomar cursos arte?',X):esrespuesta(X).

% A - COMPETENCIAS - Interés Artístico espregunta('Participar en duelos o cuartetos corales',X):esrespuesta(X).

% A - TRABAJOS - Interés Artístico espregunta('Poeta-escribe poesía',X):-esrespuesta(X). espregunta('Director de orquesta sinfónica',X):-esrespuesta(X). espregunta('Músico-toca un instrumento o canta',X):esrespuesta(X). espregunta('Autor-escribe libros ,obras,poesias,etc',X):esrespuesta(X).

espregunta('Tocar como solista',X):esrespuesta(X).

espregunta('Escritor independienteescribe articulos\n para revistas o periodicos',X):-esrespuesta(X).

espregunta('Actuar en obras de teatro',X):-esrespuesta(X).

espregunta('Arreglista musical',X):esrespuesta(X).

espregunta('Hacer lectura de interpretación',X):-esrespuesta(X).

espregunta('Comerciante de artevende cuadros,pinturas o escrituras',X):-esrespuesta(X).

espregunta('Bailar danza moderna interpretativa o ballet?',X):esrespuesta(X). espregunta('Bosquejar personas para que puedan ser reconocidas',X):-esrespuesta(X).

espregunta('Instructor teatral-enseña alas personas a ser actores')), espregunta('Cantante -canta en el escenario',X):-esrespuesta(X).

espregunta('Compositor-escribe musica o letra musical',X):esrespuesta(X).

espregunta('Saber explicar cosas a otras personas',X):-esrespuesta(X).

espregunta('Director de escena',X):esrespuesta(X).

espregunta('Cooperar y trabajar bien con los demás',X):esrespuesta(X).

espregunta('Dramaturgo-escribe obras teatrales',X):-esrespuesta(X).

espregunta('Ser buen anfitrión',X):esrespuesta(X).

% S - PREFERENCIAS - Interes de servicio social espregunta('Escribir cartas a los amigos',X):-esrespuesta(X). espregunta('Asistir a servicios religiosos',X):-esrespuesta(X). espregunta('Pertenecer a clubs sociales',X):-esrespuesta(X). espregunta('Ayudar a los demas con sus problemas personales',X):esrespuesta(X). espregunta('Cuidar niños',X):esrespuesta(X). espregunta('Ir a fiestas',X):esrespuesta(X). espregunta('Bailar',X):esrespuesta(X). espregunta('Concurrir a reuniones y conferencias',X):-esrespuesta(X). espregunta('Ir a juegos deportivos',X):-esrespuesta(X). espregunta('Hacer nuevos amigos',X):-esrespuesta(X).

% S -COMPETENCIAS - Interes de servicio social

espregunta('Enseñar con facilidad a los niños',X):-esrespuesta(X). espregunta('Planear diverciones para una fiesta',X):-esrespuesta(X). espregunta('Ayudar a quienes estan enojados o afligidos',X):esrespuesta(X). espregunta('Trabajar como voluntario en un\n hospital,clínica o asilo',X):-esrespuesta(X). espregunta('Planear actividades sociales para\n escuelas o iglesias',X):-esrespuesta(X). espregunta('Hacer un buen juicio de personalidad',X):-esrespuesta(X). espregunta('Saber entretener con habilidad a \n personas mayores que yo',X):-esrespuesta(X).

% S - TRABAJOS - Interes de servicio social espregunta('Misionero foraneo-va a tierras \n lejanas a enseñar religion',X):-esrespuesta(X). espregunta('Experto en delincuencia juvenil-ayuda a los\n jóvenes que tienen problemas con la ley ',X):esrespuesta(X).

espregunta('Terapeuta de lenguajeenseña alas personas a \n corregir sus problemas de lenguaje',X):esrespuesta(X). espregunta('Consejero matrimonial',X):-esrespuesta(X). espregunta('Director de campos recreativos',X):-esrespuesta(X). espregunta('Psicologo clínico',X):esrespuesta(X).

espregunta('Dar pláticas',X):esrespuesta(X). espregunta('Actuar como jefe de cualquier grupo',X):esrespuesta(X). espregunta('Supervisar el trabajo de otros',X):-esrespuesta(X). espregunta('Conocer a gente importante',X):-esrespuesta(X).

espregunta('Maestro de ciencias sociales',X):-esrespuesta(X).

espregunta('Encabezar un grupo para\n alcanzar alguna meta',X):esrespuesta(X).

espregunta('Director de agencia de bienestar social',X):-esrespuesta(X).

espregunta('Participar en campañas políticas',X):-esrespuesta(X).

espregunta('Ayudante del superintendente de\n escuelas municipales',X):-esrespuesta(X). espregunta('Consejero personal',X):-esrespuesta(X). espregunta('Asistente de casos siquiátricos',X):-esrespuesta(X). espregunta('Consejero vocacional',X):-esrespuesta(X).

% E - PREFERENCIAS - Interés persuasivo espregunta('Influir en los demas',X):-esrespuesta(X). espregunta('Discutir de política',X):-esrespuesta(X). espregunta('Manejar mi propio servicio o negocio',X):esrespuesta(X). espregunta('Asistir a conferencias',X):-esrespuesta(X).

% E - COMPETENCIAS - Interes persuacivo espregunta('Supervisar el trabajo de los demas',X):-esrespuesta(X). espregunta('Tener facilidad para hacer que las \npersonas hagan las cosas a mi manera',X):esrespuesta(X). espregunta('Tener energia y entusiasmo extraordinarios',X):esrespuesta(X). espregunta('Ser un buen vendedor',X):-esrespuesta(X). espregunta('Encabezar un grupo para presentar\n sugerencias o quejas a una autoridad',X):esrespuesta(X). espregunta('Ganar un premio por trabajar como vendedor o lider',X):esrespuesta(X).

espregunta('Organizar un club,grupo o partido',X):esrespuesta(X). espregunta('Emprender mi propio negocio o servicio',X):esrespuesta(X).

espregunta('corredor de bienes raíces',X):-esrespuesta(X). espregunta('Consultor de relaciones industriales',X):-esrespuesta(X). espregunta('Director de campañas políticas',X):-esrespuesta(X).

espregunta('Llegar a ser un líder próspero',X):-esrespuesta(X). espregunta('Ser un buen participante en\n una discusión o debate',X):-esrespuesta(X).

% E - TRABAJOS - Interes persuasivo espregunta('Especulador-el que se arriesga a ganar dinero',X):esrespuesta(X). espregunta('Corredor de bolsacompra y vende acciones\n en la bolsa de valores',X):esrespuesta(X). espregunta('Representante de fábricas',X):-esrespuesta(X). espregunta('Productor de televisión',X):-esrespuesta(X).

% C - PREFERENCIAS - Interés de oficina espregunta('Mecanografiar documentos o cartas',X):esrespuesta(X). espregunta('Trabajar haciendo sumas,restas ,multiplicaciones \n ya sea en un negocio o para llevar una contabilidad',X):-esrespuesta(X). espregunta('Manejar maquinas de ofisina de cualquier tipo',X):esrespuesta(X). espregunta('Llevar registro detallados de gastos',X):esrespuesta(X). espregunta('Tomar cursos de mecanografia',X):-esrespuesta(X).

espregunta('Gerente de hoteles',X):esrespuesta(X).

espregunta('Tomar cursos de administracion de empresas',X):esrespuesta(X).

espregunta('Ejecutivo de empresas',X):-esrespuesta(X).

espregunta('Tomar cursos de contabilidad',X):-esrespuesta(X).

espregunta('Gerente de restaurante',X):-esrespuesta(X).

espregunta('Omar cursos de matemáticas comerciales',X):esrespuesta(X).

espregunta('Maestro de ceremonias',X):-esrespuesta(X). espregunta('Agente viajero',X):esrespuesta(X).

espregunta('Archivar cartas ,informes o registros',X):esrespuesta(X).

espregunta('Escribir cartas comerciales',X):-esrespuesta(X).

% C - COMPETENCIAS - Interés de oficina espregunta('Operar una máquina duplicadora o sumadora ',X):esrespuesta(X). espregunta('Tomar tarquigrafía',X):esrespuesta(X). espregunta('Archivar correspondencia y otros documentos',X):-esrespuesta(X).

espregunta('Contador-llevar en cuenta el dinero\n que se gasta ',X):-esrespuesta(X). espregunta('Experto en control de calidada',X):-esrespuesta(X). espregunta('Revisor de presupuestos',X):-esrespuesta(X). espregunta('Estadístico',X):esrespuesta(X). espregunta('Taquigrafía de tribunales',X):-esrespuesta(X). espregunta('Cajero bancario',X):esrespuesta(X).

espregunta('Desempeñar un empleo mde oficina',X):-esrespuesta(X).

espregunta('Controlador de inventarios',X):-esrespuesta(X).

espregunta('Manejar una maquína contable',X):-esrespuesta(X).

espregunta('Analista financiero',X):-esrespuesta(X).

espregunta('Manejar una computadora-tipo\n maquina de escribir',X):-esrespuesta(X).

espregunta('Estimador de costos',X):-esrespuesta(X).

espregunta('Hacer mucho trabajo de oficina en poco tiempo',X):esrespuesta(X). espregunta('Usar maquínas calculadoras',X):-esrespuesta(X).

espregunta('Pagador de nómina',X):-esrespuesta(X). espregunta('Inspector bancario',X):esrespuesta(X). espregunta('Especialista en impuestos',X):-esrespuesta(X).

espregunta('Manejar equipos sencillos de procesamiento de datos\n como teclados para perforacion de tarjetas',X):esrespuesta(X). espregunta('Llevar registros exactos de pagos y ventas',X):esrespuesta(X).

% C - TRABAJOS - Interés de oficina

ejecutar:new(K,dialog('proyecto')), % Hancho Altura send(K,size,size(840,510)), %tamaño de la interfas

send(K,colour,colour(red)),

mostrar(V,K,M):- new(I, image(V)), new(B, bitmap(I)),

send(K, append, new(Menu, menu_bar)), send(Menu, append, new(Creditos, popup(creditos))),

new(F2, figure), send(F2, display, B), new(D1, device), send(D1, display, F2),

send_list(Creditos, append,

send(K, display, D1), send(D1,below(M)).

[ menu_item(autores, message(@display, inform, 'Salvador rojas/Solano Arevalo/Sanchez Rodriguez')) ]), mostrar('C:/Programa/primero.jpg', K,Menu),

new(Y, button('iniciar',message(@prolog, bienvenida,K))),

bienvenida(K):- send(K,destroy),

new(K1,dialog('Tes vocacional')), % ancho alto send(K1,size,size(620,480)), %tamaño de la interfaz send(K1,colour,colour(red)),

send(K, display,Y,point(400,460)), %send(K, append,button(iniciar,message(@pr olog,bienvenida,K,display,button,po int(0,0)))), send(K,open,point(460,100)). %lugar en la pantalla de la interfaz

halt.qsave_program('c:/ejecutable.e xe', [stand_alone(true), goal(ejecutar)]).

mirar('C:/Programa/psicologo.jpg', K1),

%new(@boton, button('preguntar',message(@prolo g, preferenciasR))), send(K1, append,button(preguntar,message( @prolog,preferenciasR,K1))), send(K1,open,point(400,100)). % Lugar en la pantalla

send_list(Pre2,append,[no ,si]), mirar(V,K1):- new(I, image(V)),

send(K2,append,Pre2),

new(B, bitmap(I)), new(F2, figure), send(F2, display, B), new(D1, device), send(D1, display, F2), send(K1, display, D1).

preferenciasR(K1):send(K1,destroy),

new(Pre3,menu('Construir cosas de madera?')), send_list(Pre3,append,[no ,si]), send(K2,append,Pre3),

new(Pre4,menu('Conducir camiones o tractores?')), send_list(Pre4,append,[no ,si]), send(K2,append,Pre4),

new(K2,dialog('PREGUNTAS')), % Titulo de la interfas send(K2,size,size(480,440)), %tamaño de la interfaz

new(Pre5,menu('Trabajar con metalisteria o con máquina?')), send_list(Pre5,append,[no ,si]), send(K2,append,Pre5),

send(K2,append,label(text,'PREFE RENCIAS: Interés Mecánico',font('times','roman',16))), % escribir un texto

new(Pre1,menu('Componer articulos electronicos?')), send_list(Pre1,append,[no , si]), send(K2,append(Pre1)),

new(Pre2,menu('Componer articulos mecánicos?')),

new(Pre6,menu('Manejar un bólido o una motocicleta?')), send_list(Pre6,append,[no ,si]), send(K2,append,Pre6),

new(Pre7,menu('Tomar cursos comerciales?')), send_list(Pre7,append,[no ,si]), send(K2,append,Pre7),

new(Pre8,menu('Tomar cursos de dibujo mecánico?')), send_list(Pre8,append,[no ,si]),

send(K2,append,Pre8),

new(Pre9,menu('Tomar cursos de ebanistería?')), send_list(Pre9,append,[no ,si]), send(K2,append,Pre9),

send(K2,append,X), */

%new(X,button(siguiente,and(mess age(@prolog,clase,Pre1? selection,Pre2?selection,Pre3? selection),message(K3,destroy)))), %send(K3,append,X),

new(Pre10,menu('Tomar cursos de mecánica automotriz?')), send_list(Pre10,append,[no ,si]),

send(K2,open,point(460,100)).

send(K2,append,Pre10),

%send(K3,append,button(preguntar, message(@prolog,clase,Pre1? selection,Pre2?selection,Pre3? selection),message(K3,destroy))),

/ *mecanica1(P1,P2,P3,P4,P5,P6,P7, P8,P9,P10):-

send(K2, append,button(siguiente,message(@ prolog,competenciasR,K2))),

espregunta('Componer articulos mecánicos?',P2),P2='si',

%send(K2,open,point(570,600)).

/*new(X,button(siguiente,and(mess age(@prolog,mecanica1,Pre1? selection,Pre2?selection,Pre3? selection,Pre4?selection,Pre5? selection,Pre6?selection,Pre7? selection,Pre8?selection,Pre9? selection,Pre10? selection),message(K2,destroy)))),

espregunta('Componer articulos electronicos?',P1),P1='si',

espregunta('Construir cosas de madera?',P3),P3='si', espregunta('Conducir camiones o tractores?',P4),P4='si', espregunta('Trabajar con metalisteria o con máquina?',P5),P5='si', espregunta('Manejar un bólido o una motocicleta?',P6),P6='si', espregunta('Tomar cursos comerciales?',P7),P7='si. espregunta('Tomar cursos de dibujo mecánico?',P8),P8='si',

espregunta('Tomar cursos de ebanistería?',P9),P9='si',

send_list(Pre12,append,[no ,si]),

espregunta('Tomar cursos de mecánica automotriz?',P10),P10='si', competenciasR. */

competenciasR(K2):send(K2,destroy),

send(K3,append,Pre12),

new(Pre13,menu('Manejar herramientas motriz para metalurgia')), send_list(Pre13,append,[no ,si]), send(K3,append,Pre13),

new(K3,dialog('PREGUNTAS')), % Titulo de la interfas send(K3,size,size(480,440)), %tamaño de la interfaz

new(Pre14,menu('Hacer acabados en muebles o en trabajos de ebanistería')), send_list(Pre14,append,[no ,si]),

send(K3,append,label(text,'COMPE TENCIAS: Interés Mecánico',font('times','roman',16))), % escribir un texto send(K3,append,label(text,'Sé como o quiero saber cómo:',font('times','roman',16))),

new(Pre11,menu('Operar un voltímetro')), send_list(Pre11,append,[no , si]), send(K3,append(Pre11)),

new(Pre12,menu('Ajustar un carburador')),

send(K3,append,Pre14),

new(Pre15,menu('Interpretar copias heliográficas')), send_list(Pre15,append,[no ,si]), send(K3,append,Pre15),

new(Pre16,menu('Hacer reparaciones eléctricas sencillas')), send_list(Pre16,append,[no ,si]), send(K3,append,Pre16),

new(Pre17,menu('Reparar muebles')),

send_list(Pre17,append,[no ,si]), send(K3,append,Pre17),

new(Pre18,menu('Hacer diseños mecánicos')),

%new(X,button(siguiente,and(mess age(@prolog,preferencias2,Pre1? selection,Pre2?selection,Pre3? selection,Pre4?selection,Pre5? selection,Pre6?selection,Pre7? selection,Pre8?selection,Pre9? selection,Pre10?selection)))),

send_list(Pre18,append,[no

%send(K2,append,X),

,si]),

send(K3,open,point(460,100)).

send(K3,append,Pre18),

new(Pre19,menu('Hacer reparaciones sencillas a un radio o televisor')),

trabajosR(K3):- send(K3,destroy),

send_list(Pre19,append,[no

new(K4,dialog('PREGUNTAS')), % Titulo de la interfas

send(K3,append,Pre19),

send(K4,size,size(480,440)), %tamaño de la interfaz

,si]),

new(Pre20,menu('Hacer reparaciones sencillas de plomería')), send_list(Pre20,append,[no ,si]), send(K3,append,Pre20),

send(K4,append,label(text,'TRABA JOS: Interés Mecánico',font('times','roman',16))), % escribir un texto

new(Pre21,menu('Mecánico de aviación-repara aeroplanos')), send(K3, append,button(siguiente,message(@ prolog,trabajosR,K3))),

send_list(Pre21,append,[no , si]), send(K4,append(Pre21)),

new(Pre22,menu('operador de central eléctrica')),

send_list(Pre22,append,[no ,si]),

send_list(Pre27,append,[no ,si]),

send(K4,append,Pre22),

new(Pre23,menu('Maestro plomero-arregla tuberias y fregaderos')), send_list(Pre23,append,[no

send(K4,append,Pre27),

new(Pre28,menu('Ayudante de estación de gasolina')), send_list(Pre28,append,[no ,si]),

,si]),

send(K4,append,Pre28), send(K4,append,Pre23),

new(Pre24,menu('Operador de escabadoras')), send_list(Pre24,append,[no

new(Pre29,menu('Cirujano de árboles-arregla árboles')), send_list(Pre29,append,[no ,si]),

,si]),

send(K4,append,Pre29), send(K4,append,Pre24),

new(Pre25,menu('Topógrafomide distancias para \nconstruccion de edificios y caminos')),

new(Pre30,menu('Diseñador de herramientas')), send_list(Pre30,append,[no ,si]),

send_list(Pre25,append,[no

send(K4,append,Pre30),

,si]), send(K4,append,Pre25),

new(Pre26,menu('Inspector de construcciones')),

new(Pre31,menu('Fotograbadorhace placas de metal\n para imprimir ilustarciones')), send_list(Pre31,append,[no

send_list(Pre26,append,[no ,si]),

,si]), send(K4,append,Pre26),

new(Pre27,menu('Radio operador-envia y recibe mensajes por radio')),

send(K4,append,Pre31),

new(Pre32,menu('Electrisista')),

send_list(Pre32,append,[no ,si]),

new(Pre33,menu('Leer libros o publicaciones científicas?')),

send(K4,append,Pre32),

send_list(Pre33,append,[no , si]),

send(K4, append,button(siguiente,message(@ prolog,preferenciasI,K4))),

send(K5,append(Pre33)),

new(Pre34,menu('Trabajar en un laboratorio?')), send_list(Pre34,append,[no

%new(X,button(siguiente,and(mess age(@prolog,preferencias2,Pre1? selection,Pre2?selection,Pre3? selection,Pre4?selection,Pre5? selection,Pre6?selection,Pre7? selection,Pre8?selection,Pre9? selection,Pre10?selection)))), %send(K2,append,X), send(K4,open,point(460,100)).

preferenciasI(K4):send(K4,destroy), new(K5,dialog('PREGUNTAS')), % Titulo de la interfas

,si]), send(K5,append,Pre34),

new(Pre35,menu('Elaborar proyectos científicos?')), send_list(Pre35,append,[no ,si]), send(K5,append,Pre35),

new(Pre36,menu('Construir modelos de cohetes?')), send_list(Pre36,append,[no ,si]), send(K5,append,Pre36),

send(K5,size,size(480,440)), %tamaño de la interfaz new(Pre37,menu('Experimentar con equipos de química?')), send_list(Pre37,append,[no send(K5,append,label(text,'PREFE RENCIAS: Interés Científico',font('times','roman',16))), % escribir un texto

,si]), send(K5,append,Pre37),

new(Pre38,menu('Leer temas especiales por mi cuenta?')),

send_list(Pre38,append,[no ,si]), send(K5,append,Pre38),

new(Pre39,menu('Tomar cursos de física?')),

%new(X,button(siguiente,and(mess age(@prolog,preferencias2,Pre1? selection,Pre2?selection,Pre3? selection,Pre4?selection,Pre5? selection,Pre6?selection,Pre7? selection,Pre8?selection,Pre9? selection,Pre10?selection)))),

send_list(Pre39,append,[no

%send(K2,append,X),

,si]),

send(K5,open,point(460,100)).

send(K5,append,Pre39),

new(Pre40,menu('Tomar cursos de química?')),

competenciasI(K5):send(K5,destroy),

send_list(Pre40,append,[no

new(K6,dialog('PREGUNTAS')), % Titulo de la interfas

send(K5,append,Pre40),

send(K6,size,size(480,440)), %tamaño de la interfaz

,si]),

new(Pre41,menu('Tomar cursos de geometría?')), send_list(Pre41,append,[no ,si]), send(K5,append,Pre41),

new(Pre42,menu('Tomar cursos de biología?')), send_list(Pre42,append,[no

send(K6,append,label(text,'COMPE TENCIAS: Interés Científico',font('times','roman',16))), % escribir un texto send(K6,append,label(text,'Sé como o quiero saber cómo:',font('times','roman',16))),

,si]), send(K5,append,Pre42),

send(K5, append,button(siguiente,message(@ prolog,competenciasI,K5))),

new(Pre43,menu('Entender cómo funciona un tubo de vacío')), send_list(Pre43,append,[no , si]), send(K6,append(Pre43)),

new(Pre44,menu('Nombrar tres alimentos de alto \ncontenido en proteínas')), send_list(Pre44,append,[no

new(Pre49,menu('Identificar tres constelaciones')), send_list(Pre49,append,[no ,si]),

,si]),

send(K6,append,Pre49), send(K6,append,Pre44),

new(Pre45,menu('Entender que es la "media vida" \nde un elemento radiactivo')), send_list(Pre45,append,[no

new(Pre50,menu('Describir la función de los \nglóbulos blancos de la sangre')), send_list(Pre50,append,[no ,si]),

,si]),

send(K6,append,Pre50), send(K6,append,Pre45),

new(Pre46,menu('Emplear tablas de logaritmos')), send_list(Pre46,append,[no

new(Pre51,menu('Interpretar Fórmulas químicas sencillas')), send_list(Pre51,append,[no ,si]),

,si]),

send(K6,append,Pre51), send(K6,append,Pre46),

new(Pre47,menu('Usar una regla de cálculo para multiplicar y dividir')),

new(Pre52,menu('\t\t\tEntender por qué los satélites \nhechos por el hombre no caen a la tierra')), send_list(Pre52,append,[no

send_list(Pre47,append,[no ,si]),

,si]), send(K6,append,Pre47),

new(Pre48,menu('Manejar un microscopio')), send_list(Pre48,append,[no

send(K6,append,Pre52),

send(K6, append,button(siguiente,message(@ prolog,trabajosI,K6))),

,si]), send(K6,append,Pre48),

%new(X,button(siguiente,and(mess age(@prolog,preferencias2,Pre1?

selection,Pre2?selection,Pre3? selection,Pre4?selection,Pre5? selection,Pre6?selection,Pre7? selection,Pre8?selection,Pre9? selection,Pre10?selection)))), %send(K2,append,X), send(K6,open,point(460,100)).

send_list(Pre54,append,[no ,si]), send(K7,append,Pre54),

new(Pre55,menu('Astrónomoestudia las estrellas')), send_list(Pre55,append,[no ,si]), send(K7,append,Pre55),

trabajosI(K6):- send(K6,destroy), new(K7,dialog('PREGUNTAS')), % Titulo de la interfas

new(Pre56,menu('Zoólogoestudia los animales')), send_list(Pre56,append,[no ,si]),

send(K7,size,size(480,440)), %tamaño de la interfaz

send(K7,append,Pre56),

new(Pre57,menu('Químicotrabaja con sustancias químicas')), send(K7,append,label(text,'TRABA JOS: Interés Científico',font('times','roman',16))), % escribir un texto

send_list(Pre57,append,[no ,si]), send(K7,append,Pre57),

new(Pre58,menu('Científico investigador independiente ')), new(Pre53,menu('Meteorólogoestudia el tiempo')),

send_list(Pre58,append,[no ,si]), send(K7,append,Pre58),

send_list(Pre53,append,[no , si]), send(K7,append(Pre53)),

new(Pre54,menu('Biólogoestudia plantas y animales')),

new(Pre59,menu('Escritor de artículos científicos')), send_list(Pre59,append,[no ,si]),

send(K7,append,Pre59),

new(Pre60,menu('Editor de publicaciones científicas')),

send(K7, append,button(siguiente,message(@ prolog,preferenciasA,K7))),

send_list(Pre60,append,[no ,si]), send(K7,append,Pre60),

new(Pre61,menu('Geologoestudia la tierra')), send_list(Pre61,append,[no ,si]),

%new(X,button(siguiente,and(mess age(@prolog,preferencias2,Pre1? selection,Pre2?selection,Pre3? selection,Pre4?selection,Pre5? selection,Pre6?selection,Pre7? selection,Pre8?selection,Pre9? selection,Pre10?selection)))), %send(K2,append,X),

send(K7,append,Pre61),

new(Pre62,menu('Botanicoestudia las plantas')), send_list(Pre62,append,[no ,si]), send(K7,append,Pre62),

new(Pre63,menu('Ayudante de centros de investigación \ncientífica')),

send(K7,open,point(460,100)).

preferenciasA(K7):send(K7,destroy), new(K8,dialog('PREGUNTAS')), % Titulo de la interfas send(K8,size,size(480,440)), %tamaño de la interfaz

send_list(Pre63,append,[no ,si]), send(K7,append,Pre63),

new(Pre64,menu('Físicoestudia las leyes fisicas \nde la naturaleza')), send_list(Pre64,append,[no ,si]), send(K7,append,Pre64),

send(K8,append,label(text,'PREFE RENCIAS: Interés Artístico',font('times','roman',16))), % escribir un texto

new(Pre65,menu('Bosquejar,dibujar o pintar?')),

new(Pre70,menu('Asistir a recitales,conciertos o espectáculos musicales?')),

send_list(Pre65,append,[no , si]),

send_list(Pre70,append,[no ,si]),

send(K8,append(Pre65)),

new(Pre66,menu('Asistir a representaciones teatrales?')),

send(K8,append,Pre70),

new(Pre71,menu('Hacer retratos o fotografías?')),

send_list(Pre66,append,[no ,si]),

send_list(Pre71,append,[no ,si]),

send(K8,append,Pre66),

new(Pre67,menu('Diseñar muebles o edificios?')),

send(K8,append,Pre71),

new(Pre72,menu('Leer obras teatrales?')),

send_list(Pre67,append,[no ,si]),

send_list(Pre72,append,[no ,si]),

send(K8,append,Pre67),

new(Pre68,menu('Tocar en una banda, grupo u orquesta?')),

send(K8,append,Pre72),

new(Pre73,menu('Leer o escribir poesía?')),

send_list(Pre68,append,[no ,si]),

send_list(Pre73,append,[no ,si]),

send(K8,append,Pre68),

new(Pre69,menu('Tocar un instrumento?')),

send(K8,append,Pre73),

new(Pre74,menu('Tomar cursos arte?')),

send_list(Pre69,append,[no ,si]),

send_list(Pre74,append,[no ,si]),

send(K8,append,Pre69),

send(K8,append,Pre74),

send(K8, append,button(siguiente,message(@ prolog,competenciasA,K8))),

new(Pre75,menu('Participar en duelos o cuartetos corales')), send_list(Pre75,append,[no , si]), send(K9,append(Pre75)),

%new(X,button(siguiente,and(mess age(@prolog,preferencias2,Pre1? selection,Pre2?selection,Pre3? selection,Pre4?selection,Pre5? selection,Pre6?selection,Pre7? selection,Pre8?selection,Pre9? selection,Pre10?selection)))),

new(Pre76,menu('Tocar como solista')), send_list(Pre76,append,[no ,si]), send(K9,append,Pre76),

%send(K2,append,X), send(K8,open,point(460,100)).

new(Pre77,menu('Actuar en obras de teatro')), competenciasA(K8):send(K8,destroy), new(K9,dialog('PREGUNTAS')), % Titulo de la interfas send(K9,size,size(480,440)), %tamaño de la interfaz

send_list(Pre77,append,[no ,si]), send(K9,append,Pre77),

new(Pre78,menu('Hacer lectura de interpretación')), send_list(Pre78,append,[no ,si]), send(K9,append,Pre78),

send(K9,append,label(text,'COMPE TENCIAS: Interés Artístico',font('times','roman',16))), % escribir un texto send(K9,append,label(text,'Sé como o quiero saber cómo:',font('times','roman',16))),

new(Pre79,menu('Bailar danza moderna interpretativa o ballet?')), send_list(Pre79,append,[no ,si]), send(K9,append,Pre79),

new(Pre80,menu('Bosquejar personas para que puedan ser reconocidas')),

send(K9, append,button(siguiente,message(@ prolog,trabajosA,K9))),

send_list(Pre80,append,[no ,si]), send(K9,append,Pre80),

new(Pre81,menu('Hacer pintura o escultura')), send_list(Pre81,append,[no ,si]), send(K9,append,Pre81),

new(Pre82,menu('Hacer ceramica')),

%new(X,button(siguiente,and(mess age(@prolog,preferencias2,Pre1? selection,Pre2?selection,Pre3? selection,Pre4?selection,Pre5? selection,Pre6?selection,Pre7? selection,Pre8?selection,Pre9? selection,Pre10?selection)))), %send(K2,append,X), send(K9,open,point(460,100)).

send_list(Pre82,append,[no ,si]), send(K9,append,Pre82),

trabajosA(K9):- send(K9,destroy),

new(Pre83,menu('Diseñar ropa cartele o muebles')),

new(K10,dialog('PREGUNTAS')), % Titulo de la interfas

send_list(Pre83,append,[no

send(K10,size,size(480,440)), %tamaño de la interfaz

,si]), send(K9,append,Pre83),

new(Pre84,menu('Escribir bien cuentos o poesías')), send_list(Pre84,append,[no ,si]), send(K9,append,Pre84),

send(K10,append,label(text,'TRAB AJOS: Interés Artístico',font('times','roman',16))), % escribir un texto

new(Pre85,menu('Poetaescribe poesía')),

new(Pre90,menu('Arreglista musical')),

send_list(Pre85,append,[no , si]),

send_list(Pre90,append,[no ,si]),

send(K10,append(Pre85)),

new(Pre86,menu('Director de orquesta sinfónica')), send_list(Pre86,append,[no

send(K10,append,Pre90),

new(Pre91,menu('Comerciante de arte-vende cuadros,pinturas o escrituras')),

,si]),

send_list(Pre91,append,[no send(K10,append,Pre86),

,si]), send(K10,append,Pre91),

new(Pre87,menu('Músico-toca un instrumento o canta')), send_list(Pre87,append,[no ,si]), send(K10,append,Pre87),

new(Pre92,menu('Instructor teatral-enseña alas personas a ser actores')), send_list(Pre92,append,[no ,si]), send(K10,append,Pre92),

new(Pre88,menu('Autorescribe libros ,obras,poesias,etc')), send_list(Pre88,append,[no ,si]), send(K10,append,Pre88),

new(Pre93,menu('Cantante -canta en el escenario')), send_list(Pre93,append,[no ,si]), send(K10,append,Pre93),

new(Pre89,menu('Escritor independiente-escribe articulos\n para revistas o periodicos')), send_list(Pre89,append,[no

new(Pre94,menu('Compositorescribe musica o letra musical')),

,si]),

send_list(Pre94,append,[no send(K10,append,Pre89),

,si]), send(K10,append,Pre94),

new(Pre95,menu('Director de escena')), send_list(Pre95,append,[no ,si]), send(K10,append,Pre95),

new(K11,dialog('PREGUNTAS')), % Titulo de la interfas send(K11,size,size(480,440)), %tamaño de la interfaz

new(Pre96,menu('Dramaturgoescribe obras teatrales')), send_list(Pre96,append,[no ,si]), send(K10,append,Pre96),

send(K10, append,button(siguiente,message(@ prolog,preferenciasS,K10))),

send(K11,append,label(text,'PREFE RENCIAS: Interes de servicio social',font('times','roman',16))), % escribir un texto

new(Pre97,menu('Escribir cartas a los amigos')), send_list(Pre97,append,[no , si]), send(K11,append(Pre97)),

%new(X,button(siguiente,and(mess age(@prolog,preferencias2,Pre1? selection,Pre2?selection,Pre3? selection,Pre4?selection,Pre5? selection,Pre6?selection,Pre7? selection,Pre8?selection,Pre9? selection,Pre10?selection)))), %send(K2,append,X), send(K10,open,point(460,100)).

preferenciasS(K10):send(K10,destroy),

new(Pre98,menu('Asistir a servicios religiosos')), send_list(Pre98,append,[no ,si]), send(K11,append,Pre98),

new(Pre99,menu('Pertenecer a clubs sociales')), send_list(Pre99,append,[no ,si]), send(K11,append,Pre99),

new(Pre100,menu('Ayudar a los demas con sus problemas personales')),

send_list(Pre100,append,[no ,si]), send(K11,append,Pre100),

new(Pre106,menu('Hacer nuevos amigos')), send_list(Pre106,append,[no

new(Pre101,menu('Cuidar niños')),

,si]), send(K11,append,Pre106),

send_list(Pre101,append,[no ,si]), send(K11,append,Pre101),

new(Pre102,menu('Ir a fiestas')),

send(K11, append,button(siguiente,message(@ prolog,competenciasS,K11))),

send_list(Pre102,append,[no ,si]), send(K11,append,Pre102),

new(Pre103,menu('Bailar')), send_list(Pre103,append,[no ,si]), send(K11,append,Pre103),

new(Pre104,menu('Concurrir a reuniones y conferencias')), send_list(Pre104,append,[no ,si]),

%new(X,button(siguiente,and(mess age(@prolog,preferencias2,Pre1? selection,Pre2?selection,Pre3? selection,Pre4?selection,Pre5? selection,Pre6?selection,Pre7? selection,Pre8?selection,Pre9? selection,Pre10?selection)))), %send(K2,append,X), send(K11,open,point(460,100)).

send(K11,append,Pre104),

new(Pre105,menu('Ir a juegos deportivos')), send_list(Pre105,append,[no ,si]), send(K11,append,Pre105),

competenciasS(K11):send(K11,destroy), new(K12,dialog('PREGUNTAS')), % Titulo de la interfas

send(K12,size,size(480,440)), %tamaño de la interfaz

send_list(Pre110,append,[no ,si]), send(K12,append,Pre110),

send(K12,append,label(text,'COMP ETENCIAS: Interes de servicio social',font('times','roman',16))), % escribir un texto send(K12,append,label(text,'Sé como o quiero saber cómo:',font('times','roman',16))),

new(Pre107,menu('Saber explicar cosas a otras personas')), send_list(Pre107,append,[no ,

new(Pre111,menu('Planear diverciones para una fiesta')), send_list(Pre111,append,[no ,si]), send(K12,append,Pre111),

new(Pre112,menu('Ayudar a quienes estan enojados o afligidos')), send_list(Pre112,append,[no ,si]),

si]),

send(K12,append,Pre112), send(K12,append(Pre107)),

new(Pre108,menu('Cooperar y trabajar bien con los demás')), send_list(Pre108,append,[no ,si]),

new(Pre113,menu('Trabajar como voluntario en un\n hospital,clínica o asilo')), send_list(Pre113,append,[no ,si]), send(K12,append,Pre113),

send(K12,append,Pre108),

new(Pre109,menu('Ser buen anfitrión')),

new(Pre114,menu('Planear actividades sociales para\n escuelas o iglesias')),

send_list(Pre109,append,[no ,si]),

send_list(Pre114,append,[no ,si]),

send(K12,append,Pre109),

new(Pre110,menu('Enseñar con facilidad a los niños')),

send(K12,append,Pre114),

new(Pre115,menu('Hacer un buen juicio de personalidad')),

send_list(Pre115,append,[no ,si]), send(K12,append,Pre115),

new(K13,dialog('PREGUNTAS')), % Titulo de la interfas send(K13,size,size(480,480)), %tamaño de la interfaz

new(Pre116,menu('Saber entretener con habilidad a \n personas mayores que yo')), send_list(Pre116,append,[no send(K12,append,Pre116),

send(K13,append,label(text,'TRAB AJOS: Interes de servicio social',font('times','roman',16))), % escribir un texto

send(K12, append,button(siguiente,message(@ prolog,trabajosS,K12))),

new(Pre117,menu('Misionero foraneo-va a tierras \n lejanas a enseñar religion')),

,si]),

send_list(Pre117,append,[no , si]), send(K13,append(Pre117)),

%new(X,button(siguiente,and(mess age(@prolog,preferencias2,Pre1? selection,Pre2?selection,Pre3? selection,Pre4?selection,Pre5? selection,Pre6?selection,Pre7? selection,Pre8?selection,Pre9? selection,Pre10?selection)))),

new(Pre118,menu('Experto en delincuencia juvenil-ayuda a los\n jóvenes que tienen problemas con la ley ')), send_list(Pre118,append,[no ,si]), send(K13,append,Pre118),

%send(K2,append,X), send(K12,open,point(460,100)).

trabajosS(K12):send(K12,destroy),

new(Pre119,menu('Terapeuta de lenguaje-enseña alas personas a \n corregir sus problemas de lenguaje')), send_list(Pre119,append,[no ,si]),

send(K13,append,Pre119),

new(Pre120,menu('Consejero matrimonial')),

new(Pre125,menu('Ayudante del superintendente de\n escuelas municipales')), send_list(Pre125,append,[no ,si]),

send_list(Pre120,append,[no

send(K13,append,Pre125),

,si]), send(K13,append,Pre120),

new(Pre126,menu('Consejero personal')), new(Pre121,menu('Director de campos recreativos')),

send_list(Pre126,append,[no ,si]),

send_list(Pre121,append,[no

send(K13,append,Pre126),

,si]), send(K13,append,Pre121),

new(Pre127,menu('Asistente de casos siquiátricos')), new(Pre122,menu('Psicologo clínico')),

send_list(Pre127,append,[no ,si]),

send_list(Pre122,append,[no

send(K13,append,Pre127),

,si]), send(K13,append,Pre122),

new(Pre128,menu('Consejero vocacional')), new(Pre123,menu('Maestro de ciencias sociales')), send_list(Pre123,append,[no ,si]),

send_list(Pre128,append,[no ,si]), send(K13,append,Pre128),

send(K13,append,Pre123),

new(Pre124,menu('Director de agencia de bienestar social')),

send(K13, append,button(siguiente,message(@ prolog,preferenciasE,K13))),

send_list(Pre124,append,[no ,si]), send(K13,append,Pre124), %new(X,button(siguiente,and(mess

age(@prolog,preferencias2,Pre1? selection,Pre2?selection,Pre3? selection,Pre4?selection,Pre5? selection,Pre6?selection,Pre7? selection,Pre8?selection,Pre9? selection,Pre10?selection)))), %send(K2,append,X), send(K13,open,point(460,100)).

send_list(Pre130,append,[no ,si]), send(K14,append,Pre130),

new(Pre131,menu('Manejar mi propio servicio o negocio')), send_list(Pre131,append,[no ,si]), send(K14,append,Pre131),

preferenciasE(K13):send(K13,destroy),

new(Pre132,menu('Asistir a conferencias')),

new(K14,dialog('PREGUNTAS')), % Titulo de la interfas

,si]),

send_list(Pre132,append,[no send(K14,append,Pre132),

send(K14,size,size(480,440)), %tamaño de la interfaz

new(Pre133,menu('Dar pláticas')), send_list(Pre133,append,[no send(K14,append,label(text,'PREFE RENCIAS: Interés persuasivo',font('times','roman',16)) ), % escribir un texto

,si]), send(K14,append,Pre133),

new(Pre134,menu('Actuar como jefe de cualquier grupo')), new(Pre129,menu('Influir en los demas')),

send_list(Pre134,append,[no ,si]),

send_list(Pre129,append,[no ,

send(K14,append,Pre134),

si]), send(K14,append(Pre129)),

new(Pre135,menu('Supervisar el trabajo de otros')), new(Pre130,menu('Discutir de política')),

send_list(Pre135,append,[no ,si]),

send(K14,append,Pre135),

new(Pre136,menu('Conocer a gente importante')),

selection,Pre4?selection,Pre5? selection,Pre6?selection,Pre7? selection,Pre8?selection,Pre9? selection,Pre10?selection)))), %send(K2,append,X),

send_list(Pre136,append,[no ,si]),

send(K14,open,point(460,100)). send(K14,append,Pre136),

new(Pre137,menu('Encabezar un grupo para\n alcanzar alguna meta')),

competenciasE(K14):send(K14,destroy),

send_list(Pre137,append,[no

new(K15,dialog('PREGUNTAS')), % Titulo de la interfas

send(K14,append,Pre137),

send(K15,size,size(480,440)), %tamaño de la interfaz

,si]),

new(Pre138,menu('Participar en campañas políticas')), send_list(Pre138,append,[no ,si]), send(K14,append,Pre138),

send(K15,append,label(text,'COMP ETENCIAS: Interes persuacivo',font('times','roman',16)) ), % escribir un texto send(K15,append,label(text,'Sé como o quiero saber cómo:',font('times','roman',16))),

send(K14, append,button(siguiente,message(@ prolog,competenciasE,K14))),

new(Pre139,menu('Supervisar el trabajo de los demas')), send_list(Pre139,append,[no , si]), send(K15,append(Pre139)),

%new(X,button(siguiente,and(mess age(@prolog,preferencias2,Pre1? selection,Pre2?selection,Pre3?

new(Pre140,menu('Tener facilidad para hacer que las \npersonas hagan las cosas a mi manera')), send_list(Pre140,append,[no

send(K15,append,Pre144),

new(Pre145,menu('Organizar un club,grupo o partido')),

,si]),

send_list(Pre145,append,[no send(K15,append,Pre140),

,si]), send(K15,append,Pre145),

new(Pre141,menu('Tener energia y entusiasmo extraordinarios')),

new(Pre146,menu('Emprender mi propio negocio o servicio')),

send_list(Pre141,append,[no ,si]),

send_list(Pre146,append,[no ,si]),

send(K15,append,Pre141),

new(Pre142,menu('Ser un buen vendedor')),

send(K15,append,Pre146),

new(Pre147,menu('Llegar a ser un líder próspero')),

send_list(Pre142,append,[no ,si]),

send_list(Pre147,append,[no ,si]),

send(K15,append,Pre142),

new(Pre143,menu('Encabezar un grupo para presentar\n sugerencias o quejas a una autoridad')), send_list(Pre143,append,[no ,si]),

send(K15,append,Pre147),

new(Pre148,menu('Ser un buen participante en\n una discusión o debate')), send_list(Pre148,append,[no ,si]), send(K15,append,Pre148),

send(K15,append,Pre143),

new(Pre144,menu('Ganar un premio por trabajar como vendedor o lider')), send_list(Pre144,append,[no ,si]),

send(K15, append,button(siguiente,message(@ prolog,trabajosE,K15))),

send_list(Pre149,append,[no , si]), send(K16,append(Pre149)),

%new(X,button(siguiente,and(mess age(@prolog,preferencias2,Pre1? selection,Pre2?selection,Pre3? selection,Pre4?selection,Pre5? selection,Pre6?selection,Pre7? selection,Pre8?selection,Pre9? selection,Pre10?selection)))),

new(Pre150,menu('Corredor de bolsa-compra y vende acciones\n en la bolsa de valores')), send_list(Pre150,append,[no ,si]), send(K16,append,Pre150),

%send(K2,append,X), send(K15,open,point(460,100)).

trabajosE(K15):send(K15,destroy),

new(Pre151,menu('Representante de fábricas')), send_list(Pre151,append,[no ,si]), send(K16,append,Pre151),

new(K16,dialog('PREGUNTAS')), % Titulo de la interfas send(K16,size,size(480,440)), %tamaño de la interfaz

new(Pre152,menu('Productor de televisión')), send_list(Pre152,append,[no ,si]), send(K16,append,Pre152),

send(K16,append,label(text,'TRAB AJOS: Interes persuasivo',font('times','roman',16)) ), % escribir un texto

new(Pre153,menu('Gerente de hoteles')), send_list(Pre153,append,[no ,si]), send(K16,append,Pre153),

new(Pre149,menu('Especulador-el que se arriesga a ganar dinero')),

new(Pre154,menu('Ejecutivo de empresas')),

send_list(Pre154,append,[no

send(K16,append,Pre159),

,si]), send(K16,append,Pre154),

new(Pre155,menu('Gerente de restaurante')), send_list(Pre155,append,[no

new(Pre160,menu('Director de campañas políticas')), send_list(Pre160,append,[no ,si]), send(K16,append,Pre160),

,si]), send(K16,append,Pre155),

new(Pre156,menu('Maestro de ceremonias')),

send(K16, append,button(siguiente,message(@ prolog,preferenciasC,K16))),

send_list(Pre156,append,[no ,si]), send(K16,append,Pre156),

new(Pre157,menu('Agente viajero')), send_list(Pre157,append,[no ,si]), send(K16,append,Pre157),

new(Pre158,menu('corredor de bienes raíces')),

%new(X,button(siguiente,and(mess age(@prolog,preferencias2,Pre1? selection,Pre2?selection,Pre3? selection,Pre4?selection,Pre5? selection,Pre6?selection,Pre7? selection,Pre8?selection,Pre9? selection,Pre10?selection)))), %send(K2,append,X), send(K16,open,point(460,100)).

send_list(Pre158,append,[no ,si]), send(K16,append,Pre158),

new(Pre159,menu('Consultor de relaciones industriales')), send_list(Pre159,append,[no ,si]),

preferenciasC(K16):send(K16,destroy), new(K17,dialog('PREGUNTAS')), % Titulo de la interfas send(K17,size,size(480,440)), %tamaño de la interfaz

send_list(Pre164,append,[no ,si]), send(K17,append,Pre164), send(K17,append,label(text,'PREFE RENCIAS: Interés de oficina',font('times','roman',16))), % escribir un texto

new(Pre165,menu('Tomar cursos de mecanografia')), send_list(Pre165,append,[no ,si]),

new(Pre161,menu('Mecanografiar documentos o cartas')),

send(K17,append,Pre165),

send_list(Pre161,append,[no ,

new(Pre166,menu('Tomar cursos de administracion de empresas')),

si]), send(K17,append(Pre161)),

send_list(Pre166,append,[no new(Pre162,menu('Trabajar haciendo sumas,restas ,multiplicaciones \n ya sea en un negocio o para llevar una contabilidad')), send_list(Pre162,append,[no ,si]), send(K17,append,Pre162),

new(Pre163,menu('Manejar maquinas de ofisina de cualquier tipo')), send_list(Pre163,append,[no ,si]), send(K17,append,Pre163),

new(Pre164,menu('Llevar registro detallados de gastos')),

,si]), send(K17,append,Pre166),

new(Pre167,menu('Tomar cursos de contabilidad')), send_list(Pre167,append,[no ,si]), send(K17,append,Pre167),

new(Pre168,menu('Omar cursos de matemáticas comerciales')), send_list(Pre168,append,[no ,si]), send(K17,append,Pre168),

new(Pre169,menu('Archivar cartas ,informes o registros')),

send_list(Pre169,append,[no ,si]), send(K17,append,Pre169),

new(K18,dialog('PREGUNTAS')), % Titulo de la interfas send(K18,size,size(480,440)), %tamaño de la interfaz

new(Pre170,menu('Escribir cartas comerciales')), send_list(Pre170,append,[no ,si]), send(K17,append,Pre170),

send(K17, append,button(siguiente,message(@ prolog,competenciasC,K17))),

send(K18,append,label(text,'COMP ETENCIAS: Interés de oficina',font('times','roman',16))), % escribir un texto send(K18,append,label(text,'Sé como o quiero saber cómo:',font('times','roman',16))),

new(Pre171,menu('Operar una máquina duplicadora o sumadora ')), send_list(Pre171,append,[no , %new(X,button(siguiente,and(mess age(@prolog,preferencias2,Pre1? selection,Pre2?selection,Pre3? selection,Pre4?selection,Pre5? selection,Pre6?selection,Pre7? selection,Pre8?selection,Pre9? selection,Pre10?selection)))), %send(K2,append,X), send(K17,open,point(460,100)).

competenciasC(K17):send(K17,destroy),

si]), send(K18,append(Pre171)),

new(Pre172,menu('Tomar tarquigrafía')), send_list(Pre172,append,[no ,si]), send(K18,append,Pre172),

new(Pre173,menu('Archivar correspondencia y otros documentos')),

send_list(Pre173,append,[no ,si]),

send_list(Pre178,append,[no ,si]),

send(K18,append,Pre173),

new(Pre174,menu('Desempeñar un empleo mde oficina')), send_list(Pre174,append,[no

send(K18,append,Pre178),

new(Pre179,menu('Manejar equipos sencillos de procesamiento de datos\n como teclados para perforacion de tarjetas')),

,si]),

send_list(Pre179,append,[no send(K18,append,Pre174),

,si]), send(K18,append,Pre179),

new(Pre175,menu('Manejar una maquína contable')), send_list(Pre175,append,[no ,si]), send(K18,append,Pre175),

new(Pre180,menu('Llevar registros exactos de pagos y ventas')), send_list(Pre180,append,[no ,si]), send(K18,append,Pre180),

new(Pre176,menu('Manejar una computadora-tipo\n maquina de escribir')), send_list(Pre176,append,[no ,si]), send(K18,append,Pre176),

send(K18, append,button(siguiente,message(@ prolog,trabajosC,K18))),

new(Pre177,menu('Hacer mucho trabajo de oficina en poco tiempo')), send_list(Pre177,append,[no ,si]), send(K18,append,Pre177),

new(Pre178,menu('Usar maquínas calculadoras')),

%new(X,button(siguiente,and(mess age(@prolog,preferencias2,Pre1? selection,Pre2?selection,Pre3? selection,Pre4?selection,Pre5? selection,Pre6?selection,Pre7?

selection,Pre8?selection,Pre9? selection,Pre10?selection)))),

new(Pre182,menu('Experto en control de calidada')),

%send(K2,append,X),

send_list(Pre182,append,[no ,si]),

send(K18,open,point(460,100)).

trabajosC(K18):send(K18,destroy),

send(K19,append,Pre182),

new(Pre183,menu('Revisor de presupuestos')), send_list(Pre183,append,[no ,si]),

new(K19,dialog('PREGUNTAS')), % Titulo de la interfas send(K19,size,size(480,460)), %tamaño de la interfaz

send(K19,append,Pre183),

new(Pre184,menu('Estadístico')), send_list(Pre184,append,[no ,si]),

send(K19,append,label(text,'TRAB AJOS: Interés de oficina',font('times','roman',16))), % escribir un texto send(K19,append,label(text,'Sé como o quiero saber cómo:',font('times','roman',16))),

new(Pre181,menu('Contadorllevar en cuenta el dinero\n que se gasta ')), send_list(Pre181,append,[no , si]),

send(K19,append,Pre184),

new(Pre185,menu('Taquigrafía de tribunales')), send_list(Pre185,append,[no ,si]), send(K19,append,Pre185),

new(Pre186,menu('Cajero bancario')), send_list(Pre186,append,[no ,si]), send(K19,append,Pre186),

send(K19,append(Pre181)), new(Pre187,menu('Controlador de inventarios')),

send_list(Pre187,append,[no

send(K19,append,Pre192),

,si]), send(K19,append,Pre187),

new(Pre188,menu('Analista financiero')),

send(K19, append,button(siguiente,message(@ prolog,probando,K19))),

send_list(Pre188,append,[no ,si]), send(K19,append,Pre188),

new(Pre189,menu('Estimador de costos')), send_list(Pre189,append,[no ,si]), send(K19,append,Pre189),

new(Pre190,menu('Pagador de nómina')), send_list(Pre190,append,[no ,si]), send(K19,append,Pre190),

new(Pre191,menu('Inspector bancario')), send_list(Pre191,append,[no

%new(X,button(siguiente,and(mess age(@prolog,preferencias2,Pre1? selection,Pre2?selection,Pre3? selection,Pre4?selection,Pre5? selection,Pre6?selection,Pre7? selection,Pre8?selection,Pre9? selection,Pre10?selection)))), %send(K2,append,X), send(K19,open,point(460,100)).

probando(K19):send(K19,destroy), new(K20,dialog('PREGUNTAS')), % Titulo de la interfas send(K20,size,size(440,340)), %tamaño de la interfaz

,si]), send(K19,append,Pre191),

new(Pre192,menu('Especialista en impuestos')), send_list(Pre192,append,[no ,si]),

send(K20,append,label(text,'Aconti nuacion elija las actividades\n que usted es mas bueno:(enumerando del 6 "el mejor" al 1 "el peor."',font('times','roman',14))), % escribir un texto

send(K20,append,H), %send(K19,append,label(text,'Sé como o quiero saber cómo:',font('times','roman',16))),

new(D ,menu(mecácnicas,cycle)),

new(I,menu(oficios,cycle)), send_list(I,append, [1,2,3,4,5,6]), send(K20,append,I),

send_list(D,append, [1,2,3,4,5,6]), send(K20,append,D),

new(E,menu(cientificas,cycle)),

send(K20,append,button(consultar, message(@prolog,ingMecanica,K2 0))), %send(K20,append,menu(prueba,m essage(@display)),

send_list(E,append, [1,2,3,4,5,6]), send(K20,append,E),

new(F,menu(artísticas,cycle)), send_list(F,append, [1,2,3,4,5,6]), send(K20,append,F),

send(K20,open,point(460,100)).

ingMecanica(K20):send(K20,destroy), new(K21,dialog('Mecanico')), % Titulo de la interfas

new(G,menu(enseñanzas,cycle)), send_list(G,append, [1,2,3,4,5,6]),

send(K21,size,size(500,580)), %tamaño de la interfaz send(K21,colour,colour(red)),

send(K20,append,G),

new(H,menu(ventas,cycle)), send_list(H,append, [1,2,3,4,5,6]),

%send(K21,append,label(text,'Acon tinuacion ',font('times','roman',14))), % escribir un texto %send(K19,append,label(text,'Uste

d esta capacitado para:',font('times','roman',28))),

new(B, bitmap(I)), new(F2, figure), send(F2, display, B),

%tres('C:/programa/jaspe.jpg',K21),

new(D1, device), send(D1, display, F2), send(K1, display, D1).

%send(K20,append,button(consulta r,message(@prolog,ingMecanica,K 20))), %send(K20,append,menu(prueba,m essage(@display)),

mineralesI('C:/Programa/INGENIE RIA_MECANICA.jpg',K21),

send(K21,open,point(460,200)).

mineralesI(V,K1):- new(I, image(V)),

3. Referencias [1]http://www.monografias.com/tra bajos16/sistemas-expertos/sistemasexpertos.shtml [2]http://es.scribd.com/doc/1773694 38/Sistemas-Expertos-Con-VisualProlog [3]http://es.scribd.com/doc/6543 048/Sistemas-Expertos-eInteligencia-Artificial