Você está na página 1de 44

Sistema Experto: Test Orientacin Vocacional Segn

(informacin
sobre Holland
el conocimiento
Preferencias vocacionales
de John

humano).
Para que un sistema experto sea
herramienta efectiva, los usuarios deben
interactuar de una forma fcil, reuniendo
Escuela de Informtica
dos capacidades para poder cumplirlo:
Explicar
sus razonamientos o base del
Docente: Ing. Arturo
Daz Pulido
conocimiento: los sistemas expertos
se deben

Universidad Nacional de Trujillo

Yenan, Salvador Rojas

Michel, Solano Arvalo

Paul, Snchez Rodrguez

Ing. Informtica
Universidad Nacional de Trujillo

Ing. Informtica
Universidad Nacional de Trujillo

Ing. Informtica
Universidad Nacional de Trujillo

yenanmaolsalvadororjas@hotmail.com

yenanmaolsalvadororjas@outlook.com

sebagrey17@gmail.com

RESUMEN
Implementaremos un sistema experto con
Prolog cuya finalidad ser orientar a los
estudiantes preuniversitarios que an no
definen su perfil acadmico y poder
ayudarles en su eleccin, los estudiantes
utilizaran el Ts, interactuara con el
Sistema Experto, brindndole opciones de
eleccin por medio de preguntas, que
permitirn 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. Tambin se dice
que un SE, se basa en el conocimiento
declarativo (hechos, reglas, situaciones) y
el conocimiento de control o gua

realizar siguiendo ciertas reglas o


pasos comprensibles de manera que se
pueda generar la explicacin para
cada una de estas reglas, que a la vez
se basan en hechos.

Adquisicin 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 ms rapidez y eficacia
todas las tareas que realiza.

Para el desarrollo del Sistema Experto de


Test
de
Orientacin
Vocacional,

elaboraremos uno del tipo basado en


reglas las cuales se definirn de acuerdo a
un conjunto de hechos.

1.2.4 Mdulos de justificacin


Explica
el
razonamiento
utilizado por el sistema para llegar a una
determinada conclusin.
1.2.5 Interfaz de usuario
Es la interaccin 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 ms rpida 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 comnmente
estn conformados por:
1.2.1 Base Conocimiento
Contiene
conocimiento
modelado extrado del dilogo con el
experto.
1.2.2 Base de Hechos
Contiene los hechos sobre un
problema que se ha descubierto durante
el anlisis.
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
fcilmente, siendo muy difcil la
prdida 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 despus de
que un experto computarizado
exista, usted puede crear un nuevo
experto simplemente copiando el

programa de una mquina 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
simblica.
c) los sistemas expertos no son
bueno para reconocer cuando no
existen respuestas o cuando los
problemas estn fuera de su rea.

1.4 Prolog
1.4.1 Introduccin 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, adems de sus
relaciones y sus reglas.
En lugar de correr en un programa
para obtener una solucin, se hace una
pregunta, el programa revisa la base de
datos para encontrar la solucin a la
pregunta.

1.4.2 Caractersticas de Prolog

Basado en lgica y programacin


declarativa.
No se especifica cmo debe hacerse,
sino qu debe lograrse.
Una caracterstica importante en
Prolog y que lo diferencia de otros
lenguajes de programacin, es que
una variable slo puede tener un valor
mientras se cumple el objetivo.
El programador se concentra ms en
el conocimiento que en los
algoritmos.
-Qu es conocido? (hechos, reglas)
-Qu preguntar? (Cmo resolverlo)

En Prolog, se llega a una solucin


infirindola desde algo ya conocido
(conocimiento).

2. TEST ORIENTACION
VOCACIONAL
2.1 Planteamiento y diseo
Queremos resolver la problemtica
que se enfrenta las personas al elegir el
rea en donde desarrollarse, le es difcil
decidirse por una carrera profesional
porque no tienen muy claro las
definiciones de estas. Por ello decidimos
realizar este sistema experto de test de
orientacin
vocacional
usando
inventario de preferencias vocacionales
de John holland.
2.2 Teora de John Holland
En la dcada de los 50 John Holland
desarrollo su teora de las orientaciones
de la personalidad planteando que las
personas desarrollan a temprana edad

tipos de personalidad como producto de


