PROgramación LOGica PROLOG

Tamaño: px
Comenzar la demostración a partir de la página:

Download "PROgramación LOGica PROLOG"

Transcripción

1 PROgramación LOGica PROLOG Dr. Oldemar Rodríguez Rojas Escuela de Informática Universidad de Nacional

2 Dónde bajar? Strawberry PROLOG:

3 PROLOG -> PROgramming in LOGig Paradigma -> El lenguaje de la lógica puede ser usado para programar Padre de PROLOG -> Francés Alain Colmerauer Fue desarrollado en 1970 en la Universidad de Marseilles En el curso usaremos Strawberry PROLOG OG Versión 2.3 La interfaz

4

5 Ejemplo 1: le_gusta(elena,tenis). le_gusta(jony,football). le_gusta(tomas,baseball). le_gusta(erik,natacion). le_gusta(marco,tenis). le_gusta(_,tenis). le_gusta(juan,x) :- le_gusta(tomas,x).?-le_gusta(juan,tenis).

6 Las clausulas contienen hechos y reglas Un hecho es: le_gusta(elena,tenis) que corresponde a: "a elena le gusta el tenis" Una regla es: le_gusta(juan,x):-le_gusta(tomas,x). que corresponde a la regla lógica: o equivalentemente: a tomas le gusta X => a juan le gusta X a juan le gusta X si a tomas le gusta X

7 Dos Corridas:?-le_gusta(juan,baseball) Yes.?-le_g gusta(jony,tenis) Yes

8 Variables: ab En la regla: le_gusta(juan,x) :- le_gusta(tomas,x). aparece la variable X La variables deben comenzar con letra mayúscula.

9 Uso del fail Cuando PROLOG tiene una meta interna encuentra solamente una solución para cada submeta y continua con la próxima submeta, por lo que encuentra solamente una solución. Cuando PROLOG tiene una submeta a la derecha de una regla también encuentra solamente una solución. El uso del fail forzará el backtraking (reevaluación) en ambas situaciones i con lo que si se encontrarán todas las soluciones.

10 EJEMPLO: Versión sin fail padre(leonardo,katherine). padre(carlos,jason). padre(carlos,marilyn). todos :- padre(x,y), write(x), write(" es el padre de "), write(y),nl.?-todos.

11 Salida: leonardo es el padre de katherine Yes.

12 EJEMPLO: Versión con fail padre(leonardo,katherine). padre(carlos,jason). padre(carlos,marilyn). todos :- padre(x,y), write(x), write(" es el padre de "), write(y),nl,fail.?-todos.

13 Salida: leonardo es el padre de katherine carlos es el padre de jason carlos es el padre de marilyn No.

14 Ejemplo de unificación de variables:?-le_g gusta(persona,tenis),write(persona). ( ) Salida: elena Yes?-le_gusta(Persona,tenis),write(Persona), tenis) write(" "), fail. Salida: elena marco _0 juan No.

15 Objetos y Relaciones Toda clausula en PROLOG está conformada por relaciones que afectan a objetos. Los nombres de las relaciones y de los objetos deben estar escritos en minúscula.

16 Ejemplo 2: Metas (Goals) compuestas carro(toyota,130000,3,rojo,12000). carro(ford,90000,4,gris,25000). carro(datsun,8000,1,rojo,30000).?-carro(m,k,e,c,p), P < 24000, write(m), write(" "), write(k), write(" "), write(e), write(" "), write(c), write(" "), write(p), write(" "). Salida: toyota rojo Yes.

17 Observación: la, es el AND el ; es el OR P<25000 invoca en realidad d <(P,25000)

18 Variables ab Anónimas Para variables anónimas se utiliza "_", por ejemplo:?-carro(_,_,edad,_,costo), Costo < 27000, write(edad), write(" "), write(costo), write(" "), fail. Salida: No. La variables anónimas puede ser usadas en hechos, por ejemplo: se lee "a toda persona le gusta el tenis le_gusta(_,tenis). tenis)

19 El mecanismo"backtraking" (reevaluación) Ejemplo 3: alumno(peter,9). alumno(paul,10). alumno(ana,9). alumno(susan,9).?-alumno(p1,9), alumno(p2,9), not(p1=p2), write(p1), write(" "), write(p2),nl,fail.,

20 Este programa responde: peter ana peter susan ana peter ana susan susan peter susan ana No.

21 El mecanismo"backtraking" funciona como sigue:

22 Ejemplo 4: Uso del Not Queremos escribir un programa que le busque novio a Sofía. El programa contiene una "base de datos" con la lista de solteros y sus características, además contiene una regla para los requisitos pedidos por Sofía, a saber, el novio debe ser vegetariano y no fumador.

23 hombre(jose). hombre(bill). hombre(tom). fumador(jorge). fumador(tom). vegetariano(jose). vegetariano(tom). sofia_ hace_pareja(x) :- hombre(x), not(fumador(x)). ( sofia_hace_pareja(x) :- hombre(x), vegetariano(x).? fi h j (?-sofia_hace_pareja(x), write("una posible pareja para Sofia es: "), write(x), nl.

24 La salida al ejecutar este programa es: una posible pareja parasofia es: jose Yes.

25 Ejemplo 5: un árbol genealógico masculino(alan). masculino(carlos). masculino(luis). masculino(ivan). femenino(ana). femenino(andrea). femenino(eugenia). femenino(damaris). madre(eugenia,ana). madre(alan,damaris). padre(alan,luis). luis) padre(ana,carlos). padre(andrea,luis). padre(eugenia,alan). padres(x,y) :- madre(x,y). padres(x,y) :- padre(x,y).

26 hermano(x,y) :- /* El hermano of X es Y si */ masculino(y), /* Y es masculino y */ padres(x,p), /* los padres de X son P y */ padres(y,p), /*lospadresdeysonpy de son */ not(x=y). /* X y Y no son el mismo */ hermana(x,y) :- /* La hermana de X es Y si */ femenino(y), /* Y es femenino y */ padres(x,p), /* los padres de X son P y */ padres(y,p), /* los padres de Y son P y */ not(x=y). /* X y Y no son el mismo */ tio(x,u) :- /* El tio de X es U si */ madre(x,p), /* la madre de X es P y */ hermano(p,u). /* el hermano de P es U. */

27 tio(x,u) :- /* el tio de X es U si */ padre(x,p), /* el padre de X es P y */ hermano(p,u). /* el hermano of P es U */ abuelo(x,g) :- /* El abuelo de X es G si */ padre(p,g), /* si el padre de P es G */ madre(x,p). */ /* y la madre de X es P. abuelo(x,g) :- /* El abuelo of X es G si */ padre(x,p), /* el padre de X es P */ padre(p,g). /* el padre de P es G */?-hermana(alan hermana(alan,x), write(x).

28 La Salida es: andrea Yes.

29 Simulación de compuertas lógicas en PROLOG E ib PROLOG Escriba en PROLOG un programa para simular (producir) la tabla de verdad del XOR usando OR, AND, NOT:

30

31 cnot(1,0). cnot(0,1). cand(000) cand(0,0,0). cand(0,1,0). cand(010) cand(1,0,0). cand(100) cand(1,1,1). cor(000) cor(0,0,0). cor(0,1,1). cor(011) cor(1,0,1). cor(101) cor(1,1,1). cor(111) cxor(x,y,z) :- cnot(x,n1), cnot(y,n2), cand(x,n2,n3), N3) cand(y,n1,n4), N4) cor(n3,n4,z).?-cxor(i1,i2,s), write(i1), write(" "), write(i2), write(" "), write(s), write(" "), nl, fail.

