¿Qué haces para aprender un lenguaje de programación? Jacinto Dávila

Slides:



Advertisements
Presentaciones similares
Datapath para las instrucciones de brinco
Advertisements

Java. Java nació el año 1991, por un par de ingenieros de la Sun Microsystems.
ALGORITMO En matemáticas, ciencia de la computación y disciplinas relacionadas, un algoritmo del latín DIXIT ALGORITHMUS es una lista bien definida, ordenada,
CE2DESARROLLO DEL PENSAMIENTO ANALITICO Y SISTEMICO NIVEL1:IDENTIFICA LA SECUENCIA LOGICA DE PASOS O ACCIONES PARA LA SOLUCION DE PROBLEMA EN UN DETERMINADO.
SOFTWARE DE DESARROLLO. Es el que puede utilizarse para definir una secuencia de instrucciones para su procesamiento por un ordenador o computadora. Es.
METODOS DE PROGRAMACION I Ing. Vania Flores Pinto.
1 Lenguaje de Programación Clase 1 Alberto Huamani Escobar
1 Clase 5: primeros programas (3ª parte) iic1102 – introducción a la programación.
Análisis de los algoritmos Unidad 7. Análisis La resolución práctica de un problema – algoritmo o método de resolución – y por otra un programa o codificación.
INTRODUCCIÓN DEL LENGUAJE DE PROGRAMACIÓN SCRATCH Elaborado por: Elvia R. De Gracia C.
Ciclos disponibles en Visual Basic Nury Capera Tovar.
PROGRAMACIÓN I CENTRO DE ESTUDIOS INTEGRADOS EL MARISCAL - CEIM Ing. Luisa Fernanda Arenas Castañeda Feb 6 de 2016.
2015-BM5A. ¿Qué estructuras de Programación conocemos? Condicional: If … { } … Else …{ } Condicional por Casos: Switch (opcion) { } Repetitiva exacta:
Hola.
Periodo II Técnicas de programación. Sin Parámetros Con parámetros Funciones.
Hola Mundo. JEJEJEJEJEJEJEJEJEJE.
1 LENGUAJES DE PROGRAMACIÓN. Son aplicaciones específicas diseñadas para crear otras aplicaciones o programas. Son programas para crear programas. 2.
Introducción a la Programación Multimedial
Convenciones de nomenclatura y diseño
¿Cómo manejar Scratch?.
Estructuras de Control.
Subject: Programming Methodology
Introducción al lenguaje C Instrucción IF – ELSE y el bucle WHILE
Estructuras Repetitivas Estructuras Repetitivas
Programación PHP función saregune CC 2009.
Conceptos básicos de programación
Acceso a WinQsb Siguiente diapositiva.
Cómo perder la virginidad (o cómo escribir y mandar tu primer parche)
Métodos en Java.
Estructuras de Datos Recursividad.
Programación I MC Beatriz Beltrán Martínez
Tema 4 Elementos para el Desarrollo de Algoritmos
Capacitación Macros en Excel
Tema 6. Conceptos básicos de programación Clase 1
Infografía. Estructura de Datos.
MENU SOFWARE Y HADWARE DISPOSITIVOS DE SALIDA DISPOSITIVOS DE ENTRADA
Aprendiendo A Usar Microsoft Word
Tema 7. Introducción a lenguaje de programación Visual Basic (clase 1)
Curso de iniciación al trabajo con MatLab 7.0
Estructuras de control en PHP
Programación en Java..
Curso de iniciación al trabajo con MatLab 7.0
LENGUAJE C.
Hola.
Hola mundo HOLA.
Hello hola.
¿Para qué se utiliza el PSEINT?
FUDAMENTOS BÀSICOS computación
Planteamiento del problema
Programación I MC José Andrés Vázquez Flores
ACCIONES Y ESTRUCTURAS
Tema 5 Control de errores y depuración
PROGRAMACIÓN (2).
MC Beatriz Beltrán Martínez Verano 2018
Hola Si quieres tener un GRAN día Manda este mensaje a 50 personas.
Ordenación externa: Partición de archivos, Ordenación por mezcla directa y Ordenación por mezcla natural LINNY ROSMERY ABREU VARGAS.
Fundamentos de la Programación I
Tema 7. Introducción a lenguaje de programación Visual Basic (clase 1)
Hola.
Hola Si quieres tener un GRAN día Manda este mensaje a 50 personas.
Programación Modular Programación de Computadoras - Hugo Vega Grupo2: Reina Rodríguez Miriam Salluca.
Programación Estructurada
UNIVERSIDAD JUÁREZ AUTÓNOMA DE TABASCO Nombres: Isaac Sánchez García Teofilo Martinez Garcia Ricardo Del Carmen Paz López Vanesa Anahí Pérez Lizárraga.
Hola.
Variables, Expresiones y Enunciados
¿Qué tal la nueva alumna?
UNIDAD II Generalidades sobre Algoritmos
Hola. hola hola hola.
¿Qué tal la nueva alumna?
Transcripción de la presentación:

