SlideShare una empresa de Scribd logo
1 de 20
SISTEMAS EXPERTOS
Profesor: Luis Enrique Rivas Carvajal
Correo : LR.ALLPC@hotmail.com
WHATSAPP: (+51) 946.646.715
Semana: 4 Clase: 2
Semestre: 2020-1
2Escuela Ingeniería SistemasSISTEMAS EXPERTOS
PROLOG Prof.: LUIS ENRIQUE RIVAS (2020-1)
EJERCICIO 1
Determinar el menor numero
(X) de una lista formada por N
términos
(3, 1, 5)  1
3Escuela Ingeniería SistemasSISTEMAS EXPERTOS
PROLOG Prof.: LUIS ENRIQUE RIVAS (2020-1)
ARITMÉTICA EN PROLOG
% Determinar si un numero (X) es par
%
par(X) :- 0 is X mod 2.
4Escuela Ingeniería SistemasSISTEMAS EXPERTOS
PROLOG Prof.: LUIS ENRIQUE RIVAS (2020-1)
ARITMÉTICA EN PROLOG
% Determinar si un numero (X) es impar
%
impar(X) :- 1 is X mod 2.
5Escuela Ingeniería SistemasSISTEMAS EXPERTOS
PROLOG Prof.: LUIS ENRIQUE RIVAS (2020-1)
ARITMÉTICA EN PROLOG
% Determinar si la Lista (L) es palindroma
%
palindromo(L) :- reverse(L, L).
6Escuela Ingeniería SistemasSISTEMAS EXPERTOS
PROLOG Prof.: LUIS ENRIQUE RIVAS (2020-1)
ARITMÉTICA EN PROLOG
member/2
append/3
append/2
delete/3
last/2
reverse/2
permutation/2
https://www.swi-
prolog.org/pldoc/
man?section=lists
7Escuela Ingeniería SistemasSISTEMAS EXPERTOS
PROLOG Prof.: LUIS ENRIQUE RIVAS (2020-1)
ARITMÉTICA EN PROLOG
% Determinar la longitud de una lista
%
longitud([ ], 0).
longitud([ _ | Cola], N) :-
longitud(Cola, T), N is T+1.
8Escuela Ingeniería SistemasSISTEMAS EXPERTOS
PROLOG Prof.: LUIS ENRIQUE RIVAS (2020-1)
ARITMÉTICA EN PROLOG
% Determinar si la Lista2 (L2) es la inversa de la Lista1 (L1).
% Ambas listas deben ser del mismo tamaño
%
esInversa(L1,L2) :- esInversa_aux(L1,[],L2).
esInversa_aux([],L,L).
esInversa_aux([X|L],Acum,L2) :-
esInversa_aux(L,[X|Acum],L2).
9Escuela Ingeniería SistemasSISTEMAS EXPERTOS
PROLOG Prof.: LUIS ENRIQUE RIVAS (2020-1)
EJERCICIO 2
% Invertir una lista de tamaño N
(1, 3, 5)  (5, 3, 1)
10Escuela Ingeniería SistemasSISTEMAS EXPERTOS
PROLOG Prof.: LUIS ENRIQUE RIVAS (2020-1)
ARITMÉTICA EN PROLOG
Calcular el valor del elemento N de la Serie de Fibonacci
(0,1,1,2,3,5,8,13,21,...)
%
fib(0, 1) :- !.
fib(1, 1) :- !.
fib(N, R) :- N1 is N - 1, N2 is N - 2,
fib(N1, R1), fib(N2, R2), R is R1 + R2.
0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 |
0 | 1 | 1 | 2 | 3 | 5 | 8 | 13 |
11Escuela Ingeniería SistemasSISTEMAS EXPERTOS
PROLOG Prof.: LUIS ENRIQUE RIVAS (2020-1)
ARITMÉTICA EN PROLOG
Determinar el Maximo Comun Divisor (MCD) de
dos numeros X, Z enteros
%
esMCD(X,X,X).
esMCD(X,Y,Z) :- X < Y, Y1 is Y-X, esMCD(X,Y1,Z).
esMCD(X,Y,Z) :- X > Y, esMCD(Y,X,Z).
12Escuela Ingeniería SistemasSISTEMAS EXPERTOS
PROLOG Prof.: LUIS ENRIQUE RIVAS (2020-1)
EJERCICIO 3
Determinar el MCM (Mínimo Comun
Multiplo) de 2 números enteros
(50, 20)  100
13Escuela Ingeniería SistemasSISTEMAS EXPERTOS
PROLOG Prof.: LUIS ENRIQUE RIVAS (2020-1)
ARITMÉTICA EN PROLOG
% Ordenar una lista (2, 3, 1) --> (1, 2, 3)
ordenar([],[]).
ordenar([H|T], Q) :-
separar(H, T, Menor, Mayor),
ordenar(Menor, M1), ordenar(Mayor,
M2), append(M1,[H|M2],Q).
14Escuela Ingeniería SistemasSISTEMAS EXPERTOS
PROLOG Prof.: LUIS ENRIQUE RIVAS (2020-1)
ARITMÉTICA EN PROLOG
% separar(Pivote, Lista, Menores, Mayores)
separar(_,[],[],[]).
separar(X,[A|B],[A|Menor],Mayor) :- A =< X,
separar(X, B, Menor, Mayor).
separar(X,[A|B],Menor,[A|Mayor]) :- A > X,
separar(X, B, Menor, Mayor).
15Escuela Ingeniería SistemasSISTEMAS EXPERTOS
PROLOG Prof.: LUIS ENRIQUE RIVAS (2020-1)
ARITMÉTICA EN PROLOG
% producto vectorial homogeneo (vectores del
mismo tamaño)
prodVect([],[],0).
prodVect([X|Xs],[Y|Ys],N):-
prodVect(Xs,Ys,N1), N is N1+X*Y.
16Escuela Ingeniería SistemasSISTEMAS EXPERTOS
PROLOG Prof.: LUIS ENRIQUE RIVAS (2020-1)
ARITMÉTICA EN PROLOG
% Sumar elementos de una lista
%
sumaLista([],0).
sumaLista([X|L],Y) :-
sumaLista(L,Y1), Y is X+Y1.
17Escuela Ingeniería SistemasSISTEMAS EXPERTOS
PROLOG Prof.: LUIS ENRIQUE RIVAS (2020-1)
ARITMÉTICA EN PROLOG
% Multiplicar los elementos de una lista
%
esMulti([], 1).
esMulti([X|Xs], S):- esMulti(Xs, S2),
S is S2 * X.
18Escuela Ingeniería SistemasSISTEMAS EXPERTOS
PROLOG Prof.: LUIS ENRIQUE RIVAS (2020-1)
EJERCICIO 4
% Calcular el producto de un
numero entero por una lista
(2, 3, 5) & 5  (10, 15, 25)
19Escuela Ingeniería SistemasSISTEMAS EXPERTOS
PROLOG Prof.: LUIS ENRIQUE RIVAS (2020-1)
EJERCICIO 5
% Calcular el promedio de una
lista
(24, 30, 6)  20
20Escuela Ingeniería SistemasSISTEMAS EXPERTOS
PROLOG Prof.: LUIS ENRIQUE RIVAS (2020-1)
EJERCICIO 6-7
Calcular los N primeros números primos
(6)  1,2,3,5,7,11
decir, si un numero es primo
(15)  NO