32 Una corrida puede ser:?-cxor(i1,i2,s) No.

33 Variables ab Libres y Acotadas Se dice que una variable es LIBRE si PROLOG no conoce su valor. Se dice que una variable es ACOTADA q si PROLOG conoce su valor.

34 Ejemplo: le_gusta(elena,lectura). le_gusta(john,computadoras). le_gusta(john,ciclismo). le_gusta(leonardo,ciclismo). le_gusta(eric,natacion). le_gusta(eric,lectura). lectura)?-le le_gusta(x,lectura),le_gusta(x,natacion). lectura)

35 Por ejemplo, en la meta:?-le_gusta(x,lectura), u a), le_gusta(x,natacion). a a en la submeta le_gusta(x,lectura) lectura) la variable X ocurre libre, mientras que en la submeta le_gusta(x,natacion) la variable X ocurre acotada. Pues cuando el mecanismo de backtraking inicia instancia la variable X con elena.

36 Objetos Compuestos Un Objeto Compuesto consiste de un functor y los subobjetos que lo conforman, esto es: functor(obj 1,obj 2,...,obj n ) Un objeto compuesto puede se vacio: functor() ó functor

37 Ejemplo: estudiante es un objeto compuesto lee_estudiante(e(nombre,nota1,nota2,promedio,resultado)) :- write("cual es su nombre? "), read(nombre), write("nota en examen 1? "), read(nota1), write("nota en examen 2? "), read(nota2), Promedio = (Nota1 + Nota2)/2, paso(promedio,resultado). paso(promedio,resultado) :- Promedio >= 70, Resultado = 'S'; Promedio < 70, Promedio >= 60, Resultado = 'A'; Promedio < 60, Resultado = 'P'.

38 run:- lee_estudiante(e),nl,write(e),nl,nl, write("desea continuar(s/n)"),read(ch), =(Ch,'n'). run:-nl,nl,write("digite los datos de otro estudiante"),nl,nl,run.?-run. /* VER CORRIDA EJ8.SPJ */

39 Ejemplo: estudiante es un objeto compuesto V2 lee_estudiante(e(nombre,nota1,nota2,promedio,resultado)) t (N N t N t lt d :- write("cual es su nombre? "), read(nombre), write("nota en examen 1? "), read(nota1), write("nota en examen 2? "), read(nota2), Promedio is (Nota1 + Nota2)/2, paso(promedio,resultado). imprime_estudiante(e(nombre,nota1,nota2,promedio,resultado)) i t (N N t N t d :- write(" Nombre: "), write(nombre), nl, write(" Examen 1: "), write(nota1), nl, write(" Examen 2: "), write(nota2), nl, write(" Promedio: "), write(promedio), nl, write(" Resultado: "), write(resultado), nl.

40 Ejemplo: estudiante es un objeto compuesto V2 paso(promedio,resultado) d :- Promedio >= 70, Resultado is 'S'; Promedio < 70, Promedio >= 60, Resultado is 'A'; Promedio < 60, Resultado is 'P'. run:- lee_estudiante(e),nl, imprime_estudiante(e),nl,nl, write("desea continuar(s/n)"),read(ch), ),read(ch), =(Ch,'n'). run:-nl,nl,write("digite los datos de otro estudiante"),nl,nl,run.?-run.

41 Recursividad en PROLOG Ejemplo 1: u(1,2). u(n,res) :- N > 1, N1 is N - 1, /* OJO dejar espacio después del - */ u(n1,res1), Res is (2 * Res1).?-u(4,X), write(x). Salida: 16Yes..

42 Ejemplo 2:

43 fibonacci(1,1). fibonacci(2,1). fibonacci(n,f) :- N > 2, M is N - 1, KisN- 2, fibonacci(m,g), fibonacci(k,h), i(k F is G + H.?-fibonacci(6,Res), write(res).

44 Listas en PROLOG OG Las Listas en PROLOG se manejan a través de Recursión. Las listas se encierran entre los operadores [ ] y se separan por comas.

45 Ejemplos [1, 2, 8] [perro, gato, canario] ["Luisa", "Juan"]

46 PROLOG divide una lista en dos partes: Head o cabeza (primer elemento de la lista) Tail o resto (una lista menos la cabeza) Ejemplos: Lista Head Tail [1,2,3] 1 [2,3] [[123][78][]] [[1,2,3],[7,8],[]] [123] [1,2,3] [[7,8],[]] []] [] indefinido indefinido [ ] [] [] NOTA: PROLOG usa como separador entre el NOTA: PROLOG usa como separador entre el Head y el Tail

47 Más ejemplos: Lista 1 Lista 2 Instanciación [1,2,3,4,7,8] [X Y] X=1, Y=[2,3,4,7,8] [7] [X Y] X=7, Y=[] [12,3,9,0] [X,Y Z] X=12, Y=3, Z=[9,0] [1,2] [3 X] falla [caballo Q] [P blanco] P=caballo,,Q=blanco

48 Ejemplos de programas con listas Imprimir una lista imprime_lista([]). imprime_lista([h T]) :- write(h), write(" "), imprime imprime_lista(t).?-imprime_lista([5,2,8,9,22]).

49 Pertenece e eceau una lista sa miembro(nombre,[nombre _]). miembro(nombre,[_ Tail]):- miembro(nombre,tail).?-miembro(2,[5,6,2,7,89,0]).

50 Lectura de una Lista leerlista([x Xr]):- read(x),leerlista(xr). leerlista([]).?-leerlista(x),write(x).

51 Un ejemplo completo append([],lista,lista). append([x L1], L2, [X L3]) :- append(l1,l2,l3). L2 L3) pares(x,[x _]) :- ZisXmod2 2, Zis0 0. pares(x,[_ Cola]) :- pares(x,cola). ultimo(x,[x]). ultimo(x,[_ Cola]) :- ultimo(x,cola). consecutivos(x,y,[x,y _]). consecutivos(x,y,[_ Cola]) :- consecutivos(x,y,cola).

52 invierte([],[]). []) invierte([h T],L) :- invierte(t,z), append(z,[h],l). burbuja(l,o) :- append(x,[a,b Y],L), B < A, append(x,[b,a Y],M), burbuja(m,o),!. burbuja(l,l). b L) imprime([]). imprime([head Tail]) :- write(head),nl,imprime(tail). leerlista([x Xr]):- read(x),leerlista(xr). leerlista([]).