la interaccin del individuo con su
medio social. Los factores sociales,
culturales, el medio fsico los modelos
co-orientados
(padres,
profesores,
amigos, hermanos, etc.) permiten la
formacin 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
psicolgicas.
Holland parti de las siguientes
consideraciones o conceptos bsicos:

La eleccin de la profesin es
una
expresin
de
la
personalidad.
Elegir una ocupacin es acto
expresivo que refleja la motivacin,
los conocimientos, la personalidad y
la habilidad.
Los estereotipos vocacionales poseen
significados
psicolgicos
y
sociolgicos confiables e importantes
Los individuos de un grupo
ocupacional
comn
tienen
personalidades e historias similares
de desarrollo personal, de ello se
deduce que reaccionan de manera
anloga a muchas situaciones y
problemas crendose un ambiente
personal caracterstico.
La satisfaccin en el trabajo, el
rendimiento, la estabilidad en una
profesin depende de la congruencia
entre la propia personalidad y el
ambiente en que se trabaja.

Holland plantea seis modelos


ambientales
anlogos a su teora de
personalidad.

2.2.1

El ambiente realista.
La caracterizan las tareas explicitas,
fsicas y concretas a que deben enfrentarse
sus integrantes. Exigen ingenio y capacidad
mecnica persistencia y desplazamiento
fsicos de un lugar a otro.
2.2.2

El ambiente intelectual
La caracterizan las tareas que exigen a
lo abstracto y lo creador ms que percepcin
personal. Las soluciones efectivas requieren
imaginacin, inteligencia y sensibilidad para
los problemas fsicos 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 dems.

2.2.4

El ambiente convencional

La caracterizan las tareas y problemas


que exigen el procesamiento rutinario
sistemtico y concreto de informacin verbal
y matemtica.
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 artstico
La caracterizan tareas y problemas que
exigen interpretar o crear formas artsticas
mediante el buen gusto sentimientos e
imaginacin.
Holland representa estas seis
orientaciones en un hexgono .En donde las
orientaciones extremas son las ms opuestas
entre s, mientras que las adyacentes son las
ms similares. Muchas personas no caen

Inters
de
Oficina

dentro de un mismo tipo, si no que combinan


dos o tres orientaciones

Inters
R
Mecnico

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

Inters
I
Cientfico

