Mathematica como lenguaje de programación

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

Download "Mathematica como lenguaje de programación"

Transcripción

1 Chapter 1 Mathematica como lenguaje de programación 1.1 Fundamentos del Lenguaje Expresiones: En Mathematica todo es una expresión. Hay dos tipos de expresiones: Expresiones Normales, las cuales son de la forma: head[part1,par2,...] donde head, part1, part2,... son expresiones. Átomos: los cuales son símbolos, números y strings, por ejemplo: Sin[Log[2.5,7]] Esto es es una función donde Sin y Log son símbolos. RGBColor[1,0,0] que NO es una función. Observación: En Mathematica toda expresión puede ser construida usando átomos, paréntesis cuadrados y comas. In[1]:= a*a + D[a^3,a] Out[1]= 4a^2 1

2 Cuya fórmula completa es: In[3]:= FullForm[a*a + D[a^3,a]] Out[3]= Times[4,Power[a,2]] Nota: +, -, *, /, entre otros, son llamados Símbolos especiales de entrada, pues por ejemplo cuando se ejecuta 2+3 realmente Mathematica ejecuta Plus[2,3]. Obs: [ ] FullForm[4a^2] (retorna) [ ] Times[4,Power[a,2]] Átomos Un átomo es, en Mathematica, una expresión que no puede ser quebrada o dividida en expresiones más pequeñas de Mathematica. Hay tres tipos: Símbolos: Un símbolo es una secuencia de letras, dígitos y el caracter $. [In1] a+b-2a [Out2] -a+b Números: Hay cuatro tipos: Enteros Reales Racionales Complejos dddd ddd.ddd integer1/integer2 { FullForm[a+bI] a+bi Complex[a,b] Strings: Un string es una secuencia de caracteres encerrados por... "Hola" Evaluación de expresiones In[1]:=Trace[Sin[Log[2.5,7]]] {{Log[2.5,7], Log[7] Log[2.5], {{Log[2.5],0.916}, ,1.091}, {Log[7], 1.945},1.091,1.945,2.123}, Sin[2.123], (*resultado final*) }

3 1.2 Formas especiales de entrada Operadores Aritméticos: Símbolos aritméticos 3*2^4 -> Times[3,Power[2,4]] Operadores Relacionales y Booleanos: Esto son: <, <=, >, >=, ==,!=, && (AND), (OR) Ejemplos: 7 > 4 && 2!= 3 True 5 > 4 > 3 True Observación: %n es equivalente a Out[n] Operadores de Asignación: Operador Ejemplo = x=y+z := x:=y+z += x+=y x=x+y -= x-=y x=x-y *= x*=y x=x*y /= x/=y x=x/y

4 1.3 Llamado a funciones La sintaxis para invocar una función es: f[x] (NO f(x)) Otras formas de invocar funciones son: Notación Prefija: x f[x] x f[g[h[x]]] Notación Postfija: x // f f[x] Sqrt[3] // N N[Sqrt[3]] x // f // g g[f[x]] a+b // f f[a+b] Notación infija: x ~ f ~ y f[x,y] 1.4 Definición de funciones En Mathematica se defienen las funciones como sigue: Z[x_,y_] := x+y La parte Z[x_,y_] se conoce como declaracion y la parte x+y es conocida como cuerpo. El underscore en x_ y y_ son importantes pues indican que x y y son parámetros formales. Estos underscore se conocen como blancos. Invocación: x := 1 y := Log[2] Z[Sqrt[3],2 Pi] Sqrt[3]+2 Pi La definción de Z se pudo hacer de la siguiente manera: Z[x_,y_] = x + y x + y Nota: El valor de retorno de la función es el cálculo que se haga en la última línea la cual no lleva ;. Nota: Los valores de x y y no son alterados dentro de la función.

5 1.5 Listas Las listas son la estructura de datos básica y fundamental en Mathematica. Ejemplos: {1, x, i+j} (Lista de tres elementos) FullForm[%] List[1, x, Plus[i,j]] En la mayoría de los contextos de Mathematica se requieren listas, por ejemplo: Ejemplos: Plot3D[Sin[xy],{x, 0, Pi},{x, 0, Pi}] In[21]:=S={{a, b}, {c, d}, {e, f }} Out[21]={{a,b},{c,d},{e,f}} In[22]:=S[[1]] Out[22]={a,b} In[23]:=%[[2]] Out[23]= b In[24]:=S[[1,2]] Out[24]=b

6 1.6 Reglas Una entrada de la forma a b se conoce como regla. ReplaceAll[x+x^2, x -> w] w + w^2 que es equivalente a: x+ x^2 /. x->w (La sustitución es no algebraica) ReplaceAll[x^2+ x^4, x^2-> w+1] 1 + w + x^4 1.7 Tipos El lenguaje de programación de Mathematica, a diferencia de otros lenguajes, es muy débilmente tipificado. En general en las funciones NO se especifican los tipos de los parámetros. Sin embargo el tipos puede ser especificado como sigue: fact[n_integer]:= Product[i,{i,1,n}] cuadrado[n_integer n_real n_rational n_complex] := n^2 funcion[s_list] := Variables Locales Para evitar efectos colaterales en los programas, se deben usar variables locales, mediantemódulos: Module[Declaraciones, Cuerpo]

7 1.9 Algoritmo óptimo para calcular series Entrada: x, n, f Calcula: n k=0 f(x, k) Paso 1: k a Paso 2: s 0 Paso 3: T f(a) Paso 4: Repita s s + T T T ( ) f(x,k+1) f(x,k) k k+1 Hasta k = n Calcular n ( 1) k x (2k) cos(x) ; x IR (2k)! k=0 f(x, k + 1) f(x, k) = ( 1) (k+1) x (2k+2) (2k+2)! ( 1) (k) x (2k) (2k)! = ( 1)x 2 (2k + 1)(2k + 2) 1.10 Programación Funcional No se usa asignación ni se usan ciclos. En lugar de esto se usan: Los datos se mueven a través de funciones, mediante el paso de parámetros. Se usa recursividad, Apply y Map. Las funciones tienen como argumento a funciones y retornan funciones. Map y Apply: Map[f,a,b,c] = f[a], f[b], f[c] Apply[f,a,b,c] = f[a,b,c] Promedio[s_list]:=Apply[Plus,s]/Length[s] Promedio[{2,4,9,4,3}] 22/5"

8 Lo anterior se pudo hacer con ciclos, pero es mecho mejor de esta forma. Through: Aplica una lista de funciones a un argumento. Through[{Sin, Cos, Tan][a]] = {Sin[a], Cos[a], Tan[a]} Funciones Anónimas (Funciones λ) En muchas situaciones se requiere evaluar una función, pero sin necesidad de darle un nombre, para no llenar la memoria (kernel) de nombres. la sintaxis es: Function[{x}, Cuerpo] Ejemplos: Function[{x},x^2][5] = 25 Function[{x},x^2+y][3,2] = 11 Si se tienen definidas 2 funciones F[x] y G[x] y se desea aplicar la suma de F y G a una lista, la mejor forma de hacerlo es: Map[Function[{x},F[x]+G[x]],a,b,c] = {F[a]+G[a],F[b]+G[b], F[c]+ G[c]} Paradigma de la programación funcional. Trate las estructuras matemáticas como un todo, nunca las descomponga para reconstruirlas luego.

GUÍA BÁSICA DE SCHEME v.4

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

Más detalles

CAPÍTULO IV: 4.1 Introducción a la. Programación Funcional

CAPÍTULO IV: 4.1 Introducción a la. Programación Funcional CAPÍTULO IV: Programación Funcional 4.1 Introducción a la Programación Funcional 1 Programación Funcional Paradigma diferente a los imperativos, que se aleja de la máquina de von Neumann Basado en funciones

Más detalles

Principios de Computadoras II

Principios de Computadoras II Departamento de Ingeniería Electrónica y Computadoras Operadores y Expresiones rcoppo@uns.edu.ar Primer programa en Java 2 Comentarios en Java Comentario tradicional (multi-línea) Comentario de línea Comentario

Más detalles

Lenguajes de Programación Programación funcional

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

Más detalles

Algoritmos. Medios de expresión de un algoritmo. Diagrama de flujo

Algoritmos. Medios de expresión de un algoritmo. Diagrama de flujo Algoritmos En general, no hay una definición formal de algoritmo. Muchos autores los señalan como listas de instrucciones para resolver un problema abstracto, es decir, que un número finito de pasos convierten

Más detalles

Tema 2.- Expresiones y funciones

Tema 2.- Expresiones y funciones 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

Números enteros (cortos, largos y sin signo) Números reales (precisión simple y doble) Carácter y cadenas de caracteres. Lógicos.

Números enteros (cortos, largos y sin signo) Números reales (precisión simple y doble) Carácter y cadenas de caracteres. Lógicos. Universidad Rafael Urdaneta Escuela de Ingeniería de Computación Números enteros (cortos, largos y sin signo) Números reales (precisión simple y doble) Carácter y cadenas de caracteres. Lógicos. Asignación

Más detalles

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 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

Más detalles

Tema 3: Características de la programación funcional. Sesión 6: El paradigma funcional (2)

Tema 3: Características de la programación funcional. Sesión 6: El paradigma funcional (2) Tema 3: Características de la programación funcional Sesión 6: El paradigma funcional (2) Referencias Capítulo 1.1.5 SICP: [[http://mitpress.mit.edu/sicp/full-text/book/book-z- H-10.html#%_sec_1.1.5][The

Más detalles

TUTORIAL PROLOG. Lenguajes de programación Universidad Nacional de Colombia Santiago Carvajal Castañeda Mario Andrés Moreno Norato

TUTORIAL PROLOG. Lenguajes de programación Universidad Nacional de Colombia Santiago Carvajal Castañeda Mario Andrés Moreno Norato TUTORIAL PROLOG Lenguajes de programación Universidad Nacional de Colombia Santiago Carvajal Castañeda Mario Andrés Moreno Norato Prolog es un lenguaje de programación lógica de propósito general que se

Más detalles

SISTEMAS INFORMÁTICOS PROGRAMACION I - Contenidos Analíticos Ing. Alejandro Guzmán M. TEMA 2. Diseño de Algoritmos

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

Más detalles

Programación 1 - Práctica 0, recargada.

Programación 1 - Práctica 0, recargada. v.6.2.1 Programación 1 - Práctica 0, recargada. Ahora con más ejercicios! 1 Expresiones aritméticas. 1. Considere las siguientes expresiones aritméticas: 12 * 5-7 * 6 3 * 5-7 * 4 / 14 + 3 / 1 cos(0.8)

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

Programación en Mathematica

Programación en Mathematica UNIVERSIDAD DE JAÉN ESCUELA POLITÉCNICA SUPERIOR Dpto. de Matemáticas (Área de Álgebra) Curso 2004/05 PRÁCTICA Nº3 Programación en Mathematica Mathematica no sólo es un paquete de cálculo simbólico en

Más detalles

Introducción a C++ Algoritmos y Estructuras de datos II Dra. Carmen Mezura Godoy. Febrero 2009

Introducción a C++ Algoritmos y Estructuras de datos II Dra. Carmen Mezura Godoy. Febrero 2009 Introducción a C++ Algoritmos y Estructuras de datos II Dra. Carmen Mezura Godoy Febrero 2009 Índice Elementos básicos Ejecución de un programa Estructuras de control Ciclos Ejercicios 2 Elementos Básicos

Más detalles

GUÍA DE TRABAJO N 1 C# Ing. Néstor Raúl Suarez Perpiñan Página 1 de 13

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

Más detalles

Clase 2: El Lenguaje Python

Clase 2: El Lenguaje Python Agosto 2012 Clase 2 Temario Consideraciones generales Operadores y expresiones Variables y Tipos Funciones Las Estructuras de Control Guía práctica Primer curso de programación usando robots y Python Objetivos

Más detalles

Tema II: Introducción al Lenguaje Funcional

Tema II: Introducción al Lenguaje Funcional Tema II: Introducción al Lenguaje Funcional Características de Haskell Lenguaje funcional de o. superior fuertemente tipificado. Clasifica los entes de un programa en: objetos (constantes y funciones)

Más detalles

UNIDAD IV Programación Funcional. Lic. Jesús Germán Andrés PAUTSCH - FCEQyN - UNaM

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

Más detalles

Introducción a Haskell. Cecilia Manzino

Introducción a Haskell. Cecilia Manzino Paradigmas de programación Un paradigma de programación representa un estilo particular o filosofía para la construcción del software. Los más comunes dan lugar a los siguientes tipos de programación:

Más detalles

Apunte Laboratorio ALPI - El lenguaje de programación Pascal

Apunte Laboratorio ALPI - El lenguaje de programación Pascal Apunte Laboratorio ALPI - El lenguaje de programación Pascal 1 2 ÍNDICE GENERAL Índice 1. Estructura de un Programa en Pascal 3 2. Sintaxis de Pascal 4 2.1. Uso de mayúsculas.....................................

Más detalles

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 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:

Más detalles

Los parámetros: son los campos que se comunican a los métodos de los objetos.

Los parámetros: son los campos que se comunican a los métodos de los objetos. Modulo 6. Variables y Operadores Variables Un objeto almacena los estados en campos, estos campos se conocen en java como variables. Por eso a menudo podemos ver estas dos palabras usadas para referirse

Más detalles

ING1310 Introducción a la Computación. Python. Conceptos Básicos. Carlos Reveco

ING1310 Introducción a la Computación. Python. Conceptos Básicos. Carlos Reveco ING1310 Introducción a la Computación Python Conceptos Básicos Carlos Reveco creveco@dcc.uchile.cl careveco@miuandes.cl Facultad de Ingeniería/Universidad de los Andes/Chile Rev : 254 C.Reveco Facultad

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

Bloque 1. Conceptos y técnicas básicas en programación

Bloque 1. Conceptos y técnicas básicas en programación Bloque 1. Conceptos y técnicas básicas en programación 1. Introducción 2. Datos y expresiones. Especificación de algoritmos 3. Estructuras algorítmicas básicas 4. Iteración y recursión 5. Iteración y recursión

Más detalles

DISEÑO ESTRUCTURADO USANDO HERRAMIENTAS DE

DISEÑO ESTRUCTURADO USANDO HERRAMIENTAS DE DISEÑO ESTRUCTURADO USANDO HERRAMIENTAS DE REPRESENTACIÓN DE ALGORITMOS PSEUDOCÓDIGO El pseudocódigo es una herramienta de programación en la que las instrucciones se escriben en palabras similares al

Más detalles

Componentes Básicos. InCo. InCo Componentes Básicos 1 / 28

Componentes Básicos. InCo. InCo Componentes Básicos 1 / 28 Componentes Básicos InCo InCo Componentes Básicos 1 / 28 Modelo de Computación Vemos al computador como un procesador de datos. +------------+ Entrada ===> Computador ===> Salida +------------+ InCo Componentes

Más detalles

Prefacio 25 Organización de la Unidad Didáctica Cómo utilizar el libro Objetivos docentes... 27

Prefacio 25 Organización de la Unidad Didáctica Cómo utilizar el libro Objetivos docentes... 27 ÍNDICE Prefacio 25 Organización de la Unidad Didáctica.................... 25 Cómo utilizar el libro............................. 26 Objetivos docentes.............................. 27 1 Fundamentos de

Más detalles

Programación 1 Tema 3. Información, datos, operaciones y expresiones

Programación 1 Tema 3. Información, datos, operaciones y expresiones Programación 1 Tema 3 Información, datos, operaciones y expresiones Índice Datos y tipos de datos Datos primitivos en C++ Expresiones e instrucción de asignación Datos y tipos de datos Problema información

Más detalles

Universidad Rafael Urdaneta Escuela de Ingeniería de Computación. MSc Jaime Soto. Identificadores, palabras reservadas, delimitadores, comentarios

Universidad Rafael Urdaneta Escuela de Ingeniería de Computación. MSc Jaime Soto. Identificadores, palabras reservadas, delimitadores, comentarios Universidad Rafael Urdaneta Escuela de Ingeniería de Computación Identificadores, palabras reservadas, delimitadores, comentarios Números y caracteres Constantes y variables Estructura de un programa MSc

Más detalles

Programación n Orientada a Objetos Sentencias Java Parte I. Ing. Julio Ernesto Carreño o Vargas MsC.

Programación n Orientada a Objetos Sentencias Java Parte I. Ing. Julio Ernesto Carreño o Vargas MsC. Programación n Orientada a Objetos Sentencias Java Parte I Ing. Julio Ernesto Carreño o Vargas MsC. Variables y expresiones aritméticas Variables Conceptos de Memoria Una variable es un espacio en la memoria

Más detalles

Curso de Java Introducción a la Programación II

Curso de Java Introducción a la Programación II Curso de Java Introducción a la Programación II Jaime Fernández Martín Curso INEM 02830. Programación en Java Marzo 2010 Índice 1 Tipos Java 2 Decalaración de variables 3 Operadores aritméticos Índice

Más detalles

INSTITUTO SUPERIOR DE EDUCACION RURAL ISER FUNDAMENTOS DE PROGRAMACION

INSTITUTO SUPERIOR DE EDUCACION RURAL ISER FUNDAMENTOS DE PROGRAMACION INTRODUCCIÓN A LA PROGRAMACIÓN POR COMPUTADORA Muchos usuarios creen que la programación es simplemente teclear palabras en una computadora. Eso es una parte, pero de ninguna manera todo. La programación

Más detalles

Programación Orientada a Objetos Sentencias Java Parte I Ing. Julio Ernesto Carreño Vargas MsC.

Programación Orientada a Objetos Sentencias Java Parte I Ing. Julio Ernesto Carreño Vargas MsC. Sentencias Java Parte I Ing. Julio Ernesto Carreño Vargas MsC. Variables Conceptos de Memoria Una variable es un espacio en la memoria del PC Cada variable tiene un nombre, un tipo, un tamaño y un valor

Más detalles

Prof. María Alejandra Quintero. Informática Año

Prof. María Alejandra Quintero. Informática Año Prof. María Alejandra Quintero Informática Año 2014-2015 Es la acción de escribir programas de computación con el objetivo de resolver un determinado problema. Implica escribir instrucciones para indicarle

Más detalles

Lenguajes de Programación I

Lenguajes de Programación I Lenguajes de Programación I Control de Flujo - Expresiones Ernesto Hernández-Novich Copyright c 2006-2010 Definición El Control de Flujo es fundamental para la mayoría de los modelos de cómputo,

Más detalles

Introducción a Python. Cecilia Manzino

Introducción a Python. Cecilia Manzino Características del lenguaje Es un lenguaje de programación multiparadigma, soporta la programación orientada a objetos, imperativa y, en menor medida, funcional. Es un lenguaje multiplataforma, puede

Más detalles

UNIVERSIDAD MODULAR ABIERTA FACULTAD DE CIENCIAS ECONOMICAS

UNIVERSIDAD MODULAR ABIERTA FACULTAD DE CIENCIAS ECONOMICAS UNIVERSIDAD MODULAR ABIERTA FACULTAD DE CIENCIAS ECONOMICAS TITLE DOCENTE: ING. Mirna Lorena Blanco de Magaña DATO Información en bruto, sin ningún significado Dado un enunciado, evento o acción, los datos:

Más detalles

Guía 1: Funciones, precedencia y tipado

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

Más detalles

Funciones y subrutinas

Funciones y subrutinas Algorítmica y Lenguajes de Programación Funciones y subrutinas Funciones y subrutinas. Introducción El diseño descendente permite obtener un programa que resuelva un problema dividiendo este en subproblemas

Más detalles

El programa en JavaScript debe ir encerrado entre la marca script e inicializada la propiedad type con la cadena text/javascript:

El programa en JavaScript debe ir encerrado entre la marca script e inicializada la propiedad type con la cadena text/javascript: Javascript Qué es JavaScript? Es un lenguaje de scripting (Código interno en las páginas HTML) necesario para los elaboradores de sitios Web, mediante el cual se puede hacer que las páginas sean activas

Más detalles

Tema 2: Desarrollo de Algoritmos. E.E. de Algorítmica

Tema 2: Desarrollo de Algoritmos. E.E. de Algorítmica Tema 2: Desarrollo de Algoritmos E.E. de Algorítmica Temas a tratar Identificadores Variables Constantes Tipos de Datos Separadores Operadores Aritméticos Unarios Relacionales y Condicionales Nivel de

Más detalles

Informática General 2016 Cátedra: Valeria Drelichman, Pedro Paleo, Leonardo Nadel, Norma Morales

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

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

Entendiendo expresiones lambda en C# con Mono

Entendiendo expresiones lambda en C# con Mono Entendiendo expresiones lambda en C# con Mono Martín O. Márquez Introducción La programación imperativa es uno de los paradigmas de computación más ampliamente utilizados por la mayoría

Más detalles

Expresiones Aritméticas, relacionales y lógicas. Prof. Hilda Contreras Programación 1

Expresiones Aritméticas, relacionales y lógicas. Prof. Hilda Contreras Programación 1 Expresiones Aritméticas, relacionales y lógicas Prof. Hilda Contreras Programación 1 hildac.programacion1@gmail.com Expresión aritmética Similar a las fórmulas matemáticas Es una expresión que manipula

Más detalles

Pre-Laboratorio 1 MA-33A : Introducción a Matlab

Pre-Laboratorio 1 MA-33A : Introducción a Matlab Pre-Laboratorio 1 MA-33A 2007-1: Introducción a Matlab Gonzalo Hernández - Gonzalo Rios UChile - Departamento de Ingeniería Matemática 1 Interfaz de Matlab Al ejecutar el programa Matlab, se abrirá una

Más detalles

Paradigmas de lenguajes de programación. Introducción a la programación imperativa. Lenguaje C. Programación imperativa

Paradigmas de lenguajes de programación. Introducción a la programación imperativa. Lenguaje C. Programación imperativa Paradigmas de lenguajes de programación Introducción a la programación imperativa Algoritmos y Estructuras de Datos I Paradigma: Definición del modo en el que se especifica el cómputo (que luego es implementado

Más detalles

26 de Octubre del 2013

26 de Octubre del 2013 Hernánz Hernánz OMIJAL 26 Octubre l 2013 Contenidos Hernánz 1 2 3 4 ++ 5 6 7 Hernánz Concepto Un concepto es una ia, algo abstracto. No existe en la naturaleza. Palabras Herramientas que utilizamos para

Más detalles

Fundamentos de JAVA. Angel Kuri Enero, /2/2006

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

Más detalles

El pseudocódigo es una herramienta de programación en la que las instrucciones se escriben en palabras similares al inglés o español, que facilitan

El pseudocódigo es una herramienta de programación en la que las instrucciones se escriben en palabras similares al inglés o español, que facilitan El pseudocódigo es una herramienta de programación en la que las instrucciones se escriben en palabras similares al inglés o español, que facilitan tanto la escritura como la lectura de programas En esencia,

Más detalles

Docente: Juan Carlos Pérez P. Alumno : Fecha : Nota:

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:

Más detalles

Tema 2. Concepto de Algoritmo

Tema 2. Concepto de Algoritmo Tema 2. Concepto de Algoritmo Objetivos Definir el concepto de algoritmo Resolver problemas sencillos mediante el diseño de un algoritmo Conocer los tipos de datos elementales y las operaciones sobre ellos

Más detalles

ESCUELA NACIONAL AUXILIARES DE ENFERMERÍA Manizales TECNOLOGÍA E INFORMÁTICA

ESCUELA NACIONAL AUXILIARES DE ENFERMERÍA Manizales TECNOLOGÍA E INFORMÁTICA ALUMNA: GRADO: MODALIDAD-10 FECHA: PROFESOR: Hugo Nelson Ramírez Cárdenas LOGROS 1. Comprende qué son identificadores, variables y constantes, además de otros conceptos utilizados en programación. 2. Conoce

Más detalles

Programación: Sistemas unitriangulares inferiores

Programación: Sistemas unitriangulares inferiores Programación: Sistemas unitriangulares inferiores Objetivos. Programar en el lenguaje de MATLAB el método de la sustitución hacia adelante para resolver sistemas de ecuaciones lineales con matrices unitriangulares

Más detalles

Un calculadora avanzada... y algo más!

Un calculadora avanzada... y algo más! INFORMÁTICA, GRUPO D Un calculadora avanzada... y algo más! Vamos a familiarizarnos con el entorno interactivo de Python. Vamos a construir expresiones aritméticas y a guardar los resultados en variables

Más detalles

TALLER DE MATEMÁTICAS NOTAS. Toda expresión algebraica del tipo. a n x n + a n 1 x n a 1 x + a 0. es un polinomio de grado n, si a n 0.

TALLER DE MATEMÁTICAS NOTAS. Toda expresión algebraica del tipo. a n x n + a n 1 x n a 1 x + a 0. es un polinomio de grado n, si a n 0. NOTAS Toda expresión algebraica del tipo es un polinomio de grado n, si a n 0. a n x n + a n 1 x n 1 +... + a 1 x + a 0 RELACIONES DE DIVISIBILIDAD 1) x n a n = (x a)(x n 1 + ax n 2 + a 2 x n 3 +... +

Más detalles

Modelos de Desarrollo de Programas Y Programación Concurrente Clase N 3

Modelos de Desarrollo de Programas Y Programación Concurrente Clase N 3 PROGRAMACION FUNCIONAL - Un lenguaje de programación funcional tiene gran flexibilidad, es conciso en su notación y su semántica es sencilla. El inconveniente principal de estos lenguajes ha sido la ineficiencia

Más detalles

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:

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

Más detalles

2. EXPRESIONES 3. OPERADORES Y OPERANDOS 4. INDENTIFICADORES COMO LOCALIDADES DE MEMORIA

2. EXPRESIONES 3. OPERADORES Y OPERANDOS 4. INDENTIFICADORES COMO LOCALIDADES DE MEMORIA CONTENIDOS: 1. TIPOS DE DATOS 2. EXPRESIONES 3. OPERADORES Y OPERANDOS 4. INDENTIICADORES COMO LOCALIDADES DE MEMORIA OBJETIO EDUCACIONAL: El alumno conocerá las reglas para cambiar fórmulas matemáticas

Más detalles

CENTRO DE BACHILLERATO TECNOLOGICO INDUTRIAL Y DE SERVICIOS NO. 21. Profesor Enrique López Vásquez Algebra

CENTRO DE BACHILLERATO TECNOLOGICO INDUTRIAL Y DE SERVICIOS NO. 21. Profesor Enrique López Vásquez Algebra CENTRO DE BACHILLERATO TECNOLOGICO INDUTRIAL Y DE SERVICIOS NO. 21 Profesor Enrique López Vásquez Algebra Mexicali B.C. FEBRERO NOV 2018 Concepto de algebra Álgebra es el nombre que identifica a una rama

Más detalles

5.3 Tipos de Datos en Prolog

5.3 Tipos de Datos en Prolog 5.3 Tipos de Datos en Prolog Objetos de Datos en Prolog Objetos de datos simples Objetos estructurados Calce de operaciones fundamentales sobre objetos 1 Tipos de Objetos de Datos Objetos de datos Objetos

Más detalles

5.3 Tipos de Datos en Prolog

5.3 Tipos de Datos en Prolog 5.3 Tipos de Datos en Prolog Objetos de Datos en Prolog Objetos de datos simples Objetos estructurados Calce de operaciones fundamentales sobre objetos Tipos de Objetos de Datos Objetos de datos Objetos

Más detalles

Soluciones a los ejercicios

Soluciones a los ejercicios Soluciones a los ejercicios PROBLEMA 1: Sea la gramática G = {V, T, S, P }, donde V = {a, b, A, A, B, S}, T = {a, b}, S es el símbolo inicial y P = {S ::= ABa, A ::= BB, B ::= ab, AB ::= b}. ¾Se deriva

Más detalles

5 Polinomios. 1. Expresión algebraica. Valor numérico Monomios y polinomios Operaciones con monomios y polinomios 30

5 Polinomios. 1. Expresión algebraica. Valor numérico Monomios y polinomios Operaciones con monomios y polinomios 30 5 Polinomios 1. Expresión algebraica. Valor numérico 28 2. Monomios y polinomios 29 3. Operaciones con monomios y polinomios 30 4. Identidades notables 31 5. Evaluación 32 5 1. Expresión algebraica. Valor

Más detalles

Inteligencia Artificial: Prolog

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

Más detalles

Teoría de autómatas. Un enfoque práctico. Recortables. Thelma Cantú María Gpe. Mendoza

Teoría de autómatas. Un enfoque práctico. Recortables. Thelma Cantú María Gpe. Mendoza Teoría de autómatas. Un enfoque práctico Recortables Thelma Cantú María Gpe. Mendoza 1.1 Búsqueda de lenguajes Alumno: 1 Nombre del lenguaje Alfabeto: Dónde se utiliza? Cuál es el beneficio para la humanidad?

Más detalles

PROGRAMACION PARAMETRICA LENGUAJE DE ALTO NIVEL. MILTRONICS CNC MACHINES Control Centurion 7. Ing. Roberto Spicacci

PROGRAMACION PARAMETRICA LENGUAJE DE ALTO NIVEL. MILTRONICS CNC MACHINES Control Centurion 7. Ing. Roberto Spicacci PROGRAMACION PARAMETRICA LENGUAJE DE ALTO NIVEL MILTRONICS CNC MACHINES Control Centurion 7 Ing. Roberto Spicacci GENERALIDADES En la programación paramétrica se pueden utilizar ECUACIONES para definir

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

Capítulo 7 OPERADORES Y EXPRESIONES. Presentación resumen del libro: "EMPEZAR DE CERO A PROGRAMAR EN lenguaje C"

Capítulo 7 OPERADORES Y EXPRESIONES. Presentación resumen del libro: EMPEZAR DE CERO A PROGRAMAR EN lenguaje C Presentación resumen del libro: "EMPEZAR DE CERO A PROGRAMAR EN lenguaje C" Autor: Carlos Javier Pes Rivas (correo@carlospes.com) Capítulo 7 OPERADORES Y EXPRESIONES 1 OBJETIVOS Conocer los tipos de operadores

Más detalles

Definición Es una directiva using que ayuda al compilador a localizar una clase que se usa en la aplicación.

Definición Es una directiva using que ayuda al compilador a localizar una clase que se usa en la aplicación. Capitulo 3 Introducción a las aplicaciones de C# Resumen: Item using System; espacios de nombres: Las palabras clave estilo de mayúsculas/minúsculas Pascal public class Bienvenido1 Definición Es una directiva

Más detalles

Las expresiones son combinaciones de constantes, variables, símbolos de operación, paréntesis y nombres de funciones especiales.

Las expresiones son combinaciones de constantes, variables, símbolos de operación, paréntesis y nombres de funciones especiales. Expresiones Las expresiones son combinaciones de constantes, variables, símbolos de operación, paréntesis y nombres de funciones especiales. Por ejemplo: a + (b + 3) / c Cada expresión toma un valor que

Más detalles

Programación 1 Tema 5. Instrucciones simples y estructuradas

Programación 1 Tema 5. Instrucciones simples y estructuradas Programación 1 Tema 5 Instrucciones simples y estructuradas Índice Instrucciones simples Instrucciones estructuradas 2 Instrucción ::= 3 Instrucciones.

Más detalles

Programa Nacional de Formación de Informática Material Educativo Computarizado de Algorítmica y Programación

Programa Nacional de Formación de Informática Material Educativo Computarizado de Algorítmica y Programación UNIDAD CURRICULAR: ALGORITMICA Y PROGRAMACIÓN UNIDAD III. DATOS Y ENTIDADES PRIMITIVAS CONTENIDO: Concepto y diferencia entre dato e información, tipos de datos. Los operadores: concepto y tipos La expresión:

Más detalles

Tema 2. Tipos predefinidos

Tema 2. Tipos predefinidos Programación Declarativa Haskell Informática Sistemas Curso 2003-2004 Pepe Gallardo Universidad de Málaga Tema 2. Tipos predefinidos 2.1 Tipos simples predefinidos El tipo Bool El tipo Int El tipo Integer

Más detalles

CAPITULO 2: VARIABLES Y CONSTANTES

CAPITULO 2: VARIABLES Y CONSTANTES CAPITULO 2: VARIABLES Y CONSTANTES 1. TIPOS DE DATOS. Existen cinco tipos de datos atómicos en C; char: carácter, int: entero, float: real coma flotante, double: real de doble precisión y void: sin valor.

Más detalles

Tema 4. Funciones de orden superior

Tema 4. Funciones de orden superior Programación Declarativa Haskell Informática Sistemas Curso 2003-2004 Pepe Gallardo Universidad de Málaga Tema 4. Funciones de orden superior 4.1 Funciones de orden superior 4.2 Expresiones lambda 4.3

Más detalles

Programación en C. Algoritmo y Estructura de Datos. Ing. M. Laura López. Programación en C

Programación en C. Algoritmo y Estructura de Datos. Ing. M. Laura López. Programación en C Algoritmo y Estructura de Datos Ing. M. Laura López 1 Estructura de un programa en C 2 Estructura de un programa en C #include Archivos de cabecera # define Definición de constantes Declaraciones Globales

Más detalles

1.2 Uso del software como una calculadora. Iniciación a los operadores y almacenamiento de datos.

1.2 Uso del software como una calculadora. Iniciación a los operadores y almacenamiento de datos. 1.2 Uso del software como una calculadora. Iniciación a los operadores y almacenamiento de datos. Iniciación al manejo de datos Empezaremos a usar el software en modo calculadora, utilizando la ventana

Más detalles

Licenciatura de Matemáticas Informática I Notación algorítmica - Descripción BNF

Licenciatura de Matemáticas Informática I Notación algorítmica - Descripción BNF Licenciatura de Matemáticas Informática I Notación algorítmica - Descripción BNF Dpto. Informática Noviembre 1998 1. Deniciones en forma BNF < > Símbolos no terminales. Declaraciones u objetos declarados

Más detalles

INSTITUTO POLITECNICO NACIONAL UNIDAD PROFESIONAL INTERDISCIPLINARIA DE BIOTECNOLOGIA DEPARTAMENTO DE CIENCIAS BASICAS

INSTITUTO POLITECNICO NACIONAL UNIDAD PROFESIONAL INTERDISCIPLINARIA DE BIOTECNOLOGIA DEPARTAMENTO DE CIENCIAS BASICAS MANUAL DE PRÁCTICAS DEL TALLER DE PROGRAMACIÒN PRACTICA NO.4 NOMBRE DE LA PRÁCTICA Operaciones con Escalares y Conceptos Básicos de Programación 4.1 OBJETIVO GENERAL El alumno conocerá el funcionamiento

Más detalles

Fundamentos de programación clase 1: Introducción a la programación

Fundamentos de programación clase 1: Introducción a la programación Fundamentos de programación clase 1: Introducción a la programación Profesor: Jairo Ernesto Maldonado G. http://eisc.univalle.edu.co/~jaerma/ jaerma@eisc.univalle.edu.co Autor: Ángela Villota Recordemos

Más detalles

Programación MODULAR: Subalgoritmos - funciones y procedimientos

Programación MODULAR: Subalgoritmos - funciones y procedimientos Programación MODULAR: Subalgoritmos - funciones y procedimientos Uno de los métodos fundamentales para resolver un problema es dividirlo en problemas más pequeños, llamados subproblemas. Estos problemas

Más detalles

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 (;)

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,

Más detalles

Programación Declarativa

Programación Declarativa Programación Declarativa Tema 2: LISP (SCHEME) 2 Tema 2: LISP (SCHEME) Introducción Representación de Datos Definición de Funciones Predicados Listas 3 Introducción (I) SCHEME es un dialecto de LISP (LISt

Más detalles

Fundamentos de Informática 5. Operadores, expresiones (y su aplicación)

Fundamentos de Informática 5. Operadores, expresiones (y su aplicación) Fundamentos de Informática 5. Operadores, expresiones (y su aplicación) Fundamentos de Informática Grado en Ingeniería Química 2 Contenidos Operadores De asignación Aritméticos De incremento Relacionales

Más detalles

Elementos de un lenguaje de programación. Lenguajes de Programación 1

Elementos de un lenguaje de programación. Lenguajes de Programación 1 Elementos de un lenguaje de programación Lenguajes de Programación 1 Que nos brinda el lenguaje a + b que tipos de valores brinda qué operaciones proporciona qué significan los símbolos a y b es legal

Más detalles

FUNDAMENTOS DE INFORMÁTICA

FUNDAMENTOS DE INFORMÁTICA FUNDAMENTOS DE INFORMÁTICA Tema 1 Introducción a la Programación en Visual Basic Departamento de Ingeniería de Sistemas y Automática Universidad de Vigo undamentos de Informática. Departamento de Ingeniería

Más detalles

Tema 1 INTRODUCCIÓN A LOS LENGUAJES DE PROGRAMACIÓN

Tema 1 INTRODUCCIÓN A LOS LENGUAJES DE PROGRAMACIÓN Tema 1 INTRODUCCIÓN A LOS LENGUAJES DE PROGRAMACIÓN - Introducción - Sintaxis - Semántica básica - Tipos de datos - Expresiones y enunciados - Procedimientos y ambientes - Tipos abstractos de datos y módulos

Más detalles

Autoestudio 2: Variables y Operadores

Autoestudio 2: Variables y Operadores Autoestudio 2: Variables y es Componentes de un programa Cuando escribimos en un lenguaje de programación tenemos que entender la sintaxis del lenguaje. A continuación empezaremos con la sintaxis básica

Más detalles

Temas preliminares de Métodos Numéricos

Temas preliminares de Métodos Numéricos Temas preliminares de Métodos Numéricos Problemas para examen Sistema binario 1. Convierta el número 3 17 al sistema binario. 2. Convierta el siguiente número binario al sistema decimal: x = 1101.01101

Más detalles

Expresiones regulares y distancia de edición.

Expresiones regulares y distancia de edición. Expresiones regulares y distancia de edición. Francisco Barreras QUANTIL S.A.S. 19 de agosto de 2015 Francisco Barreras (QUANTIL S.A.S.) Expresiones regulares y distancia de edición. 19 de agosto de 2015

Más detalles

Cadena de caracteres Numéricas Fecha y hora Booleanas Tipo registro Tipo cursor

Cadena de caracteres Numéricas Fecha y hora Booleanas Tipo registro Tipo cursor Cadena de caracteres Numéricas Fecha y hora Booleanas Tipo registro Tipo cursor Declaración de variables Inicialización de variables Declaración de constantes Asignación de valores a variables Tipo Nombre_var

Más detalles

Proyecto Unico Interpretador de MiniLogo

Proyecto Unico Interpretador de MiniLogo Universidad Simón Bolívar Dpto. de Computación y Tecnología de la Información CI3721 - Traductores e Interpretadores Abril-Julio 2007 Proyecto Unico Interpretador de MiniLogo Logo es un lenguaje de programación

Más detalles

Sintaxis de PSeInt Tutorial

Sintaxis de PSeInt Tutorial Sintaxis de Tutorial Introducción a la Programación (T.U.M - T.U.G. - T.U.E. - T.U.T. - Prof) Introducción a la Computación (T.U.R. - T.U.W.) Fundamentos de la Informática (Ing. en Minas - Ing. Electr.)

Más detalles

ANALÓGICO vs. DIGITAL

ANALÓGICO vs. DIGITAL ANALÓGICO vs. DIGITAL Una señal analógica se caracteriza por presentar un numero infinito de valores posibles. Continuo Posibles valores: 1.00, 1.01, 200003,, infinitas posibilidades Una señal digital

Más detalles

Funciones como parámetros, funciones como resultados. Introducción a la Computación Patricia Borensztejn Clase 26

Funciones como parámetros, funciones como resultados. Introducción a la Computación Patricia Borensztejn Clase 26 Funciones como parámetros, funciones como resultados Introducción a la Computación Patricia Borensztejn Clase 26 Funciones de orden superior Se llama así a la técnica que permite pasar funciones como parámetros

Más detalles