longitud([],0). longitud([X|Xs],N):-longitud(Xs,M),N is M + 1. n_enfermedades(X,Y):-enfermedades(X)= enfermedades(enfermedades), longitud([diabetes,sobrepeso,calculos_renales,flujo_blanco_y_amarillo,alcoholismo,varices,reuma tismo,estreimiento,molestia_en_garganta,dolor_de_muela,arteriosclerosis,mal_de_orin,mal_alie nto,bronquitis,dolores_musculares_articulaciones,falta_de_leche_materna,infeccion_respiratoria, diarrea,vomitos_con_sangre,asma,ictericia,parsitos],Y),nl, write('este es el nmero de enfermedades a las que te puedo dar respuestas:').
pausa :- nl,write('Pulsa <Enter> para continuar '), %En cada pausa se visualizara en pantalla el texto del write"" skip(10). %lee y salta diez caracteres"" pausa1 :- nl,write('Pulsa <Enter> para volver al menu raz '), skip(10). %lee y salta diez caracteres""
/* borraPantalla <- borra la pantalla */ %Esta instruccin es para borrar pantalla cada que se invoque borraPantallaen distintos lugares del programa"" borraPantalla :- borraLinea(25). borraLinea(1) :- !,nl. borraLinea(N) :- nl,N1 is N-1,borraLinea(N1).
% Instrucciones del mensaje de error ""Estas instrucciones son para mandar un mensaje de error cuando se all seleccionado una opcin incorrecta o la opcin no este disponible en el men principal"" error:- borraPantalla, write('La opcin seleccionada no esta disponible'), nl, write('O el nmero escrito es incorrecto'), pausa.
% Instrucciones Del Mensaje de Salida ""Estas instrucciones son para finalizar el programa el cual borrara pantalla y nos mandada visualizar unos textos finales"" salida:- borraPantalla,
write('|------------Gracias Por consultar al hierberito! ------------|'),nl, write('|----------Universidad de estudios Humanisticos---------|'),nl, write('|---------------ingeniera en sistemas-------------|'),nl, write('|---------------Inteligencia Articifial-------------|'),nl, write('|--------------Maestro: ing. Lester Selva------------|'),nl, write('|---------Elaborado po: Erick Baltodano Lpez-------------|'),nl, write('|-------en colaboracin deVanessa del Socorro Hernandez-----------|'),nl, write('|-------Y Cristiana Leonor Gonzales Rosales-----------|'),nl, pausa, halt. %Termina la ejecucin""
% Instrucciones Del Manejo de opciones Del Menu Principal % Estn instrucciones son para capturar las opciones desde el teclado y mandar visualizar el texto correspondiente a cada valor deX"" opciones(X):- ( (X = 1) -> %lee la opcin almacenada compara y manda visualizar los textos"" write('????????????????????????????????????????????????????'),nl, write('????????????????????????????????????????????????????'),nl, write('tomar jugo de tres maraones,en ayunas,esto baja el '),nl, write('nivel de azucar,hacerlo todos los das,hasta que el'),nl, write(' azucar tenga el nivel deseado'),nl, write('debe chequearse constantemente el Azucar'),nl, pausa1; (X = 2) -> write('????????????????????????????????????????????????????'),nl, write('????????????????????????????????????????????????????'),nl, write('tomar t de culantro,esto tres veces al da'),nl, write('este tratamiento es lento pero seguro'),nl, pausa1; (X = 3) -> write('????????????????????????????????????????????????????'),nl, write('????????????????????????????????????????????????????'),nl, write('licuar de 10 a 15 rabanos,luego exprimircon un pao limpio,hasta'),nl, write('optener un vasito,tomarlo de 10 a 15 das en ayunas'),nl, pausa1; (X = 4) -> write('????????????????????????????????????????????????????'),nl, write('????????????????????????????????????????????????????'),nl, write(' para el blanco: durante 5 minutos hierve 3 cucharadas de hojas de pino,en medio'),nl, write('litro de agua,realice lavados vaginales hasta que desaparezcan las molestias'),nl, write(' para el amarillo:en dos litros de agua hirviendo poner media libra'),nl, write('de brcoli,dos onzas de rnica,tres onzas de cola de caballo por 5 minutos,se cuela y se toma como agua de tiempo'),nl, write('se aconseja utilizar ropa interior de algodon,para evitar el surgimiento de bacterias'),nl, pausa1; (X = 5) -> write('????????????????????????????????????????????????????'),nl, write('????????????????????????????????????????????????????'),nl, write('en un octavo de agua ardiente colocas 3 cohollos de ruda,una cabeza'),nl, write(' de ajo machacado y lo dejas al sereno,se cuela y se toma '),nl, write('da mejor efecto si el da anterior tomo licor'),nl, pausa1; (X = 6) -> write('????????????????????????????????????????????????????'),nl, write('????????????????????????????????????????????????????'),nl, write('pelas 3 higos,los partes por la mitad,los coses en 2 litros de agua,agr'),nl, write('egas las cscaras de 3 limones,dejas que se consuma hasta la mitad,'),nl, write('dejas reposar tapado hasta que se enfre,lo colocas en una botella tapada'),nl, write(' y tomas una copita tres veces al da'),nl, pausa1; (X = 7) -> write('????????????????????????????????????????????????????'),nl, write('????????????????????????????????????????????????????'),nl, write('cortas 4 pepitas de aguacate,en 6 u 8 pedazos,cada uno lo colocas en una'),nl, write(' botella y se le agregan medio litro de alcohol de 96 grados,lo dejas '),nl, write('tapado en_maceracin por 8 das,luego le agregas romero y al siguiente'),nl, write(' da frotas la parte afectada con lienzos,por las noches antes de acostarse'),nl, pausa1; (X = 8) -> write('????????????????????????????????????????????????????'),nl, write('????????????????????????????????????????????????????'),nl, write('se elabora un t,este consiste en ervir ciruelas secas tomndola como agua '),nl, write('de tiempo,esto una vez al da hasta reponerse del padecimiento'),nl, pausa1; (X = 9) -> write('????????????????????????????????????????????????????'),nl, write('????????????????????????????????????????????????????'),nl, write('en una taza de agua pones a cocer una cucharada de fenogreco,lo dejas'),nl, write(' reposar 5 minutos,agregas el jugo de 3 limones y una cucharada de '),nl, write('miel,con esto haces gargaras'),nl, pausa1; (X = 10) -> write('????????????????????????????????????????????????????'),nl, write('????????????????????????????????????????????????????'),nl, write('machacas o picas semilla de aguacate,un puo de sal,una pastilla de '),nl, write('alcanfor,lo pones a hervir en medio litro de agua por 10 minutos,'),nl, write('con esto haces enjuagues lo ms caliente que puedas'),nl, pausa1; (X = 11) -> write('????????????????????????????????????????????????????'),nl, write('????????????????????????????????????????????????????'),nl, write('Pulveriza 2 cucharadas de hojas de valerianas se le agraga 1/8 de de alcohol de 40 g'),nl, write('se deja reposar por 7 das luego se cuela y se guarda en un recipiente hermtico'),nl, write('se dosifica tomando 20 gotas de este preparado en 1 taza de agua caliente, tomas 1 despues '),nl, write('de cada comida'),nl, pausa1; (X = 12) -> write('????????????????????????????????????????????????????'),nl, write('????????????????????????????????????????????????????'),nl, write('por 5 minutos herves 4 cucharadas de calices de rosa de jamaica,en 4 tazas'),nl, write(' de agua,entibieas y tomas agua detiempo durante el da'),nl, pausa1; (X = 13) -> write('????????????????????????????????????????????????????'),nl, write('????????????????????????????????????????????????????'),nl, write('hay que hervir 2 tazas de agua,luego aggregas 1 cucharada de '),nl, write('hojas de romero se tapa y dejas reposar 5 minutos,lo cuelas y lo dejas '),nl, write('reposar 5 minutos,cuelas y haces gargaras'),nl, pausa1; (X = 14) -> write('????????????????????????????????????????????????????'),nl, write('????????????????????????????????????????????????????'),nl, write('por 5 minutos herves 2 cucharadas de llanten en medio litro de agua,lo '),nl, write('reposas por 10 minutos luego lo cuelas y tomas una taza 3 veces al da'),nl, pausa1; (X = 15) -> write('????????????????????????????????????????????????????'),nl, write('????????????????????????????????????????????????????'),nl, write('haces una cataplasma machacando varios pedazos de raz de jengibre,lo '),nl, write('mezclas con harina de linaza,lo envuelves en un pao limpio y aplicas en el area afectada'),nl, pausa1; (X = 16) -> write('????????????????????????????????????????????????????'),nl, write('????????????????????????????????????????????????????'),nl, write('hierves 1 y media taza de agua,picas semillas,hojas,raz de hinajo y '),nl, write('se agrega una cucharada de cada una cuando el agua esta hirviendo,lo'),nl, write(' tapas reposalo por 5 minutos,lo cuelas y lo tomas 1 taza despus de cada comida'),nl, pausa1; (X = 17) -> write('????????????????????????????????????????????????????'),nl, write('????????????????????????????????????????????????????'),nl, write('preparas una infusin colocando 1 cucharada de hojas y 1 de flores'),nl, write(' de hierbabuena en 1 taza de agua hirviendo,se tapa y lo endulzas-'),nl, write('con miel al gusto,tomas una taza caliente en ayunas y otra antes de acostarte'),nl, pausa1; (X = 18) -> write('????????????????????????????????????????????????????'),nl, write('????????????????????????????????????????????????????'),nl, write('hierves varios pedazos de corteza y 2 cucharadas de hojas picadas'),nl, write(' de roble,en 1 litro de agua lo reposas por 3 minutos;lo cuelas y'),nl, write(' tomas 1 taza media hora antes de cada comida'),nl, pausa1; (X = 19) -> write('????????????????????????????????????????????????????'),nl, write('????????????????????????????????????????????????????'),nl, write('hierves varios pedazos de corteza y 2 cucharadas de hojas picadas'),nl, write(' de roble,en 1 litro de agua lo reposas por 3 minutos;lo cuelas y'),nl, write(' tomas 1 taza media hora antes de cada comida'),nl, pausa1; (X = 20) -> write('????????????????????????????????????????????????????'),nl, write('????????????????????????????????????????????????????'),nl, write('haces una infusin la que consiste en hervir 1 y media taza de agua,'),nl, write('agregas 2 cucharadas de hojas y flores piacadas de cardo santo,lo '),nl, write('reposas 5 minutos tapado lo cuelas y tomas una taza en ayunas'),nl, pausa1; (X = 21) -> write('????????????????????????????????????????????????????'),nl, write('????????????????????????????????????????????????????'),nl, write('preparas un cocimiento poniendo a hervir por 10 minutos 3 cucharadas'),nl, write(' de hojas y flores de apazote picadas,lo cuelas en 1 litro de agua y '),nl, write('procedes a tomarlo en ayunas cuando este tibio'),nl, pausa1; (X = 22) -> write('????????????????????????????????????????????????????'),nl, write('????????????????????????????????????????????????????'),nl, write('preparas el jugo de 3 naranjas y una cabeza de ajo machacado y picado,lo'),nl, write(' revuelves y lo dejas al sereno durante la noche,tomalo por la maana'),nl, write(' en ayunas por 9 ds consecutivos'),nl, pausa1; (X = 23) -> salida; %lee la opcin almacenada compara y manda visualizar los textos"" error).
% Instrucciones Men Principal
menu:- %Inicializa el menu"" borraPantalla, %Borra la pantalla con las instrucciones antes dadas"" write('-------clinica virtual---------'),nl, %Escribe el texto y salta linea"" write('-----------Menu principal--------------'),nl, %Escribe el texto y salta linea"" write('Seleccione tu padecimiento:'),nl, %Escribe el texto y salta linea tab(10),write('1) Diabetes'),nl, %deja un espacio de 10 y escribe el texto luego salta linea"" tab(10),write('2) Sobrepeso'),nl, %deja un espacio de 10 y escribe el texto luego salta linea"" tab(10),write('3) Calculos Renales'),nl, %deja un espacio de 10 y escribe el texto luego salta linea"" tab(10),write('4) Flujo blanco o amarillo'),nl, %deja un espacio de 10 y escribe el texto luego salta linea"" tab(10),write('5) Alcoholismo'),nl, tab(10),write('6) Varices'),nl, tab(10),write('7) Reumatismo'),nl, tab(10),write('8) Estreimiento'),nl, tab(10),write('9) Molestias en la garganta'),nl, tab(10),write('10) Dolor de muela'),nl, tab(10),write('11) Arteriosclerosis'),nl, tab(10),write('12) Mal de orin'),nl, tab(10),write('13) Mal aliento'),nl, tab(10),write('14) bronquitis o catarros'),nl, tab(10),write('15) Dolores musculares o articulaciones'),nl, tab(10),write('16) Falta de leche materna'),nl, tab(10),write('17) Infeccines respiratorias'),nl, tab(10),write('18) Diarrea'),nl, tab(10),write('19) vmitos con sangre por ulceras'),nl, tab(10),write('20) Asma'),nl, tab(10),write('21) Ictericia'),nl, tab(10),write('22) Parsitos'),nl,
write('Digite el numero del mal que padeces: '), read(X), %Manda a pantalla el texto y lee el valor introducido"" opciones(X), %Almacena el valor introducido en la variable opciones"" menu.