Más contenido relacionado

Similar a Exp+s4 c2+(profesor) (20)

1 practica 1 sis 2120 a 1porhoja
1 practica 1 sis 2120 a 1porhoja1 practica 1 sis 2120 a 1porhoja
1 practica 1 sis 2120 a 1porhoja
 
S03
S03S03
S03
 
CIO ORGANIZACION EMERGENTES CIO ANALISIS.pptx
CIO ORGANIZACION EMERGENTES CIO ANALISIS.pptxCIO ORGANIZACION EMERGENTES CIO ANALISIS.pptx
CIO ORGANIZACION EMERGENTES CIO ANALISIS.pptx
 
LABO 1 ROBOTICA 2022.docx
LABO 1 ROBOTICA 2022.docxLABO 1 ROBOTICA 2022.docx
LABO 1 ROBOTICA 2022.docx
 
Recursividad 2017 jdchc
Recursividad 2017 jdchcRecursividad 2017 jdchc
Recursividad 2017 jdchc
 
A 10
A 10A 10
A 10
 
Trabajo2
Trabajo2Trabajo2
Trabajo2
 
EXP U4T1 (PROFESOR).pptx
EXP U4T1 (PROFESOR).pptxEXP U4T1 (PROFESOR).pptx
EXP U4T1 (PROFESOR).pptx
 