espregunta('Manejar un blido o
Inters una motocicleta?',X):Artstico esrespuesta(X).
C

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

espregunta('Tomar cursos de dibujo


mecnico?',X):-esrespuesta(X).
espregunta('Tomar cursos de
ebanistera?',X):-esrespuesta(X).
E
Inters
Persuasivo

S
Inters de
Servicio social

espregunta('Tomar cursos de
mecnica automotriz?',X):esrespuesta(X).

% R - INTERES MECANICOS competencias


2.3 Implementacin
A continuacin el cdigo en prolog
del sistema experto.
esrespuesta('si').

espregunta('Operar un
voltmetro',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
ebanistera',X):-esrespuesta(X).

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

espregunta('Interpretar copias
heliogrficas',X):-esrespuesta(X).
espregunta('Hacer reparaciones
elctricas sencillas',X):esrespuesta(X).

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

espregunta('Diseador de
herramientas',X):-esrespuesta(X).

espregunta('Hacer diseos
mecnicos',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 plomera',X):esrespuesta(X).

% R - INTERES MECANICOS trabajos


espregunta('Mecnico de aviacinrepara aeroplanos',X):esrespuesta(X).
espregunta('operador de central
elctrica',X):-esrespuesta(X).
espregunta('Maestro plomeroarregla tuberias y fregaderos',X):esrespuesta(X).
espregunta('Operador de
escabadoras',X):-esrespuesta(X).
espregunta('Topgrafo-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 estacin 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 cientficas?',X):esrespuesta(X).
espregunta('Trabajar en un
laboratorio?',X):-esrespuesta(X).
espregunta('Elaborar proyectos
cientficos?',X):-esrespuesta(X).
espregunta('Construir modelos de
cohetes?',X):-esrespuesta(X).
espregunta('Experimentar con
equipos de qumica?',X):esrespuesta(X).
espregunta('Leer temas especiales
por mi cuenta?',X):-esrespuesta(X).
espregunta('Tomar cursos de
fsica?',X):-esrespuesta(X).
espregunta('Tomar cursos de
qumica?',X):-esrespuesta(X).
espregunta('Tomar cursos de
geometra?',X):-esrespuesta(X).
espregunta('Tomar cursos de
biologa?',X):-esrespuesta(X).

% I - Interes cientifico competencias

espregunta('Entender cmo
funciona un tubo de vaco',X):esrespuesta(X).
espregunta('Nombrar tres alimentos
de alto \ncontenido en
protenas',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
clculo para multiplicar y
dividir',X):-esrespuesta(X).
espregunta('Manejar un
microscopio',X):-esrespuesta(X).
espregunta('Identificar tres
constelaciones',X):-esrespuesta(X).
espregunta('Describir la funcin de
los \nglbulos blancos de la
sangre',X):-esrespuesta(X).
espregunta('Interpretar Frmulas
qumicas sencillas',X):esrespuesta(X).
espregunta('\t\t\tEntender por qu
los satlites \nhechos por el hombre
no caen a la tierra',X):esrespuesta(X).

% I - Interes cientifico competencias


espregunta('Meteorlogo-estudia el
tiempo',X):-esrespuesta(X).
espregunta('Bilogo-estudia plantas
y animales',X):-esrespuesta(X).

espregunta('Astrnomo-estudia las
estrellas',X):-esrespuesta(X).
espregunta('Zologo-estudia los
animales',X):-esrespuesta(X).
espregunta('Qumico-trabaja con
sustancias qumicas',X):esrespuesta(X).
espregunta('Cientfico investigador
independiente ',X):-esrespuesta(X).
espregunta('Escritor de artculos
cientficos',X):-esrespuesta(X).
espregunta('Editor de publicaciones
cientficas',X):-esrespuesta(X).
espregunta('Geologo-estudia la
tierra',X):-esrespuesta(X).
espregunta('Botanico-estudia las
plantas',X):-esrespuesta(X).
espregunta('Ayudante de centros de
investigacin \ncientfica',X):esrespuesta(X).
espregunta('Fsico-estudia las leyes
fisicas \nde la naturaleza',X):esrespuesta(X).

% A - PREFERENCIAS - Inters
Artstico
espregunta('Bosquejar,dibujar o
pintar?',X):-esrespuesta(X).
espregunta('Asistir a
representaciones teatrales?',X):esrespuesta(X).
espregunta('Disear 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 espectculos
musicales?',X):-esrespuesta(X).

espregunta('Hacer pintura o
escultura',X):-esrespuesta(X).
espregunta('Hacer ceramica',X):esrespuesta(X).
espregunta('Disear ropa cartele o
muebles',X):-esrespuesta(X).
espregunta('Escribir bien cuentos o
poesas',X):-esrespuesta(X).

espregunta('Hacer retratos o
fotografas?',X):-esrespuesta(X).
espregunta('Leer obras
teatrales?',X):-esrespuesta(X).
espregunta('Leer o escribir
poesa?',X):-esrespuesta(X).
espregunta('Tomar cursos arte?',X):esrespuesta(X).

% A - COMPETENCIAS - Inters
Artstico
espregunta('Participar en duelos o
cuartetos corales',X):esrespuesta(X).

% A - TRABAJOS - Inters
Artstico
espregunta('Poeta-escribe
poesa',X):-esrespuesta(X).
espregunta('Director de orquesta
sinfnica',X):-esrespuesta(X).
espregunta('Msico-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
interpretacin',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-ensea
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 dems',X):esrespuesta(X).

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

espregunta('Ser buen anfitrin',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 nios',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('Ensear con facilidad a


los nios',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,clnica 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 ensear
religion',X):-esrespuesta(X).
espregunta('Experto en delincuencia
juvenil-ayuda a los\n jvenes que
tienen problemas con la ley ',X):esrespuesta(X).

espregunta('Terapeuta de lenguajeensea 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 clnico',X):esrespuesta(X).

espregunta('Dar plticas',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 campaas
polticas',X):-esrespuesta(X).

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

% E - PREFERENCIAS - Inters
persuasivo
espregunta('Influir en los
demas',X):-esrespuesta(X).
espregunta('Discutir de
poltica',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
races',X):-esrespuesta(X).
espregunta('Consultor de relaciones
industriales',X):-esrespuesta(X).
espregunta('Director de campaas
polticas',X):-esrespuesta(X).

espregunta('Llegar a ser un lder


prspero',X):-esrespuesta(X).
espregunta('Ser un buen
participante en\n una discusin 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
fbricas',X):-esrespuesta(X).
espregunta('Productor de
televisin',X):-esrespuesta(X).

% C - PREFERENCIAS - Inters
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
matemticas 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 - Inters
de oficina
espregunta('Operar una mquina
duplicadora o sumadora ',X):esrespuesta(X).
espregunta('Tomar tarquigrafa',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('Estadstico',X):esrespuesta(X).
espregunta('Taquigrafa de
tribunales',X):-esrespuesta(X).
espregunta('Cajero bancario',X):esrespuesta(X).

espregunta('Desempear un empleo
mde oficina',X):-esrespuesta(X).

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

espregunta('Manejar una maquna


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 maqunas
calculadoras',X):-esrespuesta(X).

espregunta('Pagador de
nmina',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 - Inters de
oficina

ejecutar:new(K,dialog('proyecto')),
% Hancho Altura
send(K,size,size(840,510)),
%tamao 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)),
%tamao 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)),
%tamao de la interfaz

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

send(K2,append,label(text,'PREFE
RENCIAS: Inters
Mecnico',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 mecnicos?')),

new(Pre6,menu('Manejar un
blido 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 mecnico?')),
send_list(Pre8,append,[no ,si]),

send(K2,append,Pre8),

new(Pre9,menu('Tomar cursos
de ebanistera?')),
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 mecnica 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
mecnicos?',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
mquina?',P5),P5='si',
espregunta('Manejar un blido o
una motocicleta?',P6),P6='si',
espregunta('Tomar cursos
comerciales?',P7),P7='si.
espregunta('Tomar cursos de dibujo
mecnico?',P8),P8='si',

espregunta('Tomar cursos de
ebanistera?',P9),P9='si',

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

espregunta('Tomar cursos de
mecnica
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)),
%tamao de la interfaz

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

send(K3,append,label(text,'COMPE
TENCIAS: Inters
Mecnico',font('times','roman',16))),
% escribir un texto
send(K3,append,label(text,'S
como o quiero saber
cmo:',font('times','roman',16))),

new(Pre11,menu('Operar un
voltmetro')),
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 heliogrficas')),
send_list(Pre15,append,[no
,si]),
send(K3,append,Pre15),

new(Pre16,menu('Hacer
reparaciones elctricas 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
diseos mecnicos')),

%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)),
%tamao de la interfaz

,si]),

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

send(K4,append,label(text,'TRABA
JOS: Inters
Mecnico',font('times','roman',16))),
% escribir un texto

new(Pre21,menu('Mecnico de
aviacin-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 elctrica')),

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
estacin 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('Topgrafomide distancias para \nconstruccion


de edificios y caminos')),

new(Pre30,menu('Diseador
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 cientficas?')),

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 cientficos?')),
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)),
%tamao de la interfaz
new(Pre37,menu('Experimentar con
equipos de qumica?')),
send_list(Pre37,append,[no
send(K5,append,label(text,'PREFE
RENCIAS: Inters
Cientfico',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 fsica?')),

%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 qumica?')),

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)),
%tamao de la interfaz

,si]),

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

new(Pre42,menu('Tomar
cursos de biologa?')),
send_list(Pre42,append,[no

send(K6,append,label(text,'COMPE
TENCIAS: Inters
Cientfico',font('times','roman',16))),
% escribir un texto
send(K6,append,label(text,'S
como o quiero saber
cmo:',font('times','roman',16))),

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

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

new(Pre43,menu('Entender
cmo funciona un tubo de vaco')),
send_list(Pre43,append,[no ,
si]),
send(K6,append(Pre43)),

new(Pre44,menu('Nombrar
tres alimentos de alto \ncontenido
en protenas')),
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
funcin de los \nglbulos 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
Frmulas qumicas sencillas')),
send_list(Pre51,append,[no
,si]),

,si]),

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

new(Pre47,menu('Usar una
regla de clculo para multiplicar y
dividir')),

new(Pre52,menu('\t\t\tEntender por
qu los satlites \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('Astrnomoestudia 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('Zologoestudia los animales')),


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

send(K7,size,size(480,440)),
%tamao de la interfaz

send(K7,append,Pre56),

new(Pre57,menu('Qumicotrabaja con sustancias qumicas')),


send(K7,append,label(text,'TRABA
JOS: Inters
Cientfico',font('times','roman',16))),
% escribir un texto

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

new(Pre58,menu('Cientfico
investigador independiente ')),
new(Pre53,menu('Meteorlogoestudia 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('Bilogoestudia plantas y animales')),

new(Pre59,menu('Escritor de
artculos cientficos')),
send_list(Pre59,append,[no
,si]),

send(K7,append,Pre59),

new(Pre60,menu('Editor de
publicaciones cientficas')),

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 investigacin
\ncientfica')),

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)),
%tamao de la interfaz

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

new(Pre64,menu('Fsicoestudia las leyes fisicas \nde la


naturaleza')),
send_list(Pre64,append,[no
,si]),
send(K7,append,Pre64),

send(K8,append,label(text,'PREFE
RENCIAS: Inters
Artstico',font('times','roman',16))),
% escribir un texto

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

new(Pre70,menu('Asistir a
recitales,conciertos o espectculos
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 fotografas?')),

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

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

send(K8,append,Pre66),

new(Pre67,menu('Disear
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 poesa?')),

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)),
%tamao de la interfaz

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

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

send(K9,append,label(text,'COMPE
TENCIAS: Inters
Artstico',font('times','roman',16))),
% escribir un texto
send(K9,append,label(text,'S
como o quiero saber
cmo:',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('Disear ropa
cartele o muebles')),

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

send_list(Pre83,append,[no

send(K10,size,size(480,440)),
%tamao de la interfaz

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

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

send(K10,append,label(text,'TRAB
AJOS: Inters
Artstico',font('times','roman',16))),
% escribir un texto

new(Pre85,menu('Poetaescribe poesa')),

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 sinfnica')),
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('Msico-toca
un instrumento o canta')),
send_list(Pre87,append,[no
,si]),
send(K10,append,Pre87),

new(Pre92,menu('Instructor
teatral-ensea 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)),
%tamao 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
nios')),

,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)),
%tamao 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
cmo:',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 dems')),
send_list(Pre108,append,[no
,si]),

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

send(K12,append,Pre108),

new(Pre109,menu('Ser buen
anfitrin')),

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('Ensear
con facilidad a los nios')),

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)),
%tamao 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
ensear 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
jvenes 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-ensea 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 siquitricos')),
new(Pre122,menu('Psicologo
clnico')),

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)),
%tamao de la interfaz

new(Pre133,menu('Dar
plticas')),
send_list(Pre133,append,[no
send(K14,append,label(text,'PREFE
RENCIAS: Inters
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
poltica')),

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)),
%tamao de la interfaz

,si]),

new(Pre138,menu('Participar
en campaas polticas')),
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
cmo:',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 lder prspero')),

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
discusin 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 fbricas')),
send_list(Pre151,append,[no
,si]),
send(K16,append,Pre151),

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

new(Pre152,menu('Productor
de televisin')),
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
campaas polticas')),
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 races')),

%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)),
%tamao de la interfaz

send_list(Pre164,append,[no
,si]),
send(K17,append,Pre164),
send(K17,append,label(text,'PREFE
RENCIAS: Inters 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 matemticas
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)),
%tamao 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: Inters de
oficina',font('times','roman',16))),
% escribir un texto
send(K18,append,label(text,'S
como o quiero saber
cmo:',font('times','roman',16))),

new(Pre171,menu('Operar una
mquina 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
tarquigrafa')),
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('Desempear 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 maquna 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
maqunas 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)),
%tamao de la interfaz

send(K19,append,Pre183),

new(Pre184,menu('Estadstico')),
send_list(Pre184,append,[no
,si]),

send(K19,append,label(text,'TRAB
AJOS: Inters de
oficina',font('times','roman',16))),
% escribir un texto
send(K19,append,label(text,'S
como o quiero saber
cmo:',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('Taquigrafa
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
nmina')),
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)),
%tamao 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
cmo:',font('times','roman',16))),

new(D
,menu(meccnicas,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(artsticas,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(enseanzas,cycle)),
send_list(G,append,
[1,2,3,4,5,6]),

send(K21,size,size(500,580)),
%tamao 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

Você também pode gostar