53 CORRIDAS: (ver ej14.spj) j) %?-leerlista(x),imprime(x). %?-append([4 append([4,5,2,3],[5,62,23,3,0],l),write(l). [ %?-pares(x,[3,4,6,9,7]),write(x). %?-ultimo(x[34697])write(x) ultimo(x,[3,4,6,9,7]),write(x). %?-consecutivos(6,9,[3,4,6,9,7]). %?-invierte([34697]x)write(x) %?-invierte([3,4,6,9,7],x),write(x).?-burbuja([3,4,6,9,7],x),write(x).

54 Más Ejemplos suma_lista([],0). suma_lista([cabeza COLA], RESULT) :- suma_lista(cola,r1), RESULT is CABEZA + R1. multiplica_lista([],1). multiplica_lista([cabeza COLA], li li RESULT) :- multiplica_lista(cola,r1), RESULT is CABEZA * R1.

55 Más Ejemplos suma_dos_listas([],[],[]). suma_dos_listas([cabeza1 COLA1], [CABEZA2 COLA2], [CABEZA3 COLA3]) :- CABEZA3 is CABEZA1 + CABEZA2, suma_dos_listas(cola1, COLA2, COLA3). producto_dos_listas([],[],[]). producto_dos_listas([cabeza1 COLA1], [CABEZA2 COLA2], [CABEZA3 COLA3]) :- CABEZA3 is CABEZA1 * CABEZA2, producto_dos_listas(cola1, dos COLA2, COLA3).

56 Ejemplo: estudiante es un objeto compuesto V3 imprime_lista([]). imprime_lista([cabeza COLA]) :- nl, nl, imprime_estudiante(cabeza), write(" "), imprime_lista(cola). lee_lista([cabeza COLA]) :- datos_estudiante(cabeza), lee_lista(cola). lista(cola) lee_lista([]). invoca_datos_estudiante :- lee_lista(l1), li write("resultado:"), imprime_estudiante(l1).

57 imprime_estudiante(e(nombre,nota1,nota2,promedio,resultado)) :- write(" Nombre: "), write(nombre), nl, write(" Examen 1: "), write(nota1), nl, write(" Examen 2: "), write(nota2), nl, write(" Promedio: "), write(promedio), nl, write(" Resultado: "), write(resultado), nl. datos_estudiante(datos(nombre, di (NOMBRE NOTA1, NOTA2, PROMEDIO, RESULTADO)):- write("nombre del Estudiante"),nl, read(nombre),nl, write("nota Del Examen #1"),nl, read(nota1),nl, write("nota Del Examen #2"),nl, read(nota2),nl, PROMEDIO is (NOTA1 + NOTA2)/2, resultado(promedio, RESULTADO). resultado(p,r) :- P >= 70, R = 'S'.' resultado(p,r) :- P >= 60, P < 70, R = 'A'. resultado(p,r) :- P < 60, R = 'P'.?-invoca_datos_estudiante.

58 Ejemplos de sumatorias sumar(1,1). sumar(n,res) :- N1 is N - 1, sumar(n1,r1), Res is R1 + N. armonica(1,1). armonica(n,res) :- N1 is N - 1, armonica(n1,r1), Res is R1+1/N. %?-sumar(20,x),write(x).?-armonica(20,x),write(x).

59 El algoritmo de unificación usado por PROLOG Una variable libre puede ser unificada con cualquier término, luego la variable se considera acotada. Una constante puede ser unificada con si misma o con una variable libre. Un objeto compuesto puede ser unificado con un objeto compuesto, donde ambos tengan los mismos functores y el mismo número de argumentos, de modo que los términos son unificados dos a dos.

PROLOG Inteligencia Artificial Universidad de Talca, II Semestre 2005. Jorge Pérez R.

PROLOG Inteligencia Artificial Universidad de Talca, II Semestre 2005. Jorge Pérez R. PROLOG Inteligencia Artificial Universidad de Talca, II Semestre 2005 Jorge Pérez R. 1 Introducción a PROLOG PROLOG es un lenguaje interpretado basado en la lógica de predicados de primer orden. Puede

Más detalles

5.2 Introducción a Prolog. Lenguaje Prolog. Características de Prolog. Su nombre viene de Programación en Lógica, creado a comienzos de los 70:

5.2 Introducción a Prolog. Lenguaje Prolog. Características de Prolog. Su nombre viene de Programación en Lógica, creado a comienzos de los 70: 5.2 Introducción a Prolog 1 Lenguaje Prolog Su nombre viene de Programación en Lógica, creado a comienzos de los 70: Robert Kowalski (Edimburgo): lado teórico Maarten van Emden (Edimburgo): demostración

Más detalles

5.3 Tipos de Datos en Prolog

5.3 Tipos de Datos en Prolog 5.3 Tipos de Datos en Prolog Recocimiento de Tipos Se recoce el tipo de un dato por su forma sintáctica; se requiere de declaración de tipos Ejemplo: Variables se definen comienzan con primera en mayúsculas

Más detalles

INTRODUCCIÓN A PROLOG

INTRODUCCIÓN A PROLOG INTRODUCCIÓN A PROLOG Lenguaje declarativo (opuesto a procedimentales) basado en reglas de la lógica PROLOG = Programming in Logic Originado en Europa a principios de los 70 s por Alain Colmerauer (Universidad

Más detalles

Programmacion Declarativa - Prolog:

Programmacion Declarativa - Prolog: Programmacion Declarativa - Prolog: Todas las clases de theoria (ahora no todas) para toda la gente a quien falta alguna cosa o para ellos que no pueden leer bien sus cosas escritas ;-) Paginas Web muy

Más detalles

6. Operadores en PROLOG

6. Operadores en PROLOG 6. Operadores en PROLOG 1. Definición de operadores propios 2. Operadores predefinidos Igualdad Entrada y Salida básicos Manejo de ficheros Evaluación de expresiones aritméticas Comparación de números

Más detalles

Tema 3.- Predicados y sentencias condicionales

Tema 3.- Predicados y sentencias condicionales UNIVERSIDAD DE CÓRDOBA ESCUELA POLITÉCNICA SUPERIOR DE CÓRDOBA DEPARTAMENTO DE INFORMÁTICA Y ANÁLISIS NUMÉRICO PROGRAMACIÓN DECLARATIVA INGENIERÍA INFORMÁTICA ESPECIALIDAD DE COMPUTACIÓN CUARTO CURSO PRIMER

Más detalles

Capítulo 4. Lógica matemática. Continuar

Capítulo 4. Lógica matemática. Continuar Capítulo 4. Lógica matemática Continuar Introducción La lógica estudia la forma del razonamiento, es una disciplina que por medio de reglas y técnicas determina si un teorema es falso o verdadero, además

Más detalles

1 INTRODUCCIÓN. Cuadro 1: Sistema de lenguaje natural de Colmerauer y Roussel [7].

1 INTRODUCCIÓN. Cuadro 1: Sistema de lenguaje natural de Colmerauer y Roussel [7]. 1 INTRODUCCIÓN El tema de central este curso de la Maestría en Inteligencia Artificial (MIA) es la programación lógica. En este capítulo se presenta un panorama general de este paradigma de programación,

Más detalles

Existen diferentes compuertas lógicas y aquí mencionaremos las básicas pero a la vez quizá las más usadas:

Existen diferentes compuertas lógicas y aquí mencionaremos las básicas pero a la vez quizá las más usadas: Compuertas lógicas Las compuertas lógicas son dispositivos electrónicos utilizados para realizar lógica de conmutación. Son el equivalente a interruptores eléctricos o electromagnéticos. para utilizar

Más detalles

5. Entrada y Salida en PROLOG

5. Entrada y Salida en PROLOG 5. Entrada y Salida en PROLOG 1. Escritura de términos 2. Lectura de términos 3. Escritura y lectura de caracteres 4. Escritura en fichero 5. Lectura de fichero 1. Escritura de términos (I) Predicado predefinido

Más detalles

1. El vocabulario de un programa PROLOG

1. El vocabulario de un programa PROLOG Tema 2. La Sintaxis 1. El vocabulario de un programa PROLOG 2. Términos 2.1. Constantes 2.2. Variables 2.3. Estructuras 3. Operadores 4. Igualdad y Desigualdad 5. Aritmética en los programas PROLOG 1.

Más detalles

1.2 Hechos. Ejemplo: La capital de Francia es París. En Prolog se escribe capital(francia,parís). En general, la sintaxis es

1.2 Hechos. Ejemplo: La capital de Francia es París. En Prolog se escribe capital(francia,parís). En general, la sintaxis es Hechos 1.2 Hechos Un hecho, en PROLOG, es una relación entre objetos. Ejemplo: La capital de Francia es París. En Prolog se escribe capital(francia,parís). En general, la sintaxis es relacion(objeto, objeto,...).

Más detalles

Matemáticas aliadas a la salud MATE3035

Matemáticas aliadas a la salud MATE3035 Matemáticas aliadas a la salud MATE3035 TEMA: Introducción a la teoría de conjuntos Universidad de Puerto Rico en Arecibo Departamento de Matemáticas Profa. Yuitza T. Humarán Martínez Adaptado por Profa.

Más detalles

Tabla de contenidos. 1 Lógica directa

Tabla de contenidos. 1 Lógica directa Tabla de contenidos 1 Lógica directa o 1.1 Puerta SI (YES) o 1.2 Puerta Y (AND) o 1.3 Puerta O (OR) o 1.4 Puerta OR-exclusiva (XOR) 2 Lógica negada o 2.1 Puerta NO (NOT) o 2.2 Puerta NO-Y (NAND) o 2.3

Más detalles

INTRODUCCIÓN AL LENGUAJE PROLOG

INTRODUCCIÓN AL LENGUAJE PROLOG INTRODUCCIÓN AL LENGUAJE PROLOG Índice 1. Introducción 2 2. Características Generales 2 2.1. Evolución histórica................................... 2 2.2. Esquema general de trabajo en Prolog........................

Más detalles

Tipos algebraicos y abstractos. Algoritmos y Estructuras de Datos I. Tipos algebraicos

Tipos algebraicos y abstractos. Algoritmos y Estructuras de Datos I. Tipos algebraicos Algoritmos y Estructuras de Datos I 1 cuatrimestre de 009 Departamento de Computación - FCEyN - UBA Programación funcional - clase Tipos algebraicos Tipos algebraicos y abstractos ya vimos los tipos básicos

Más detalles

Programación Elemental con Bases de Datos y Programación El lenguaje Prolog

Programación Elemental con Bases de Datos y Programación El lenguaje Prolog Programación Elemental con Bases de Datos y Programación II.1 El lenguaje Prolog. II.2 Programación con bases de datos. II.3 Aspectos a tener en cuenta en la programación en Prolog II.4 Programación recursiva:

Más detalles

PROCESADORES DE LENGUAJE. Hoja de ejercicios de FLEX

PROCESADORES DE LENGUAJE. Hoja de ejercicios de FLEX PROCESADORES DE LENGUAJE Ingeniería Informática Especialidad de Computación Tercer curso Segundo cuatrimestre Departamento de Informática y Análisis Numérico Escuela Politécnica Superior de Córdoba Universidad

Más detalles

John Venn Matemático y filósofo británico creador de los diagramas de Venn

John Venn Matemático y filósofo británico creador de los diagramas de Venn Georg Cantor Matemático Alemán creador de la teoría de conjuntos John Venn Matemático y filósofo británico creador de los diagramas de Venn August De Morgan Matemático ingles creador de leyes que llevan

Más detalles

Primera práctica de Temas Avanzados en Ingeniería Informática (I)-Lógica Curso

Primera práctica de Temas Avanzados en Ingeniería Informática (I)-Lógica Curso Primera práctica de Temas Avanzados en Ingeniería Informática (I)-Lógica Curso 2005-2006 1. Fecha de entrega La fecha límite de entrega será el 13 de Marzo (Lunes) hasta las 20:00 horas. 2. Objetivo El

Más detalles

1. Sintaxis de Prolog

1. Sintaxis de Prolog 1. Sintaxis de Prolog Términos: Constantes: enteros (Ejs: 3, 4), átomos (Ejs: juan, pi) (en minúscula). Variables: Ejs: X, Casa (en mayúscula) Estructuras: functor, seguido de uno o más argumentos, es

Más detalles

1 Introducción al lenguaje PROLOG

1 Introducción al lenguaje PROLOG 1 Introducción al lenguaje PROLOG 1.1 Generalidades Prolog es un lenguaje de programación que se utiliza para resolver problemas en los que existen objetos y relaciones entre objetos. La programación en

Más detalles

FUNCIONAMIENTO DEL ORDENADOR

FUNCIONAMIENTO DEL ORDENADOR FUNCIONAMIENTO DEL ORDENADOR COMPUTACIÓN E INFORMÁTICA Datos de entrada Dispositivos de Entrada ORDENADOR PROGRAMA Datos de salida Dispositivos de Salida LOS ORDENADORES FUNCIONAN CON PROGRAMAS Los ordenadores

Más detalles

Semántica Denotacional

Semántica Denotacional Semántica Denotacional Idea: El significado de un programa es la función denotada por el programa Componentes del metalenguaje para la definición semántica denotacional de un L.P.: Dominios sintácticos

Más detalles

UNIVERSIDAD DE LOS ANDES NUCLEO UNIVERSITARIO RAFAEL RANGEL (NURR) DEPARTAMENTO DE FISICA Y MATEMATICA AREA COMPUTACION TRUJILLO EDO.

UNIVERSIDAD DE LOS ANDES NUCLEO UNIVERSITARIO RAFAEL RANGEL (NURR) DEPARTAMENTO DE FISICA Y MATEMATICA AREA COMPUTACION TRUJILLO EDO. UNIVERSIDAD DE LOS ANDES NUCLEO UNIVERSITARIO RAFAEL RANGEL (NURR) DEPARTAMENTO DE FISICA Y MATEMATICA AREA COMPUTACION TRUJILLO EDO. TRUJILLO Recursividad: La recursividad es una técnica de programación

Más detalles

Todo programa en 'C' consta de una o más funciones, una de las cuales se llama main.

Todo programa en 'C' consta de una o más funciones, una de las cuales se llama main. LENGUAJE C CARACTERISTICAS DEL LENGUAJE 'C' El lenguaje 'C' se conoce como un lenguaje compilado. Existen dos tipos de lenguaje: interpretados y compilados. Los interpretados son aquellos que necesitan

Más detalles

Algoritmos y programas. Algoritmos y Estructuras de Datos I

Algoritmos y programas. Algoritmos y Estructuras de Datos I Algoritmos y programas Algoritmos y Estructuras de Datos I Primer cuatrimestre de 2012 Departamento de Computación - FCEyN - UBA Programación funcional - clase 1 Funciones Simples - Recursión - Tipos de

Más detalles

Inicio de PCWorx 3: Vamos a hacer un pequeño recorrido por las tres vistas. Página 1 de 23

Inicio de PCWorx 3: Vamos a hacer un pequeño recorrido por las tres vistas. Página 1 de 23 Inicio de PCWorx 3: En PCWorx 3 tendremos tres vistas principales del proyecto: - Vista de programación. - Vista de configuración de bus. - Vista de enlace de variables con datos de proceso. Vamos a hacer

Más detalles

Programa de Asignatura Programación Visual I

Programa de Asignatura Programación Visual I Programa de Asignatura Programación Visual I Managua, Abril, 2013 1. DATOS GENERALES Nombre de la asignatura: Programación Visual I Código: Requisito / Correquisito: Carrera (s): Modalidad: Turno: Semestre:

Más detalles

Guía de estudio Introducción a la teoría de conjuntos Unidad A: Clase 4

Guía de estudio Introducción a la teoría de conjuntos Unidad A: Clase 4 Guía de estudio Introducción a la teoría de conjuntos Unidad A: Clase 4 Camilo Ernesto Restrepo Estrada, Félix Ruiz de Villalba, Lina María Grajales Vanegas y Sergio Iván Restrepo Ochoa 1. 3. Teoría de

Más detalles

Tema 3: Tipos y clases

Tema 3: Tipos y clases Tema 3: Tipos y clases Programación declarativa (2009 10) José A. Alonso Jiménez Grupo de Lógica Computacional Departamento de Ciencias de la Computación e I.A. Universidad de Sevilla Tema 3: Tipos y clases

Más detalles

Tema 3: Tipos y clases

Tema 3: Tipos y clases Tema 3: Tipos y clases Programación declarativa (2010 11) José A. Alonso Jiménez Grupo de Lógica Computacional Departamento de Ciencias de la Computación e I.A. Universidad de Sevilla Tema 3: Tipos y clases

Más detalles

Unidad Didáctica 2. Elementos básicos del lenguaje Java Tipos, declaraciones, expresiones y asignaciones

Unidad Didáctica 2. Elementos básicos del lenguaje Java Tipos, declaraciones, expresiones y asignaciones Unidad Didáctica 2 Elementos básicos del lenguaje Java Tipos, declaraciones, expresiones y asignaciones Fundamentos de Programación Departamento de Lenguajes y Sistemas Informáticos Versión 1.0.3 Índice

Más detalles

Introducción Flip-Flops Ejercicios Resumen. Lógica Digital. Circuitos Secuenciales - Parte I. Francisco García Eijó

Introducción Flip-Flops Ejercicios Resumen. Lógica Digital. Circuitos Secuenciales - Parte I. Francisco García Eijó Lógica Digital Circuitos Secuenciales - Parte I Francisco García Eijó Organización del Computador I Departamento de Computación - FCEyN UBA 7 de Septiembre del 2010 Agenda 1 Repaso 2 Multimedia Logic 3

Más detalles

Operadores lógicos y de comparación en programación. Not, and, or Ejemplos. (CU00132A)

Operadores lógicos y de comparación en programación. Not, and, or Ejemplos. (CU00132A) aprenderaprogramar.com Operadores lógicos y de comparación en programación. Not, and, or Ejemplos. (CU00132A) Sección: Cursos Categoría: Curso Bases de la programación Nivel I Fecha revisión: 2024 Autor:

Más detalles

Teoría de Conjuntos y Conjuntos Numéricos

Teoría de Conjuntos y Conjuntos Numéricos Teoría de Conjuntos y Conjuntos Numéricos U N I V E R S I D A D D E P U E R T O R I C O E N A R E C I B O D E P A R T A M E N T O DE M A T E M Á T I C A S P R O F A. Y U I T Z A T. H U M A R Á N M A R

Más detalles

SISTEMA DE NUMEROS REALES

SISTEMA DE NUMEROS REALES SISTEMA DE NUMEROS REALES 1.1 Conjuntos Es una agrupación de objetos distintos (pero con algunas características en común), los que reciben el nombre de elementos. Generalmente se nombra a un conjunto

Más detalles

La compuerta AND opera de tal forma que su salida será ALTA o 1,solo cuando todas sus entradas sean ALTAS. De otra forma la salida sera BAJA.

La compuerta AND opera de tal forma que su salida será ALTA o 1,solo cuando todas sus entradas sean ALTAS. De otra forma la salida sera BAJA. Eplicación del Tema Sesión 12. Operación ND, NOT, NND Y NOR. OPERCIÓN ND Si y son dos variables boolenas y se combinan con la operación OR la epresión quedaría: =. Donde el símbolo. representa la epresión

Más detalles

PROGRAMACIÓN LÓGICA INTRODUCCIÓN. Juan Juárez Fuentes

PROGRAMACIÓN LÓGICA INTRODUCCIÓN. Juan Juárez Fuentes PROGRAMACIÓN LÓGICA INTRODUCCIÓN Juan Juárez Fuentes 1 Trabajo propuesto en 1970 Cómo programar un sistema como el siguiente? Usuario> Los gatos matan ratones. Usuario> Tom es un gato al que no le gustan

Más detalles

1) PRINCIPIO FUNDAMENTAL: Toda regla de escritura matemática debe facilitar la comprensión de los objetos matemáticos representados y su lectura.

1) PRINCIPIO FUNDAMENTAL: Toda regla de escritura matemática debe facilitar la comprensión de los objetos matemáticos representados y su lectura. APÉNDICE B REGLAS DE ESCRITURA REGLAS GENERALES 1) PRINCIPIO FUNDAMENTAL: Toda regla de escritura matemática debe facilitar la comprensión de los objetos matemáticos representados y su lectura. La comprensión

Más detalles

4. Predicados predefinidos

4. Predicados predefinidos 4. Predicados predefinidos CONTENIDO 4.1. El esquema condicional en PROLOG. 4.2. La notación operador. 4.3. Predicados predefinidos. 4.3.1. Clasificación de términos. 4.3.2. Control de otros predicados.

Más detalles

Semana de las Matemáticas e Ingeniería. Desarrollo de algoritmos recursivos empleando la aplicación PseInt

Semana de las Matemáticas e Ingeniería. Desarrollo de algoritmos recursivos empleando la aplicación PseInt Semana de las Matemáticas e Ingeniería Desarrollo de algoritmos recursivos empleando la aplicación PseInt 21 de Noviembre de 2013 Agenda Desarrollo de algoritmos recursivos empleando la aplicación PSeInt

Más detalles

Tema IV Programación lógica con estructuras

Tema IV Programación lógica con estructuras Tema IV Programación lógica con estructuras Programación Lógica - E.T.S.I. Informática - Málaga 1 Términos La estructura de datos básica en PROLOG es el término. Los términos se clasifican en : variables

Más detalles

Modelos Computacionales

Modelos Computacionales Análisis y Complejidad de Algoritmos Modelos Computacionales Arturo Díaz Pérez El circuito lógico La máquina de estados finitos La máquina de acceso aleatorio La máquina de Turing Compuertas Lógicas Compuerta

Más detalles

$0 Representa al parámetro cero o nombre del programa $1 Representa al parámetro uno $2 Representa al parámetro dos

$0 Representa al parámetro cero o nombre del programa $1 Representa al parámetro uno $2 Representa al parámetro dos PROGRAMACIÓN DE SHELL SCRIPTS EN LINUX El shell es un intérprete de órdenes, pero el shell no es solamente eso; los intérpretes de órdenes de Linux son auténticos lenguajes de programación. Como tales,

Más detalles

GUIA PARA PRIMER EXAMEN PARCIAL DE PROBABILIDAD Y ESTADISTICA

GUIA PARA PRIMER EXAMEN PARCIAL DE PROBABILIDAD Y ESTADISTICA GUIA PARA PRIMER EXAMEN PARCIAL DE PROBABILIDAD Y ESTADISTICA Deberán apoyarse en los ejercicios resueltos en clase marcados con el símbolo E Los conceptos de probabilidad, fenómeno aleatorio, determinista,

Más detalles

TECNICO SUPERIOR EN INFORMÁTICA EMPRESARIAL MÓDULO INTRUCCIONAL

TECNICO SUPERIOR EN INFORMÁTICA EMPRESARIAL MÓDULO INTRUCCIONAL 1 TECNICO SUPERIOR EN INFORMÁTICA EMPRESARIAL MÓDULO INTRUCCIONAL TECNOLOGÍA DE LA COMPUTADORA FACILITADOR: PARTICIPANTE: DAVID, CHIRIQUÍ 2015 2 Qué es un programa? Un programa informático es un conjunto

Más detalles

Técnicas Básicas de Programación Prolog

Técnicas Básicas de Programación Prolog Técnicas Básicas de Programación Prolog Ingeniería Informática Ingeniería Técnica en Informática de Sistemas Departamento de Lenguajes y Ciencias de la Computación Universidad de Málaga Contenido 1. Programación

Más detalles

Unidad 1, lección 1. Saludan. Cómo se llaman? cycle 3 niveau 2 espagnol fichier d activités. Hola! Me llamo María Flores. Me llamo Juan.

Unidad 1, lección 1. Saludan. Cómo se llaman? cycle 3 niveau 2 espagnol fichier d activités. Hola! Me llamo María Flores. Me llamo Juan. 1 Unidad 1, lección 1 Saludan 1 2 1. Escucha. 2 2. Escucha de nuevo y repite. Cómo se llaman? 3 3. Escucha. Hola! Me llamo María Flores. Me llamo Juan. Me llamo Rosa. 4 4. Escucha los nombres y repite.

Más detalles

Tema 2. Algoritmos y programas Ejemplos para introducir las funciones. Informática Grado en Física Universitat de València

Tema 2. Algoritmos y programas Ejemplos para introducir las funciones. Informática Grado en Física Universitat de València Tema 2 Algoritmos y programas Ejemplos para introducir las funciones Informática Grado en Física Universitat de València [email protected] [email protected] 1 Programa: m.c.d. (1/4) Realizar

Más detalles

[ GUÍA DIDÁCTICA: DESARROLLO DE ALGORITMOS PSEINT] 11 de julio de 2013

[ GUÍA DIDÁCTICA: DESARROLLO DE ALGORITMOS PSEINT] 11 de julio de 2013 ALGORITMOS Y DIAGRAMAS DE FLUJOS DE DATOS Elementos del diagrama de flujo de datos A.1. Qué es un Algoritmo? Describe el método para realizar una tarea. Es una secuencia de instrucciones que, ejecutadas

Más detalles

Algoritmos. Diagramas de Flujo. Informática IV. L. S. C. Heriberto Sánchez Costeira

Algoritmos. Diagramas de Flujo. Informática IV. L. S. C. Heriberto Sánchez Costeira Informática IV Algoritmos Diagramas de Flujo L. S. C. Heriberto Sánchez Costeira Algoritmos 1 Definición Es una serie finita de pasos o instrucciones que deben seguirse para resolver un problema. Es un

Más detalles

MATEMÁTICAS PARA LA COMPUTACIÓN CAPÍTULO 1. SISTEMAS NUMÉRICOS

MATEMÁTICAS PARA LA COMPUTACIÓN CAPÍTULO 1. SISTEMAS NUMÉRICOS MATEMÁTICAS PARA LA COMPUTACIÓN CAPÍTULO 1. SISTEMAS NUMÉRICOS INSTRUCTIVO PARA EL SIMULADOR DE UNA MÁQUINA DE ESTADOS FINITOS. AUTOR: JOSÉ ALFREDO JIMÉNEZ MURILLO AVC APOYO VIRTUAL PARA EL CONOCIMIENTO

Más detalles

k k N b Sistemas Númericos Sistemas con Notación Posicional (1) Sistemas con Notación Posicional (2) Sistemas Decimal

k k N b Sistemas Númericos Sistemas con Notación Posicional (1) Sistemas con Notación Posicional (2) Sistemas Decimal Sistemas con Notación Posicional (1) Sistemas Númericos N b = a n-1 *b n-1 + a n-2 *b n-2 +... + a 0 *b 0 +a -1 *b - 1 + a -2 *b -2 +... + a -m *b -m Sistemas con Notación Posicional (2) N b : Número en

Más detalles

Programas ejemplo. Lenguaje de Programación PASCAL. Miguel Murguía

Programas ejemplo. Lenguaje de Programación PASCAL. Miguel Murguía Programas ejemplo Lenguaje de Programación PASCAL Miguel Murguía Programas ejemplo Lenguaje de Programación PASCAL Miguel Murguía ABACo, A.C. Asociación de Biólogos Amigos de la Computación, A. C. www.abacoac.org.mx

Más detalles

Curso sobre Controladores Lógicos Programables (PLC).

Curso sobre Controladores Lógicos Programables (PLC). Curso sobre Controladores Lógicos Programables (PLC). Por Ing. Norberto Molinari. Entrega Nº 34. Capitulo 8. Como se puede Trabajar con los PLC 16xx (En bajo nivel) Instrucciones Básicas. LD : (4C) Carga

Más detalles

Los comentarios en Prolog se escriben comenzando la línea con un símbolo de porcentaje. Ejemplo: % Hola, esto es un comentario. % Y esto también.

Los comentarios en Prolog se escriben comenzando la línea con un símbolo de porcentaje. Ejemplo: % Hola, esto es un comentario. % Y esto también. Tutorial básico de programación en Prolog Elementos del lenguaje En esta sección explicaremos como reconocer los diferentes elementos que componen un programa fuente en Prolog. Como observará en breve,

Más detalles

El conjuntos de los estudiantes inteligentes de la UPR Río Piedras. El conjunto de los mejores baloncelistas de la NBA.

El conjuntos de los estudiantes inteligentes de la UPR Río Piedras. El conjunto de los mejores baloncelistas de la NBA. 1 Conjuntos Un conjunto es una colección de objetos bien definida. Ejemplos de conjuntos: El conjuntos de todos los estudiantes matriculados en el programa immersión. El conjunto de todos los pueblos de

Más detalles

Hoja de ejercicios para los estudiantes

Hoja de ejercicios para los estudiantes Hoja de ejercicios para los estudiantes Traducido por Maialen Ruiz Prada Un conjunto de 14 tiras de papel representa los cromosomas que vienen de la dragona madre (hembra). El otro, de diferente color,

Más detalles

Los Juegos como Herramienta Docente. Formalización de Juegos Lógicos en Prolog

Los Juegos como Herramienta Docente. Formalización de Juegos Lógicos en Prolog Los Juegos como Herramienta Docente. Formalización de Juegos Lógicos en Prolog Faraón Llorens, Mª Jesús Castel, Francisco Mora, Carlos Villagrá Dept. de Ciencia de la Computación e Inteligencia Artificial

Más detalles

El lenguaje C. 1. Identificadores, constantes y variables

El lenguaje C. 1. Identificadores, constantes y variables Principios de Programación El lenguaje C 1. Identificadores, constantes y variables 1.1. Conceptos de memoria Los nombres de variable como x, y, suma corresponden a localizaciones o posiciones en la memoria

Más detalles

Benemérita Universidad Autónoma de Puebla

Benemérita Universidad Autónoma de Puebla Tarea No. 1 Matemáticas Elementales Profesor Fco. Javier Robles Mendoza Benemérita Universidad Autónoma de Puebla Facultad de Ciencias de la Computación Lógica y Conjuntos 1. Considere las proposiciones

Más detalles

Capítulo 4 PROLOG 4.1 Introducción

Capítulo 4 PROLOG 4.1 Introducción 4.1 Introducción PROLOG es un lenguaje declarativo e interpretado, en este tipo de lenguajes se representan los conocimientos sobre un determinado dominio y sus relaciones. A partir de ese conocimiento,

Más detalles

Métodos de Inteligencia Artificial

Métodos de Inteligencia Artificial Métodos de Inteligencia Artificial L. Enrique Sucar (INAOE) [email protected] ccc.inaoep.mx/esucar Tecnologías de Información UPAEP Contenido Lógica proposicional Lógica de predicados Inferencia en lógica

Más detalles

Estructuras de control

Estructuras de control Estructuras de control Introducción Los algoritmos vistos hasta el momento han consistido en simples secuencias de instrucciones; sin embargo, existen tareas más complejas que no pueden ser resueltas empleando

Más detalles

Programcaión Básica. Secuencias de Control y Repetición. Arturo Vega González.

Programcaión Básica. Secuencias de Control y Repetición. Arturo Vega González. Programación Básica Arturo Vega González [email protected] Division de Ciencias e Ingenierías Universidad de Guanajuato Campus León Sesión 5 Universidad de Guanajuato, DCI, Campus León 1 / 31 Universidad

Más detalles

Lenguajes y Gramáticas

Lenguajes y Gramáticas Lenguajes y Gramáticas Teoría de Lenguajes Fernando Naranjo Introduccion Se desarrollan lenguajes de programación basados en el principio de gramática formal. Se crean maquinas cada vez mas sofisticadas

Más detalles

El modo más sencillo de pasar estos datos a STATA es activar el STATA Data Editor e introducir los datos en la interfaz de la hoja de cálculo.

El modo más sencillo de pasar estos datos a STATA es activar el STATA Data Editor e introducir los datos en la interfaz de la hoja de cálculo. 17.801 Primavera de 2002 Utilización de los comandos infile e infix de STATA STATA es un programa de gran flexibilidad que permite la lectura y manipulación de datos en diversas formas, lo que supone una

Más detalles

RAZONAMIENTO LÓGICO LECCIÓN 1: ANÁLISIS DEL LENGUAJE ORDINARIO. La lógica se puede clasificar como:

RAZONAMIENTO LÓGICO LECCIÓN 1: ANÁLISIS DEL LENGUAJE ORDINARIO. La lógica se puede clasificar como: La lógica se puede clasificar como: 1. Lógica tradicional o no formal. 2. Lógica simbólica o formal. En la lógica tradicional o no formal se consideran procesos psicológicos del pensamiento y los métodos

Más detalles

Universidad Nacional del Santa FACULTAD DE INGENIERIA E.A.P. Ingeniería de Sistemas e Informática NETBEANS 7.0 MI PRIMER PROYECTO

Universidad Nacional del Santa FACULTAD DE INGENIERIA E.A.P. Ingeniería de Sistemas e Informática NETBEANS 7.0 MI PRIMER PROYECTO Universidad Nacional del Santa FACULTAD DE INGENIERIA E.A.P. Ingeniería de Sistemas e Informática NETBEANS 7.0 MI PRIMER PROYECTO El NetBeans es un entorno de desarrollo integrado que permite crear aplicaciones

Más detalles

INTRODUCCIóN A LA PROGRAMACIóN APUNTES DE JAVA APUNTES DE JAVA

INTRODUCCIóN A LA PROGRAMACIóN APUNTES DE JAVA APUNTES DE JAVA APUNTES DE JAVA FUNCIONAMIENTO DE UN PROGRAMA Assembler Ensamblador Ejecuta Programador Programa fuente BASIC Interprete Ejecuta C, C++, Pascal Compilador Compila Ejecuta Programa fuente Programa Objeto

Más detalles

Programación de Computadores 4 Iteraciones y Decisiones. Prof. Javier Cañas. Universidad Técnica Federico Santa María Departamento de Informática

Programación de Computadores 4 Iteraciones y Decisiones. Prof. Javier Cañas. Universidad Técnica Federico Santa María Departamento de Informática Programación de Computadores 4 Iteraciones y Decisiones Prof. Javier Cañas Universidad Técnica Federico Santa María Departamento de Informática Contenido 1 Introducción 2 Operadores Relacionales y Lógicos

Más detalles

Estructuras de Datos. Dr. Pablo E. Fidel Martínez López Lic. en Ciencias de la Computación UNR

Estructuras de Datos. Dr. Pablo E. Fidel Martínez López Lic. en Ciencias de la Computación UNR Estructuras de Datos Dr. Pablo E. Fidel Martínez López Lic. en Ciencias de la Computación UNR ...but note that an implementation need not be actualized as code a concrete design is sufficient. Chris Okasaki

Más detalles

UNIDAD ACADÉMICA PROFESIONAL TIANGUISTENCO

UNIDAD ACADÉMICA PROFESIONAL TIANGUISTENCO UNIDAD ACADÉMICA PROFESIONAL TIANGUISTENCO LICENCIATURA EN PRODUCCIÓN INDUSTRIAL. UNIDAD DE APRENDIZAJE: PROGRAMACIÓN Créditos institucionales de la UA: 6 Material visual: Diapositivas Unidad de competencia

Más detalles

DESCRIPCIÓN ESPECÍFICA NÚCLEO: COMERCIO Y SERVICIOS SUBSECTOR: INFORMÁTICA

DESCRIPCIÓN ESPECÍFICA NÚCLEO: COMERCIO Y SERVICIOS SUBSECTOR: INFORMÁTICA DESCRIPCIÓN ESPECÍFICA NÚCLEO: COMERCIO Y SERVICIOS SUBSECTOR: INFORMÁTICA Nombre del Módulo: PROGRAMACIÓN EN JAVASCRIPT Código: CSTI0087 total: 51 Horas Objetivo General: Crear contenido web basado en

Más detalles

Estructuras de Repetición (Repita para)

Estructuras de Repetición (Repita para) Estructuras de Repetición (Repita para) Andrés Arcia Departamento de Computación Escuela de Ingeniería de Sistemas Facultad de Ingeniería Universidad de Los Andes Programación Digital I 1 REPITA PARA Fijar

Más detalles

ESCUELA SUPERIOR POLITECNICA DEL LITORAL PROGRAMA DE ESTUDIOS

ESCUELA SUPERIOR POLITECNICA DEL LITORAL PROGRAMA DE ESTUDIOS FUNDAMENTOS DE PROGRAMACIÓN UNIDAD ACADÉMICA: CARRERA: ESPECIALIZACIÓN: ÁREA: Facultad de Ingeniería en Electricidad y Computación Ingeniería en Ciencias Computacionales, Ingeniería en Electrónica y Telecomunicaciones,

Más detalles

Distinguir las diferentes estructuras de repetición utilizadas en problemas con ciclos: mientras, haga-mientras, repita-hasta, para.

Distinguir las diferentes estructuras de repetición utilizadas en problemas con ciclos: mientras, haga-mientras, repita-hasta, para. ESTRUCTURAS DE REPETICIÓN OBJETIVOS Aprender a construir grandes y complejos problemas a través de la ejecución repetida de una secuencia de proposiciones llamados ciclos o estructuras repetitivas. Distinguir

Más detalles

15 yo llamarse 76 tú apellidarse 67 ella vivir 31 él tener 49 tú ser 55 yo tener 23 ella trabajar 20 tú dedicarse 92 él ser

15 yo llamarse 76 tú apellidarse 67 ella vivir 31 él tener 49 tú ser 55 yo tener 23 ella trabajar 20 tú dedicarse 92 él ser INSTRUCCIONES EN FORMA SECUENCIA DE ACTIVIDADES PARA QUE LOS ESTUDIANTES SEAN CAPACES DE DAR INFORMACIÓN Y PREGUNTAR SOBRE LAS RELACIONES FAMILIARES Y DE PARENTESCO PLAN DE CLASE NIVEL: A1 Principiantes

Más detalles

TP: Herencia Mendeliana

TP: Herencia Mendeliana TP: Herencia Mendeliana Introducción a la biología (FHYCS - UNPSJB) Por Lic. Damián G. Gil (2009) Objetivos del TP Aplicar los mecanismos de transmisión de los caracteres hereditarios, según la leyes de

Más detalles

ESCUELA SECUNDARIA TÉCNICA N 14 CINCO DE MAYO. NOMBRE DEL PROYECTO: GISS (Guía Interactiva para Sustentantes de Secundaria)

ESCUELA SECUNDARIA TÉCNICA N 14 CINCO DE MAYO. NOMBRE DEL PROYECTO: GISS (Guía Interactiva para Sustentantes de Secundaria) ESCUELA SECUNDARIA TÉCNICA N 14 CINCO DE MAYO NOMBRE DEL PROYECTO: GISS (Guía Interactiva para Sustentantes de Secundaria) Es una guía que contiene los temas o asignaturas teóricas de los tres años de

Más detalles

Lic. Manuel de Jesús Campos Boc

Lic. Manuel de Jesús Campos Boc UNIVERSIDAD MARIANO GÁLVEZ DE GUATEMALA FACULTAD DE CIENCIAS DE LA ADMINISTRACIÓN DIRECCIÓN GENERAL DE CENTRO UNIVERSITARIOS CENTRO UNIVERSITARIO DE VILLA NUEVA CURSO MATEMÁTICAS APLICADA I 2015 Lic. Manuel

Más detalles

Técnicas para la comunicación hombremáquina. Tema de. Programación no Procedural

Técnicas para la comunicación hombremáquina. Tema de. Programación no Procedural Técnicas para la comunicación hombremáquina y la programación Tema de Programación no Procedural Dr. Daniel Gálvez Lio... 1 PROGRAMACIÓN LÓGICA EL nombre PROLOG es derivado de la expresión PROgramming

Más detalles

Procesadores de Lenguaje

Procesadores de Lenguaje Procesadores de Lenguaje Repaso TALF Cristina Tîrnăucă Dept. Matesco, Universidad de Cantabria Fac. Ciencias Ing. Informática Primavera de 2013 La Jerarquía de Chomsky Cuatro niveles de lenguajes formales

Más detalles

6. EJERCICIOS RESUELTOS

6. EJERCICIOS RESUELTOS CLASE : CICLOS. CICLOS CLASE. EJERCICIOS RESUELTOS 0. Desarrollar un algoritmo que imprima desde el numero hasta el 0 C= Mientras C

Más detalles

PC-01 Introducción al Pensamiento Computacional

PC-01 Introducción al Pensamiento Computacional Syllabus PC-01 PC-01 Descripción Este curso es una introducción al Pensamiento Computacional utilizando Scratch como lenguaje de programación. Scratch sirve para crear historias, juegos y aplicaciones

Más detalles

PUERTAS LOGICAS. Una tensión alta significa un 1 binario y una tensión baja significa un 0 binario.

PUERTAS LOGICAS. Una tensión alta significa un 1 binario y una tensión baja significa un 0 binario. PUERTAS LOGICAS Son bloques de construcción básica de los sistemas digitales; operan con números binarios, por lo que se denominan puertas lógicas binarias. En los circuitos digitales todos los voltajes,

Más detalles

PSR. Problema. Desigualdad triangular: La suma de las longitudes de cualesquiera 2 lados no es menor que la del tercero.

PSR. Problema. Desigualdad triangular: La suma de las longitudes de cualesquiera 2 lados no es menor que la del tercero. ECL i PS e CLP - Constraint Logic Programming ECL i PS e Herramienta open-source de CLP [Constraint Logic Programming] útil para modelar problemas de satisfacción de restricciones: http://www.eclipse-clp.orgclp.org

Más detalles

Prolog: Listas (y II) MRC

Prolog: Listas (y II) MRC Prolog: Listas (y II) MRC Víctor Peinado [email protected] 11 de diciembre de 2014 Referencias (Blackburn, et al., 2006, chap. 6) 1 1 Blackburn, P., Bos, J., Striegnitz, K. Learn Prolog Now!. College

Más detalles

2.1. Introducción al lenguaje Java

2.1. Introducción al lenguaje Java Bloque II. Elementos del lenguaje de programación Java 1.Introducción a los lenguajes de programación 2. Estructura de un programa 3. Datos y expresiones simples 4. Instrucciones de control 5. Entrada/salida

Más detalles

Tema: Excel Formulas, Funciones y Macros

Tema: Excel Formulas, Funciones y Macros 1 Facultad Escuela Lugar de Ejecución : Ingeniería. : Biomédica : Laboratorio de Biomédica Tema: Excel Formulas, Funciones y Macros Objetivos Específicos Conocer los conceptos básicos en relación a la

Más detalles

LÓGICA DE PRIMER ORDEN, LÓGICA COMPUTACIONAL y AMPLIACIÓN DE LÓGICA

LÓGICA DE PRIMER ORDEN, LÓGICA COMPUTACIONAL y AMPLIACIÓN DE LÓGICA LÓGICA DE PRIMER ORDEN, LÓGICA COMPUTACIONAL y AMPLIACIÓN DE LÓGICA 3UiFWLFDVGH/yJLFD Faraón Llorens Largo Mª Jesús Castel de Haro DEPARTAMENTO DE CIENCIA DE LA COMPUTACIÓN E INTELIGENCIA ARTIFICIAL Universidad

Más detalles

DISEÑO DE UNA METODOLOGÍA DOCENTE

DISEÑO DE UNA METODOLOGÍA DOCENTE DISEÑO DE UNA METODOLOGÍA DOCENTE PARA DOS ASIGNATURAS DE PROGRAMACIÓN BASADA EXCLUSIVAMENTE EN LA EVALUACIÓN AUTOMÁTICA DE PROGRAMAS COORDINADOR: Adolfo Rodríguez de Soto ÁREAS DE CONOCIMIENTO: Ciencias

Más detalles