S03 ad4001 ss
S03 ad4001 ssS03 ad4001 ss
S03 ad4001 ss
 
2023-TFG5_Metaheuristicas_para_Turismo
2023-TFG5_Metaheuristicas_para_Turismo2023-TFG5_Metaheuristicas_para_Turismo
2023-TFG5_Metaheuristicas_para_Turismo
 
El intervalo que satisface la siguiente eacuación (1)
El intervalo que satisface la siguiente eacuación (1)El intervalo que satisface la siguiente eacuación (1)
El intervalo que satisface la siguiente eacuación (1)
 
El intervalo que satisface la siguiente eacuación (1)
El intervalo que satisface la siguiente eacuación (1)El intervalo que satisface la siguiente eacuación (1)
El intervalo que satisface la siguiente eacuación (1)
 
Estadstica descriptiva-1230745228674108-2
Estadstica descriptiva-1230745228674108-2Estadstica descriptiva-1230745228674108-2
Estadstica descriptiva-1230745228674108-2
 
Polinomios
PolinomiosPolinomios
Polinomios
 
Examen del 3 t simm
Examen del 3 t simmExamen del 3 t simm
Examen del 3 t simm
 
Optimización de sistemas y funciones
Optimización de sistemas y funcionesOptimización de sistemas y funciones
Optimización de sistemas y funciones
 
AD4001_S03
AD4001_S03AD4001_S03
AD4001_S03
 
AD4001S03
AD4001S03AD4001S03
AD4001S03
 
Ad4001 s03 ss
Ad4001 s03 ssAd4001 s03 ss
Ad4001 s03 ss
 
Practicas prolog2011
Practicas prolog2011Practicas prolog2011
Practicas prolog2011
 

Último

Proyecto integrador. Las TIC en la sociedad S4.pptx
Proyecto integrador. Las TIC en la sociedad S4.pptxProyecto integrador. Las TIC en la sociedad S4.pptx
Proyecto integrador. Las TIC en la sociedad S4.pptx241521559
 
Global Azure Lima 2024 - Integración de Datos con Microsoft Fabric
Global Azure Lima 2024 - Integración de Datos con Microsoft FabricGlobal Azure Lima 2024 - Integración de Datos con Microsoft Fabric
Global Azure Lima 2024 - Integración de Datos con Microsoft FabricKeyla Dolores Méndez
 
pruebas unitarias unitarias en java con JUNIT
pruebas unitarias unitarias en java con JUNITpruebas unitarias unitarias en java con JUNIT
pruebas unitarias unitarias en java con JUNITMaricarmen Sánchez Ruiz
 
9egb-lengua y Literatura.pdf_texto del estudiante
9egb-lengua y Literatura.pdf_texto del estudiante9egb-lengua y Literatura.pdf_texto del estudiante
9egb-lengua y Literatura.pdf_texto del estudianteAndreaHuertas24
 
guía de registro de slideshare por Brayan Joseph
guía de registro de slideshare por Brayan Josephguía de registro de slideshare por Brayan Joseph
guía de registro de slideshare por Brayan JosephBRAYANJOSEPHPEREZGOM
 
International Women's Day Sucre 2024 (IWD)
International Women's Day Sucre 2024 (IWD)International Women's Day Sucre 2024 (IWD)
International Women's Day Sucre 2024 (IWD)GDGSucre
 
Redes direccionamiento y subredes ipv4 2024 .pdf
Redes direccionamiento y subredes ipv4 2024 .pdfRedes direccionamiento y subredes ipv4 2024 .pdf
Redes direccionamiento y subredes ipv4 2024 .pdfsoporteupcology
 
POWER POINT YUCRAElabore una PRESENTACIÓN CORTA sobre el video película: La C...
POWER POINT YUCRAElabore una PRESENTACIÓN CORTA sobre el video película: La C...POWER POINT YUCRAElabore una PRESENTACIÓN CORTA sobre el video película: La C...
POWER POINT YUCRAElabore una PRESENTACIÓN CORTA sobre el video película: La C...silviayucra2
 