¿Qué haces para aprender un lenguaje de programación? Jacinto Dávila Taller Prolog ¿Qué haces para aprender un lenguaje de programación? Jacinto Dávila

Taller Prolog para programadores tradicionales ¿Cómo aprender un lenguaje de programación? Hola Mundo Estructuras de datos Estructura de un archivo fuente Estructuras de programación Procedimiento, función o método Secuencia de instrucciones Estructuras de decisión Estructuras de repetición Incondicional Condicional Totalmente nuevo Ver código existente

Hola Mundo en Prolog ?- write('Hola Mundo'). Hola Mundo True. ?- swritef(S, '%15L%w', ['Hello', 'World']). S = "'Hello' World".

Estructuras de Datos NO se declaran! Simplemente se usan Ejemplos: Constantes: 1, a, 'A' Variables: (Cualquier identificador que comience con mayúscula) X, Y, A, Jacinto, N_de_m Funciones: f(X), [1,2,3]

Estructura de un archivo fuente Puede ser sólo CLAUSULAS (Ver siguiente lámina) Aunque se permite invocaciones Por ejemplo: | :- use_module(library(lists), [ member/2, | | append/2 as list_concat | | ]). |

Procedimiento, función o método metodo(Arg1, Arg2, Arg3) :- sub_pro1(Arg1, Arg4), subpro2(Arg2, Arg4, Arg3). natural(0). natural(X) :- Y is X – 1, natural(Y).

Secuencia de instrucciones Después del :- cualquier secuencia de predicados separados por coma y que termina (la secuencia) con un punto. procedimiento :- paso1, paso2, paso3, paso4.

Estructuras de decisión metodo :- paso_previo, ( condicion -> opcion1 ; opcion 2 ), paso_posterior. -- paso_previo, condicion, opcion1, paso_posterior. paso_previo, not(condicion), opcion2, paso_posterior. metodo :- paso_previo, decision, paso_posterior. decision :- condicion, opcion1. decision :- opcion2.

Estructuras de Repetición Incondicional Esto es parece a un for convencional, pero cuidado! ?- forall(member(Result = Formula, [2 = 1 + 1, 4 = 2 * 2]), Result =:= Formula). True. También estos son parecidos: ?- findall(X, member(X, [2,4,5]), L). L = [2, 4, 5]. ?- foreach(between(1,3,X), dif(X,Y)). dif(Y, 3), dif(Y, 2), dif(Y, 1), dif(Y, 1).

Estructuras de Repetición Incondicional Pero si quiero un contador: longitud([], 0). longitud([_|R], N) :- longitud(R, NR), N is NR + 1. ?- length([a,b,c,d], L). L = 4.

Estructuras de Repetición Condicional agrega([],X,X). agrega([U|X], Y, [U|Z]) :- agrega(X,Y,Z). ancestro(X,Y) :- padre(X,Y). ancestro(X,Y) :- padre(X,Z), ancestro(Z,Y).

Totalmente Nuevo UNIFICACION: ?- X = cualquier_cosa. ?- [X|Y] = [1,2,3,4]. X = 1, Y = [2, 3, 4].

Especialmente bueno para Metaprogramación http://resumidor.sourceforge.net http://gloria.sourceforge.net http://galatea.sourceforge.net