Metodología de Programación I Tutorial Prolog 2/3
|
|
|
- Juana Aguilera Lozano
- hace 7 años
- Vistas:
Transcripción
1 Metodología de Programación I Tutorial Prolog 2/3 Dr. Alejandro Guerra-Hernández Departamento de Inteligencia Artificial Facultad de Física e Inteligencia Artificial [email protected] Maestría en Inteligencia Artificial 2011
2 Consultas La evaluación de se realiza internamente por una instrucción de procesador. No confundir el operador is con la asignación convencional. X is X + 1 no tiene sentido en Prolog. El operador = unifica sus argumentos pero no los evalúa.?- X is 3+5. x= 8?- 4 is 3+5. false.? x=3, Y is X +2. X=3 Y=5
3 Is en las reglas Observen que se pierde generalidad. La siguiente meta causa error: suma(4,y,7). 1 par (X) :- 0 is X mod 2. 2 impar (X) :- 1 is X mod 2. 3 suma (X,Y, Z) :- Z is X+Y.?- par (3). false.?- par (4). true.?- suma (3,4,R). R=7?- suma (3,Y,7). ERROR : is /2: Arguments are not sufficiently instantiated
4 Predicados de comparación En las comparaciones se utiliza =< (<=, siendo semejante a una flecha, se utiliza con otros propósitos).?- 3+5 > 2+6. false.?- 3+5 >= 2+6. true.?- 3+5 =\= 2+6. false.?- 3 =:= true. Aplican entre términos aritméticos.
5 Valores a partir de listas Estas funciones no utilizan la recursión a la cola, no pueden ser optimizadas. 1 sum ([],0). 2 sum ([X Xs],S) :- sum (Xs,Sc), 3 S is Sc + X. 4 5 long ([],0). 6 long ([X Xs],L):- long (Xs,Lc), 7 L is Lc + 1.
6 Valores a partir de listas (tail rec) Esta versión llama a una función auxiliar con acumulador. El uso de recursión a la cola permite la optimización. 1 sumopt (Xs,S) :- sumaux (Xs,0,S). 2 3 sumaux ([],S,S). 4 sumaux ([X Xs],Sa,S) :- Sn is X + Sa, 5 sumaux (Xs,Sn,S).
7 Listas a partir de valores Genera una lista creciente cuyo primer valor es X y el último valor es Y. 1 intervalo (X,X,[X]). 2 intervalo (X,Y,[X Xs ]) :- 3 X < Y, Z is X + 1, 4 intervalo (Z,Y, Xs).?- intervalo (1,5,R). R= [1, 2, 3, 4, 5] Yes
8 Listas por filtrado pares/2 filtra los elementos pares en su primer argumento. 1 pares ([],[]). 2 pares ([X Xs ],[X Ys ]) :- 3 par (X), pares (Xs,Ys). 4 pares ([X Xs],Ys) :- 5 impar (X), pares (Xs,Ys). Aquí se combina con intervalo/3 en una meta compuesta.?- intevalo (1,5, Aux ), pares (Aux, Resp ). Aux = [1, 2, 3, 4, 5] Resp = [2, 4]
9 Lista ordenada? El predicado ordenada/1 es veradero si su argumento es una lista ordenada: 1 ordenada ([]). 2 ordenada ([_]). 3 ordenada ([X,Y Ys ]) :- X<Y, ordenada ([Y Ys ]).?- ordenada ([1,2,3]). true?- ordenada ([1,3,2]). false.
10 Inserción en una lista ordenada inserta/3 pone el primer elemento en la lista ordenada segundo argumento, en el lugar correspondiente. 1 inserta (X,[],[ X]). 2 inserta (X,[Y Ys ],[X,Y Ys ]) :- 3 X < Y. 4 inserta (X,[Y Ys ],[Y Zs ]) :- 5 X >= Y, inserta (X,Ys,Zs).?- inserta (4,[1,2,3,5], R). R = [1, 2, 3, 4, 5]
11 Ordenando listas (por inserción) Ahora podemos ordenar una lista por inserción: 1 ordenains ([],[]). 2 ordenains ([X Xs],Ys) :- 3 ordenains (Xs, Xs0 ), 4 inserta (X,Xs0,Ys).?- ordenains ([1,5,3,2,4], R). R = [1, 2, 3, 4, 5]
12 O por burbuja 1 bubblesort (L,S):- swap (L,L1),!, 2 write (L1),nl, 3 bubblesort (L1,S). 4 bubblesort (S, S). 5 6 swap ([X,Y Ys ],[Y,X Ys ]):- X>Y. 7 swap ([Z Zs ],[Z Zs1 ]):- swap (Zs, Zs1 ).?- bubblesort ([1,5,3,2,4], R). [1, 3, 5, 2, 4] [1, 3, 2, 5, 4] [1, 2, 3, 5, 4] [1, 2, 3, 4, 5] R = [1, 2, 3, 4, 5].
13 O por una variante de inserción: 1 insertsort ([],[]). 2 insertsort ([X Xs],S):- 3 insertsort (Xs,S1), 4 inserta (X,S1,S).?- insertsort ([1,5,3,2,4], R). R = [1, 2, 3, 4, 5]
14 O por QuickSort 1 quicksort ([],[]). 2 3 quicksort ([X Xs], Res ) :- 4 split (X,Xs, MasPeques, MasGrandes ), 5 quicksort ( MasPeques, PequesOrd ), 6 quicksort ( MasGrandes, GrandesOrd ), 7 append ( PequesOrd,[X GrandesOrd ], Res ). 8 9 split (_,[],[],[]). 10 split (X,[Y Ys ],[Y Peques ], Grandes ) :- 11 X > Y,!, 12 split (X,Ys, Peques, Grandes ). 13 split (X,[Y Ys], Peques,[Y Grandes ]) :- 14 split (X,Ys, Peques, Grandes ).?- quicksort ([1,5,3,2,4], R). R = [1, 2, 3, 4, 5]
15 Y podemos compararlos: Tiempo en segundos Algoritmo Bubble Insert QuickSort msort Que algoritmo usan sort/2 y msort/2 en SWI-Prolog?
16 Codificador Supongan que queremos una función para compactar una lista de caracteres: 1 comprime ([],[]). 2 comprime ([X Xs],Ys) :- comp (Xs,X,1, Ys). 3 4 comp ([],C,N,[ cod (C,N)]). 5 comp ([X Xs],X,N,Ys) :- N1 is N+1, 6 comp (Xs,X,N1,Ys). 7 comp ([X Xs],Y,N,[ cod (Y,N) Ys ]):- N\=Y, 8 comp (Xs,X,1, Ys). Su uso es:?- comprime ([1,1,1,1,0,0,0,1,1], Res ). Res = [ cod (1, 4), cod (0, 3), cod (1, 2)]
17 Sub-término Se puede verificar si un término e sub-término de otro: 1 subtermino (T, T). 2 subtermino (S, T) :- 3 compound (T), 4 functor (T,F, N), 5 subtermino (N,S, T). 6 7 subtermino (N,S, T) :- 8 N >1, N1 is N -1, subtermino (N1,S,T). 9 subtermino (N,S, T) :- 10 arg (N,T, Args ), subtermino (S, Args ).
18 Corrida subtérmino Ejemplos de consultas:?- subtermino (f(a),g(f(a),b)). true?- subtermino (x,g(f(a),b)). false.?- subtermino (X,g(f(a),b)). X = g(f(a), b) ; X = f(a) ; X = a ; X = b ; false.
Metodología de Programación I Tutorial de Prolog (3/3)
Metodología de Programación I Tutorial de Prolog (3/3) Dr. Alejandro Guerra-Hernández Departamento de Inteligencia Artificial Facultad de Física e Inteligencia Artificial [email protected] http://www.uv.mx/aguerra
Programación Declarativa Ejercicios de programación con listas
Programación Declarativa Ejercicios de programación con listas Ejercicio 1 Define versiones recursivas de los siguientes predicados sobre listas: es lista(xs) Xs es una lista bien formada es lista nat(ss)
Tema 6: Funciones recursivas
Tema 6: Funciones recursivas 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 6: Funciones
Guía 2: Listas, recursión e inducción
Introducción a los Algoritmos - 2do cuatrimestre 2014 Guía 2: Listas, recursión e inducción Docentes: Walter Alini, Luciana Benotti En esta guía comenzaremos a trabajar con listas Para familiarizarnos
Tema III Predicados Extralógicos de PROLOG
Tema III Predicados Extralógicos de PROLOG Programación Declarativa 1 Predicados Extralógicos Se incorporan al lenguaje como predicados predefinidos con usos limitados para acceder a funciones del sistema
Guía 2: Funciones, listas, recursión e inducción
Introducción a los Algoritmos - 1er cuatrimestre 2013 Guía 2: Funciones, listas, recursión e inducción El objetivo de los siguientes ejercicios es introducirnos en la programación funcional, es decir,
ESTRUCTURAS DE DATOS
ESTRUCTURAS DE DATOS Listas 1. Definir predicados Prolog referentes a listas con los siguientes significados: miembro(elem,lista) "Elem pertenece a Lista" longitud(lista,long) "Lista tiene Long elementos"
sumas = 58 = 48 = 73 = 59 =
Operaciones aritmeticas sencillas sumas 93 + 67 + 91 + 28 + 50 + 94 = 58 = 48 = 73 = 59 = 89 + 20 + 58 + 95 + 2 + 95 = 57 = 100 = 54 = 72 = 57 + 7 + 14 + 10 + 19 + 72 = 62 = 19 = 1 = 9 = 80 + 89 + 29 +
Programación con Listas
Capítulo 2 Programación con Listas En Prolog la estructura de lista está predefinida como una estructura recursiva lineal cuyas componentes pueden ser heterogéneas porque en Prolog no existe una comprobación
Tema 13: Aplicaciones de programación funcional
Tema 13: Aplicaciones de programación funcional 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
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
Tipos de datos algebraicos
Tipos de datos algebraicos Taller de Álgebra I Segundo cuatrimestre de 2013 Programación funcional Recordemos que un tipo de datos es un conjunto dotado con una serie de operaciones sobre los elementos
Programación Funcional Lisp-DrScheme Primera Parte. Dr. Oldemar Rodríguez Rojas Escuela de Informática Universidad de Nacional
Programación Funcional Lisp-DrScheme Primera Parte Dr. Oldemar Rodríguez Rojas Escuela de Informática Universidad de Nacional Programación Funcional! La programación funcional es un paradigma de programación
Aplicación de la Inducción Matemática Programación Funcional. Julio Ariel Hurtado Alegría Departamento de Sistemas Universidad del Cauca
Aplicación de la Inducción Matemática Programación Funcional Julio Ariel Hurtado Alegría Departamento de Sistemas Universidad del Cauca Motivación Programación Imperativa Declarativa Procedimental Ejemplo:
Ejercicios de programación funcional con Haskell
Ejercicios de programación funcional con Haskell José A. Alonso Jiménez Grupo de Lógica Computacional Dpto. de Ciencias de la Computación e Inteligencia Artificial Universidad de Sevilla Sevilla, 8 de
Programación Funcional en LISP Lógica para Ciencias de la Computación
Programación Funcional en LISP Lógica para Ciencias de la Computación Primer Cuatrimestre de 2009 Material Adicional Introducción A lo largo de la carrera estudiaremos diversos paradigmas de programación:
Exámenes de Programación funcional con Haskell ( )
Exámenes de Programación funcional con Haskell (2009 2014) José A. Alonso (coord.) y Gonzalo Aranda, Antonia M. Chávez, Andrés Cordón, María J. Hidalgo, Francisco J. Martín Miguel A. Martínez, Ignacio
Tema 3. Análisis de costes
Tema 3. Análisis de costes http://aulavirtual.uji.es José M. Badía, Begoña Martínez, Antonio Morales y José M. Sanchiz {badia, bmartine, morales, sanchiz}@icc.uji.es Estructuras de datos y de la información
Guía 1: Funciones, precedencia y tipado
Introducción a los Algoritmos - do. cuatrimestre 014 Guía 1: Funciones, precedencia y tipado Docentes: Walter Alini, Luciana Benotti El objetivo de los siguientes ejercicios es introducirnos en la programación
Escuela Normal Superior N 40 Mariano Moreno. Cuadernillo Propedéutico 2017 Nivel Superior
Escuela Normal Superior N 40 Mariano Moreno Cuadernillo Propedéutico 2017 Nivel Superior INDICE Página Datos 1 Tipos de Datos 2 Variables 3 Constantes 4 Operadores y Expresiones 5 Algoritmos - Algoritmos
23/09/2009. Introducción Hello word La familia Buendía Recursión Listas
Prolog Contenido Introducción Hello word La familia Buendía Recursión Listas Qué es Prolog? Lenguaje de programación Declarativo Programación lógica Está compuesto de: Hechos Reglas Declarativo vs Imperativo
Lenguajes de Programación Programación funcional
Lenguajes de Programación Programación funcional Roberto Bonvallet Departamento de Informática Universidad Técnica Federico Santa María Concepto de función En el paradigma imperativo: Una función es una
Introducción Supongamos un subconjunto de n elementos X = {e 1,,e n de un conjunto referencial Y, X Y. Dentro de Y se define una relación de orden tot
Algoritmos de ordenación Análisis y Diseño de Algoritmos Algoritmos de ordenación Algoritmos básicos: Θ(n 2 ) Ordenación por inserción Ordenación por selección Ordenación por intercambio directo (burbuja)
Métodos para escribir algoritmos: Diagramas de Flujo y pseudocódigo
TEMA 2: CONCEPTOS BÁSICOS DE ALGORÍTMICA 1. Definición de Algoritmo 1.1. Propiedades de los Algoritmos 2. Qué es un Programa? 2.1. Cómo se construye un Programa 3. Definición y uso de herramientas para
Tema: Métodos de Ordenamiento. Parte 1.
Programación IV. Guía 2. 1 Facultad: Ingeniería Escuela: Computación Asignatura: Programación IV Tema: Métodos de Ordenamiento. Parte 1. Objetivos Específicos Identificar la estructura de algunos algoritmos
Metodologías de Programación II Introducción
Metodologías de Programación II Introducción Dr. Alejandro Guerra-Hernández Departamento de Inteligencia Artificial Facultad de Física e Inteligencia Artificial [email protected] http://www.uv.mx/aguerra Maestría
Prolog. Sintaxis Informal. Sintaxis Informal. Hechos: ejemplos. Inteligencia Artificial 2º cuatrimestre de Hechos. Hechos. Reglas.
Prolog Programación en PROLOG(1) Inteligencia Artificial 2º cuatrimestre de 2009 Departamento de Ciencias e Ingeniería de la Computación Universidad Nacional del Sur Es el representante más cocido del
Programación Funcional en Haskell
Programación Funcional en Haskell Paradigmas de Lenguajes de Programación 1 cuatrimestre 2006 1. Expresiones, valores y tipos Un programa en lenguaje funcional consiste en definir expresiones que computan
Fundamentos PHP. El término puntuación nos referimos a la sintaxis usada en PHP para la terminación de una línea de código (;)
Tags Fundamentos PHP La Sintaxis de PHP se deriva de muchos lenguajes de programación principalmente de C pero Perl también ha tenido mucha influencia en esta sintaxis Con las últimas incorporaciones agregadas,
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
GUÍA BÁSICA DE SCHEME v.4
Esta guía básica pretende ser una introducción elemental al lenguaje de programación Scheme. Se presenta como una guía de comienzo rápido de tal forma que permita conocer de una forma muy esquemática los
Algoritmos de Ordenamiento
Algoritmos de Ordenamiento Fernando A. Lagos B. Copyleft 2007 INDICE 1 Introducción Pág. 3 2 Tipos de Algoritmos Pág. 4 2.1 Algoritmos iterativos Pág. 5 2.2 Algoritmos recursivos Pág. 6 3 Método de la
Inteligencia Artificial: Prolog
Inteligencia Artificial: Prolog Aritmética Christopher Expósito-Izquierdo 1, Belén Melián-Batista 2 {cexposit 1, mbmelian 2 }@ull.es Universidad de La Laguna (España) Contenidos Introducción a la Aritmética
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
Introducción a la programación. Oscar Alejandro González Bustamante. José Víctor Martínez Ramos.
Introducción a la programación Oscar Alejandro González Bustamante. José Víctor Martínez Ramos. Tema 2-1 ELEMENTOS BÁSICOS DE LA PROGRAMACIÓN ESTRUCTURADA Identificará los operadores y operandos. Reconocerá
Orden en la sala! Herman Schinca. Clase de Mayo de 2011
Orden en la sala! Herman Schinca Clase 17 24 de Mayo de 2011 Todos los lenguajes todos Hoy veremos algoritmos. Y eso qué es? Son independientes del lenguaje en que se implementen. Son independientes de
Programación Funcional Lisp-Scheme
Programación Funcional Lisp-Scheme Dr. Oldemar Rodríguez Rojas Escuela de Informática Universidad de Nacional Dónde bajar? Lisp (EdScheme): www.schemers.com com Ejemplo: => (+ (* 3(+ (* 24) (+ 35))) (+
PROgramación LOGica PROLOG
PROgramación LOGica PROLOG Dr. Oldemar Rodríguez Rojas Escuela de Informática Universidad de Nacional Dónde bajar? Strawberry PROLOG: www.dobrev.com PROLOG -> PROgramming in LOGig Paradigma -> El lenguaje
Guía 2: Funciones, listas, recursión e inducción
Introducción a los Algoritmos - 1er cuatrimestre 2015 Guía 2: Funciones, listas, recursión e inducción El objetivo de los siguientes ejercicios es introducirnos en la programación funcional, es decir,
data Tree a = Tip Node a (Tree a) (Tree a) deriving Show
Preguntas seleccionadas de pruebas de evaluación Pregunta 1 Dadas las siguientes definiciones: data Tree a = Tip Node a (Tree a) (Tree a) deriving Show cambiar :: [Int] -> Tree [Int] -> Tree [Int] cambiar
Programación Exploratoria - Predicados Predefinidos en Prolog -
Universidad Nacional del Centro de la Provincia de Buenos Aires Facultad de Ciencias Exactas Programación Exploratoria - Predicados Predefinidos en Prolog - Tipos de Predicados Construcción de Predicados
Operador de corte (cut): Motivaciones. Cut (!): Definición formal. Cut (!): Implicancias de la Definición. Aplicaciones. Cut (!): Ejemplo. b,!
Operador de corte (cut): Motivaciones Programación en PROLOG(2) Inteligencia Artificial 2º cuatrimestre de 2009 Departamento de Ciencias e Ingeniería de la Computación Universidad Nacional del Sur Prolog
/*1-Determina si lo que recibe es una lista*/ lista([]):-!. lista([x Y]):-lista(Y).
/*1-Determina si lo que recibe es una lista*/ lista([]):-!. lista([x Y]):-lista(Y). /*2-Concatena dos listas*/ concatenar([],l,l). concatenar([x M],L,[X Z]):-concatenar(M,L,Z). /*3-Invierte la lista que
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
Guía 2: Funciones, listas, recursión e inducción
Introducción a los Algoritmos - 2do cuatrimestre 2016 Guía 2: Funciones, listas, recursión e inducción El objetivo de los siguientes ejercicios es continuar aprendiendo programación funcional, es decir,
Fundamentos de JAVA. Angel Kuri Enero, /2/2006
Fundamentos de JAVA Angel Kuri Enero, 2006 Enunciados y Expresiones Los siguientes son enunciados sencillos: int i = 1 import java.awt.font System.out.println( Esta moto es una + color + + marca); m.enginestate
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
INDICACIONES PARA LA SOLUCIÓN A ALGUNOS PROBLEMAS DE LA RELACION 6. Se usarán los siguiente predicados genéricos en todos los ejemplos
INDICACIONES PARA LA SOLUCIÓN A ALGUNOS PROBLEMAS DE LA RELACION 6 PINTAR UN SOBRE COLOREADO DE MAPAS MOCHILA REINAS ENCASILLADO Se usarán los siguiente predicados genéricos en todos los ejemplos miembro(x,[x
Área: INFORMÁTICA. Saber- Saber: Identificar DFD como herramienta para escribir los algoritmos de forma lógica.
Guía No: 2 Subdirección de Educación Departamento de Educación Contratada Colegio CAFAM Bellavista CED GUIA DE APRENDIZAJE Docente: Luz del Carmen Barrera Área: INFORMÁTICA Fecha: II BIMESTRE 2014 Grado:
Tipos De Datos. Numéricos. Alfanuméricos (string) Arreglos (Vectores, Matrices) Estructurados Registros (Def. Por el Archivos Usuario) Apuntadores
Tipos De Datos Todos los datos tienen un tipo asociado con ellos. Un dato puede ser un simple carácter, tal como b, un valor entero tal como 35. El tipo de dato determina la naturaleza del conjunto de
Árboles generales. Un árbol es una estructura no lineal acíclica utilizada para organizar información de forma eficiente. La definición es recursiva:
Capítulo 9. Programación con Árboles 107 Árboles Árboles generales Un árbol es una estructura no lineal acíclica utilizada para organizar información de forma eficiente. La definición es recursiva: Un
PHP: Lenguaje de programación
Francisco J. Martín Mateos Carmen Graciani Diaz Dpto. Ciencias de la Computación e Inteligencia Artificial Universidad de Sevilla Tipos de datos Enteros Con base decimal: 45, -43 Con base octal: 043, -054
Capítulo V: Programación Lógica. 5.1 Breve Introducción al Cálculo de Predicados
Capítulo V: Programación Lógica 5.1 Breve Introducción al Cálculo de Predicados 1 Definiciones Básicas Proposición: sentencia lógica que puede ser verdadera o falsa. Se construye de objetos y relaciones.
Introducción a Big Data con Python. Programación en Python. Tipos básicos y colecciones
Introducción a Big Data con Python Programación en Python. Tipos básicos y colecciones Jesús García López de Lacalle 27 de septiembre de 2016 Tipos básicos Enteros (inmutables): int de Python = long de
Informática. JavaScript: Lenguaje de programación. Fco J. Martín Mateos Carmen Graciani
Informática JavaScript: Lenguaje de programación Fco J. Martín Mateos Carmen Graciani Dpto. Ciencias de la Computación e Inteligencia Artificial Universidad de Sevilla Literales Enteros Con base decimal:
Operadores. Javier Fernández Rivera -
Programación en C Operadores Javier Fernández Rivera - www.aurea.es Los operadores Son los elementos o caracteres gráficos encargados de manipular los datos, que pueden ser dados por números, caracteres,
Tema 4: Definición de funciones
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 Constantes como patrones Variables como
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
PROGRAMACIÓN ESTRUCTURADA
Universidad Nacional de Jujuy PROGRAMACIÓN ESTRUCTURADA Trabajo Práctico Nº 11 Tema: Operaciones sobre Arreglos. Ordenación. Apellido y Nombre: Fecha: / / Conceptos Teóricos ORDENACIÓN DE ARREGLOS Los
Tema 5: Definiciones de listas por comprensión
Tema 5: Definiciones de listas por comprensión 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
GUÍA DE TRABAJO N 1 C# Ing. Néstor Raúl Suarez Perpiñan Página 1 de 13
Página 1 de 13 Tema: FUNDAMENTOS DE PROGRAMACIÓN EN LENGUAJE C# Objetivo: Conocer y manejar correctamente los tipos de datos y las diferentes estructuras de programación que hacen parte del lenguaje de
CONTENIDO. 1.- Introducción a la Inteligencia Artificial (IA) 2.- Lógica de predicados. 3.- Búsqueda de soluciones
CONTENIDO 1.- Introducción a la Inteligencia Artificial (IA) 2.- Lógica de predicados 3.- Búsqueda de soluciones 4.- Lenguajes de IA e Introducción a Sistemas Expertos 1.- Introducción a la Inteligencia
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
Informática General 2016 Cátedra: Valeria Drelichman, Pedro Paleo, Leonardo Nadel, Norma Morales
UNA / AREA TRANSDEPARTAMENTAL DE ARTES MULTIMEDIALES Licenciatura en Artes Multimediales Informática General 2016 Cátedra: Valeria Drelichman, Pedro Paleo, Leonardo Nadel, Norma Morales JavaScript Algoritmo
Práctica 2. TIPOS DE DATOS SIMPLES
Práctica 2. TIPOS DE DATOS SIMPLES 1 sesión Semana: 15 de octubre OBJETIVOS: Conocer los distintos tipos de datos simples y su correcta utilización en la construcción de algoritmos Formular expresiones
Algoritmos de Ordenación
Algoritmos de Ordenación Pedro Corcuera Dpto. Matemática Aplicada y Ciencias de la Computación Universidad de Cantabria [email protected] Algoritmos comunes - Ordenación Ordenación o clasificación es
INDICE Prologo Capitulo 1. Algoritmos y programas Capitulo 2. La resolución de los problemas con computadoras y las herramientas de programación
INDICE Prologo XI Capitulo 1. Algoritmos y programas 1.1. Configuraciones de una computadora 1 1.2. Lenguajes de programación 2 1.3. Resolución de problemas 1.3.1. Fase de resolución del problema 3 1.3.1.1.
Introducción al Cálculo Lambda
Introducción al Cálculo Lambda Dr. Alejandro Guerra-Hernández Departamento de Inteligencia Artificial Universidad Veracruzana Facultad de Física e Inteligencia Artificial Sebastián Camacho No 5, Xalapa,
Inteligencia Artificial
Inteligencia Artificial Conjunto de técnicas que se aplican en el diseño de programas de computador para la resolución de problemas que por su dificultad requieren el uso de un cierto grado de inteligencia.
GLOSARIO 1. Qué es bit y byte? Bit: Es la unidad mínima de información. Puede ser 0 o 1. Byte: Es el conjunto de 8 bits. Ejemplo:
Cuestionario Modulo 1.1 GLOSARIO 1. Qué es bit y byte? Bit: Es la unidad mínima de información. Puede ser 0 o 1. Byte: Es el conjunto de 8 bits. Ejemplo: 1001 0110. 2. qué es Dato? Definición: Es toda
Docente: Juan Carlos Pérez P. Alumno : Fecha : Nota:
Docente: Juan Carlos Pérez P. Alumno : Fecha : Nota: Justificación: Se pretende con éste contribuir a que el alumno se inicie y conozca el entorno del IDE en la creación de pequeños programas en java Objetivos:
Pseudocódigo y Diagramas de Flujo Pseudocódigo
Pseudcódig y Diagramas de Fluj Pseudcódig El pseudcódig es la descripción en Inglés Españl de ls pass de un algritm prcedimient El pseudcódig es un mixt entre Inglés Españl y un lenguaje de prgramación
Programación MATLAB: Programas y Funciones.
Programación MATLAB: Programas y Funciones. Curso: Métodos Numéricos en Ingeniería Profesor: Dr. José A. Otero Hernández Correo: [email protected] web: http://metodosnumericoscem.weebly.com Universidad:
Análisis asintótico: algoritmos recursivos e iterativos
Análisis asintótico: algoritmos recursivos e iterativos Frank Sebastián Franco Hernández 22 de agosto de 2014 1. Análisis de tres algoritmos de ordenamiento 1.1. Algoritmo BubbleSort Este algoritmo funciona
Planificaciones Algoritmos y Programación I. Docente responsable: AZCURRA DIEGO ANDRES. 1 de 5
Planificaciones 7540 - Algoritmos y Programación I Docente responsable: AZCURRA DIEGO ANDRES 1 de 5 OBJETIVOS Objetivos estratégicos: -Desarrollar el concepto algorítmico. -Aplicar técnicas de programación
UNIDAD IV Programación Funcional. Lic. Jesús Germán Andrés PAUTSCH - FCEQyN - UNaM
UNIDAD IV Programación Funcional Porqué? 2 Introducción Porque aprender programación funcional? - Recursión - Abstracción funcional - Funciones de primer orden Estos conceptos se han incorporado en la
Las operaciones aritméticas son: suma, resta, multiplicación, división, potenciación, división entera.
Probabilidades y Estadística (C) 1 OPERACIONES ARITMÉTICAS Las operaciones aritméticas son: suma, resta, multiplicación, división, potenciación, división entera. +, -, *, /, ^, %/% or %% OPERADORES DE
INDICE 1.1. Información y Significado 1.2. Arreglos en C 1.3. Estructura en C 1.4. Clases en C++ 2. La Pila 2.1. Definición y Ejemplos
INDICE Prefacio xiii 1. Introducción a las Estructuras de datos 1 1.1. Información y Significado 1 Enteros binarios y decimales 2 Números reales 4 Cadenas de caracteres 5 Hardware y software 6 Concepto
7.1 Consideraciones. Considere la búsqueda de un libro en una biblioteca. Considere la búsqueda de un nombre en el directorio telefónico.
86 Capítulo 7. ORDENAMIENTO. 7.1 Consideraciones. Considere la búsqueda de un libro en una biblioteca. Considere la búsqueda de un nombre en el directorio telefónico. Si los elementos a ordenar son compuestos
UNIVERSIDAD MAYOR DE SAN ANDRES FACULTAD DE CIENCIAS PURAS Y NATURALES CURSO PREUNIVERSITARIO PRUEBA DE SUFICIENCIA ACADEMICA GESTION II/2017
INTRODUCCION A LA INFORMATICA INF-99 CONTENIDO CAPÍTULO I.-ELEMENTOS DE LA INFORMÁTICA 1.1Introducción 1.2. Definiciones 1.2.1. Informática 1.2.2. Computación 1.2.3. Dato 1.2.4. Información 1.2.5. Sistema
SISTEMAS INFORMÁTICOS PROGRAMACION I - Contenidos Analíticos Ing. Alejandro Guzmán M. TEMA 2. Diseño de Algoritmos
TEMA 2 Diseño de Algoritmos 7 2. DISEÑO DE ALGORITMOS 2.1. Concepto de Algoritmo En matemáticas, ciencias de la computación y disciplinas relacionadas, un algoritmo (del griego y latín, dixit algorithmus
Inteligencia en Redes de Comunicaciones. Prolog. Julio Villena Román.
Inteligencia en Redes de Comunicaciones Prolog Julio Villena Román [email protected] Prolog La lógica proporciona: un lenguaje base para la representación del conocimiento modelos para el razonamiento
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
Introducción rápida a la programación (estructurada ) con C++
Introducción rápida a la programación (estructurada ) con C++ A B No A? Si B A Los Bloques pueden ser una línea de código o un modulo (función o subrutina) que pueden estar contenido en otro archivo de
CONTENIDO 1 Diagrama de flujo 2 Pseudocodigo 3 Diagrama estructurado (nassi-schneiderman)
CONTENIDO 1 Diagrama de flujo 2 Pseudocodigo 3 Diagrama estructurado (nassi-schneiderman) Las dos herramientas utilizadas comúnmente para diseñar algoritmos son: Diagrama de Flujo Pseuducodigo 1 Diagrama