Trabajo Mas Completo De Excel en clase tecnología
Trabajo Mas Completo De Excel en clase tecnologíaTrabajo Mas Completo De Excel en clase tecnología
Trabajo Mas Completo De Excel en clase tecnologíassuserf18419
 
CLASE DE TECNOLOGIA E INFORMATICA PRIMARIA
CLASE  DE TECNOLOGIA E INFORMATICA PRIMARIACLASE  DE TECNOLOGIA E INFORMATICA PRIMARIA
CLASE DE TECNOLOGIA E INFORMATICA PRIMARIAWilbisVega
 
Presentación guía sencilla en Microsoft Excel.pptx
Presentación guía sencilla en Microsoft Excel.pptxPresentación guía sencilla en Microsoft Excel.pptx
Presentación guía sencilla en Microsoft Excel.pptxLolaBunny11
 
Desarrollo Web Moderno con Svelte 2024.pdf
Desarrollo Web Moderno con Svelte 2024.pdfDesarrollo Web Moderno con Svelte 2024.pdf
Desarrollo Web Moderno con Svelte 2024.pdfJulian Lamprea
 
EPA-pdf resultado da prova presencial Uninove
EPA-pdf resultado da prova presencial UninoveEPA-pdf resultado da prova presencial Uninove
EPA-pdf resultado da prova presencial UninoveFagnerLisboa3
 

Último (13)

Proyecto integrador. Las TIC en la sociedad S4.pptx
Proyecto integrador. Las TIC en la sociedad S4.pptxProyecto integrador. Las TIC en la sociedad S4.pptx
Proyecto integrador. Las TIC en la sociedad S4.pptx
 
Global Azure Lima 2024 - Integración de Datos con Microsoft Fabric
Global Azure Lima 2024 - Integración de Datos con Microsoft FabricGlobal Azure Lima 2024 - Integración de Datos con Microsoft Fabric
Global Azure Lima 2024 - Integración de Datos con Microsoft Fabric
 
pruebas unitarias unitarias en java con JUNIT
pruebas unitarias unitarias en java con JUNITpruebas unitarias unitarias en java con JUNIT
pruebas unitarias unitarias en java con JUNIT
 
9egb-lengua y Literatura.pdf_texto del estudiante
9egb-lengua y Literatura.pdf_texto del estudiante9egb-lengua y Literatura.pdf_texto del estudiante
9egb-lengua y Literatura.pdf_texto del estudiante
 
guía de registro de slideshare por Brayan Joseph
guía de registro de slideshare por Brayan Josephguía de registro de slideshare por Brayan Joseph
guía de registro de slideshare por Brayan Joseph
 
International Women's Day Sucre 2024 (IWD)
International Women's Day Sucre 2024 (IWD)International Women's Day Sucre 2024 (IWD)
International Women's Day Sucre 2024 (IWD)
 
Redes direccionamiento y subredes ipv4 2024 .pdf
Redes direccionamiento y subredes ipv4 2024 .pdfRedes direccionamiento y subredes ipv4 2024 .pdf
Redes direccionamiento y subredes ipv4 2024 .pdf
 
POWER POINT YUCRAElabore una PRESENTACIÓN CORTA sobre el video película: La C...
POWER POINT YUCRAElabore una PRESENTACIÓN CORTA sobre el video película: La C...POWER POINT YUCRAElabore una PRESENTACIÓN CORTA sobre el video película: La C...
POWER POINT YUCRAElabore una PRESENTACIÓN CORTA sobre el video película: La C...
 
Trabajo Mas Completo De Excel en clase tecnología
Trabajo Mas Completo De Excel en clase tecnologíaTrabajo Mas Completo De Excel en clase tecnología
Trabajo Mas Completo De Excel en clase tecnología
 
CLASE DE TECNOLOGIA E INFORMATICA PRIMARIA
CLASE  DE TECNOLOGIA E INFORMATICA PRIMARIACLASE  DE TECNOLOGIA E INFORMATICA PRIMARIA
CLASE DE TECNOLOGIA E INFORMATICA PRIMARIA
 
Presentación guía sencilla en Microsoft Excel.pptx
Presentación guía sencilla en Microsoft Excel.pptxPresentación guía sencilla en Microsoft Excel.pptx
Presentación guía sencilla en Microsoft Excel.pptx
 
Desarrollo Web Moderno con Svelte 2024.pdf
Desarrollo Web Moderno con Svelte 2024.pdfDesarrollo Web Moderno con Svelte 2024.pdf
Desarrollo Web Moderno con Svelte 2024.pdf
 
EPA-pdf resultado da prova presencial Uninove
EPA-pdf resultado da prova presencial UninoveEPA-pdf resultado da prova presencial Uninove
EPA-pdf resultado da prova presencial Uninove
 

Exp+s4 c2+(profesor)

  • 1. SISTEMAS EXPERTOS Profesor: Luis Enrique Rivas Carvajal Correo : LR.ALLPC@hotmail.com WHATSAPP: (+51) 946.646.715 Semana: 4 Clase: 2 Semestre: 2020-1
  • 2. 2Escuela Ingeniería SistemasSISTEMAS EXPERTOS PROLOG Prof.: LUIS ENRIQUE RIVAS (2020-1) EJERCICIO 1 Determinar el menor numero (X) de una lista formada por N términos (3, 1, 5)  1
  • 3. 3Escuela Ingeniería SistemasSISTEMAS EXPERTOS PROLOG Prof.: LUIS ENRIQUE RIVAS (2020-1) ARITMÉTICA EN PROLOG % Determinar si un numero (X) es par % par(X) :- 0 is X mod 2.
  • 4. 4Escuela Ingeniería SistemasSISTEMAS EXPERTOS PROLOG Prof.: LUIS ENRIQUE RIVAS (2020-1) ARITMÉTICA EN PROLOG % Determinar si un numero (X) es impar % impar(X) :- 1 is X mod 2.
  • 5. 5Escuela Ingeniería SistemasSISTEMAS EXPERTOS PROLOG Prof.: LUIS ENRIQUE RIVAS (2020-1) ARITMÉTICA EN PROLOG % Determinar si la Lista (L) es palindroma % palindromo(L) :- reverse(L, L).
  • 6. 6Escuela Ingeniería SistemasSISTEMAS EXPERTOS PROLOG Prof.: LUIS ENRIQUE RIVAS (2020-1) ARITMÉTICA EN PROLOG member/2 append/3 append/2 delete/3 last/2 reverse/2 permutation/2 https://www.swi- prolog.org/pldoc/ man?section=lists
  • 7. 7Escuela Ingeniería SistemasSISTEMAS EXPERTOS PROLOG Prof.: LUIS ENRIQUE RIVAS (2020-1) ARITMÉTICA EN PROLOG % Determinar la longitud de una lista % longitud([ ], 0). longitud([ _ | Cola], N) :- longitud(Cola, T), N is T+1.
  • 8. 8Escuela Ingeniería SistemasSISTEMAS EXPERTOS PROLOG Prof.: LUIS ENRIQUE RIVAS (2020-1) ARITMÉTICA EN PROLOG % Determinar si la Lista2 (L2) es la inversa de la Lista1 (L1). % Ambas listas deben ser del mismo tamaño % esInversa(L1,L2) :- esInversa_aux(L1,[],L2). esInversa_aux([],L,L). esInversa_aux([X|L],Acum,L2) :- esInversa_aux(L,[X|Acum],L2).
  • 9. 9Escuela Ingeniería SistemasSISTEMAS EXPERTOS PROLOG Prof.: LUIS ENRIQUE RIVAS (2020-1) EJERCICIO 2 % Invertir una lista de tamaño N (1, 3, 5)  (5, 3, 1)
  • 10. 10Escuela Ingeniería SistemasSISTEMAS EXPERTOS PROLOG Prof.: LUIS ENRIQUE RIVAS (2020-1) ARITMÉTICA EN PROLOG Calcular el valor del elemento N de la Serie de Fibonacci (0,1,1,2,3,5,8,13,21,...) % fib(0, 1) :- !. fib(1, 1) :- !. fib(N, R) :- N1 is N - 1, N2 is N - 2, fib(N1, R1), fib(N2, R2), R is R1 + R2. 0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 0 | 1 | 1 | 2 | 3 | 5 | 8 | 13 |
  • 11. 11Escuela Ingeniería SistemasSISTEMAS EXPERTOS PROLOG Prof.: LUIS ENRIQUE RIVAS (2020-1) ARITMÉTICA EN PROLOG Determinar el Maximo Comun Divisor (MCD) de dos numeros X, Z enteros % esMCD(X,X,X). esMCD(X,Y,Z) :- X < Y, Y1 is Y-X, esMCD(X,Y1,Z). esMCD(X,Y,Z) :- X > Y, esMCD(Y,X,Z).
  • 12. 12Escuela Ingeniería SistemasSISTEMAS EXPERTOS PROLOG Prof.: LUIS ENRIQUE RIVAS (2020-1) EJERCICIO 3 Determinar el MCM (Mínimo Comun Multiplo) de 2 números enteros (50, 20)  100
  • 13. 13Escuela Ingeniería SistemasSISTEMAS EXPERTOS PROLOG Prof.: LUIS ENRIQUE RIVAS (2020-1) ARITMÉTICA EN PROLOG % Ordenar una lista (2, 3, 1) --> (1, 2, 3) ordenar([],[]). ordenar([H|T], Q) :- separar(H, T, Menor, Mayor), ordenar(Menor, M1), ordenar(Mayor, M2), append(M1,[H|M2],Q).
  • 14. 14Escuela Ingeniería SistemasSISTEMAS EXPERTOS PROLOG Prof.: LUIS ENRIQUE RIVAS (2020-1) ARITMÉTICA EN PROLOG % separar(Pivote, Lista, Menores, Mayores) separar(_,[],[],[]). separar(X,[A|B],[A|Menor],Mayor) :- A =< X, separar(X, B, Menor, Mayor). separar(X,[A|B],Menor,[A|Mayor]) :- A > X, separar(X, B, Menor, Mayor).
  • 15. 15Escuela Ingeniería SistemasSISTEMAS EXPERTOS PROLOG Prof.: LUIS ENRIQUE RIVAS (2020-1) ARITMÉTICA EN PROLOG % producto vectorial homogeneo (vectores del mismo tamaño) prodVect([],[],0). prodVect([X|Xs],[Y|Ys],N):- prodVect(Xs,Ys,N1), N is N1+X*Y.
  • 16. 16Escuela Ingeniería SistemasSISTEMAS EXPERTOS PROLOG Prof.: LUIS ENRIQUE RIVAS (2020-1) ARITMÉTICA EN PROLOG % Sumar elementos de una lista % sumaLista([],0). sumaLista([X|L],Y) :- sumaLista(L,Y1), Y is X+Y1.
  • 17. 17Escuela Ingeniería SistemasSISTEMAS EXPERTOS PROLOG Prof.: LUIS ENRIQUE RIVAS (2020-1) ARITMÉTICA EN PROLOG % Multiplicar los elementos de una lista % esMulti([], 1). esMulti([X|Xs], S):- esMulti(Xs, S2), S is S2 * X.
  • 18. 18Escuela Ingeniería SistemasSISTEMAS EXPERTOS PROLOG Prof.: LUIS ENRIQUE RIVAS (2020-1) EJERCICIO 4 % Calcular el producto de un numero entero por una lista (2, 3, 5) & 5  (10, 15, 25)
  • 19. 19Escuela Ingeniería SistemasSISTEMAS EXPERTOS PROLOG Prof.: LUIS ENRIQUE RIVAS (2020-1) EJERCICIO 5 % Calcular el promedio de una lista (24, 30, 6)  20
  • 20. 20Escuela Ingeniería SistemasSISTEMAS EXPERTOS PROLOG Prof.: LUIS ENRIQUE RIVAS (2020-1) EJERCICIO 6-7 Calcular los N primeros números primos (6)  1,2,3,5,7,11 decir, si un numero es primo (15)  NO

Notas del editor

  1. Por ser este un curso para estudiantes de Ingeniería Industrial se hará mayor énfasis en técnicas para la resolución de problemas, así como en la estructura general y funcionamiento de los programas que en un lenguaje especifico de programación, a fin de no “traumatizar” al alumno sino mas bien animarlo a continuar aprendiendo al respecto por su cuenta