Tema 4: Introducción a la programación I

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

Download "Tema 4: Introducción a la programación I"

Transcripción

1 Tema 4: Introducción a la programación I Objetivos del tema: Una vez visto los fundamentos de un computador y conociendo cuáles son los pasos a seguir para solucionar un problema del mundo real mediante un programa, es el momento de comenzar a estudiar un lenguaje de programación que permita concretar una solución al problema en software. El lenguaje de programación que hemos elegido para esta asignatura es C++, si bien inicialmente empezaremos por C, que puede considerarse una versión limitada del anterior que no soporta la programación orientada a objetos.

2 Programación 2/56 Índice Índice Breve historia de C Variables y tipos de datos Tipos de datos básicos Caracteres Valores lógicos Números enteros Números reales Rango y precisión de los tipos numéricos de C Declaraciones de constantes Datos estructurados Tipos de datos estructurados Tablas Listas Pilas Colas Diccionarios o mapas Árboles...20

3 Programación 3/ Grafos Nuestro primer programa en C Componentes de un programa en C Directivas del preprocesador La directiva #include La directiva #define Comentarios Literales Palabras reservadas Identificadores Símbolos Sentencias Sentencias de control de flujo Bloque de sentencias Sentencia condicional simple : if Expresiones condicionales Sentencias if anidadas Bucles en C Bucle do-while Bucle while...39

4 Programación 4/ Bucle for Bucles anidados Sentencias break y continue Bifurcación múltiple: sentencia switch El operador condicional Terminación del programa: función exit() Ejercicios Apéndice I: sistemas binario, octal y hexadecimal Conversiones entre bases Conversión Binario - Hexadecimal Conversión Hexadecimal - Binario Conversión Binario - Decimal Conversión Decimal - Binario Conversión Decimal - Octal Conversión Decimal Hexadecimal Conversión Binario Octal...56

5 Programación 5/56 1 Breve historia de C A principios de la década de los 70 un pequeño equipo de investigación de los laboratorios Bell de ATT comenzó a desarrollar un nuevo sistema operativo que, con el tiempo, acabaría llamándose UNIX. En esta tarea se encontraron con que programar en lenguaje ensamblador un sistema operativo era excesivamente complicado, además de no permitir portar el sistema operativo a otros ordenadores. Es por ello que decidieron desarrollar un nuevo lenguaje de programación que permitiera construir el sistema operativo. Para ello se inspiraron en otros dos lenguajes de programación en cuyo desarrollo habían participado varios miembros del proyecto: los lenguajes B y BCPL. El lenguaje resultante se llamó C. El nuevo lenguaje de programación resultó ser una herramienta muy útil para programar software de sistemas, por lo que se hizo popular muy rápidamente los laboratorios Bell. Inicialmente no existía ninguna versión definitiva y estable de lenguaje, hasta que en 1978 se escribió el primer libro de referencia sobre él: The C Programming Languge. El lenguaje se hizo muy popular y muchas universidades y fabricantes de ordenadores crearon sus propios compiladores para C. A mediados de la década de los 80 gran parte de la programación de los computadores del mundo se efectuaba en C. La profusión de compiladores, en los que cada fabricante añadía sus propias instrucciones y bibliotecas, llevó a la falta de portabilidad entre los programas. Esto llevó a ANSI (American National Standards Institute) a crear una versión estándar del lenguaje que se llamó ANSI C. Desde entonces ha habido varias revisiones del estándar, la más reciente de ellas en Esta versión de mantenimiento del estándar, C99, añade nuevas características a ANSI C y resuelve ciertos problemas que tenía éste. En la actualidad C se encuentra en cierto declive, por un lado por la aparición de nuevos lenguajes de programación más simples que, a costa de disminuir la eficiencia del programa, abstraen más al programador de los detalles de la maquina y le permiten ser más productivo, a la vez que disminuyen la curva de aprendizaje del lenguaje. Por otro lado, la gran importancia las aplicaciones distribuidas y orientadas a Internet, para las cuales C no fue diseñado ya que fue creado más de 20 años antes de la aparición de Internet, hacen que en muchas ocasiones sean preferibles otros lenguajes de programación. Sin embargo, sigue habiendo ciertas aplicaciones para las cuales C (o su versión orientada a objetos, C++) siguen siendo la mejor herramienta: los sistemas operativos, los vídeo

6 Programación 6/56 juegos y, en general, las aplicaciones de escritorio están mayormente desarrolladas en C. Por otro lado, este lenguaje de programación ha influido notablemente en los lenguajes que más apogeo tienen en la actualidad y que están llamados a ser los dominantes el día de mañana: Java y C#. C es un lenguaje de propósito general, esto es, desde él puede abordarse prácticamente cualquier tipo de problema. Es un lenguaje de bajo-medio nivel, que permite el acceso al hardware de la computadora de manera que se puede hacer uso eficiente de los recursos con los que cuenta un equipo. Esto lo hace especialmente adecuado para aquellos problemas que requieran cálculo intensivo y una gestión cuidadosa del espacio de almacenamiento. Se ajusta muy bien a los esquemas de diseño jerárquico de arriba a abajo y, por tanto, a la programación estructurada y a la modular. 2 Variables y tipos de datos Las variables son identificadores utilizados para almacenar datos. Cada variable se asocia con una determinada zona dentro de la memoria del ordenador cuyo tamaño dependerá del tipo de dato que almacene la variable. Todos los datos a nivel de la máquina se representan en una secuencia de bits; sin embargo C, en particular, y los lenguajes de alto nivel, en general, permiten basarse en abstracciones que permiten ignorar los detalles de la representación interna de los datos. Las variables pueden contener diferentes valores durante los diferentes pasos de la ejecución de un programa. Todas las variables en C deben definirse antes de su uso. Una variable se define la siguiente forma: tipo_de_dato nombre_variable; esta sentencia define la variable nombre_variable que almacenará un dato del tipo tipo_de_dato. Es posible definir varias variables del mismo tipo a la vez: tipo_de_dato nombre_variable1, nombre_variable2,..., nombre_variablen; Al definir una variable es posible inicializarla, esto es, darle un valor inicial. tipo_de_dato nombre_variable = valor;

7 Programación 7/56 Si intentamos acceder al valor de la variable antes de inicializarla ésta puede contener un valor cualquiera que podría diferir dependiendo de la plataforma en la que se ejecute el programa, por lo que siempre debemos darle un valor inicial a las variables antes de usarlas y no confiar en la inicialización por defecto del compilador. El nombre de una variable es una forma simbólica de llamar a la dirección de memoria donde comienza el dato que almacena. Los nombres de las variables deben guardar relación con el objeto que representa. En C existen una serie de tipos de datos básicos que es posible componer para crear tipos de datos más complejos adaptados a las necesidades particulares un programa. Empezaremos viendo cuáles son los tipos de datos básicos. 3 Tipos de datos básicos En C hay tres categorías básicas de tipos de datos: caracteres, números enteros y números reales. Además, muchos lenguajes de programación incluyen como tipo básico de datos variables lógicas o boolean. 3.1 Caracteres El tipo de datos char se emplea para almacenar caracteres, o enteros de 8 bits. Los literales de tipo carácter se representan mediante un único carácter encerrado entre comillas simples. Así por ejemplo: char letra = a ; define una variable de tipo carácter que se llama letra y que contiene el carácter a. Hay ciertos caracteres especiales (también se les denomina secuencias de escape) cuya representación textual no coincide con su representación en pantalla (una tabulación, el carácter de nueva línea, etc.), pudiendo incluso no tener ningún tipo de presentación en pantalla sino realizando alguna acción (emitir un sonido, avanzar una página, etc.) o poseyendo un significado especial dentro del lenguaje de programación (el carácter de fin de cadena). Estos caracteres de escape son: '\0' carácter de fin de cadena '\a' carácter de alarma

8 Programación 8/56 '\b' retroceso '\f' avance de hoja '\n' nueva línea '\r' retorno que carro '\t' tabulador horizontal '\v' tabulador vertical '\\' diagonal invertida '\?' interrogación '\'' apóstrofo '\"' comillas '\ooo' representa el carácter cuya posición de la tabla ASCII se corresponde con el número octal "ooo". '\xhh' representa el carácter cuya posición de la tabla ASCII se corresponde con el número hexadecimal "hh". Los caracteres se representan en el ordenador mediante el código ASCII, American Standard Code for Information Interchange (Código Estadounidense Estándar para el Intercambio de Información), un código de caracteres basado en el alfabeto latino tal como se usa en inglés moderno y otras lenguas occidentales. Creado en 1963 por el Comité Estadounidense de Estándares (ASA) como una evolución de los conjuntos de códigos utilizados entonces en telegrafía. A continuación mostramos la tabla de caracteres ASCII:

9 Programación 9/ Valores lógicos Se emplean para representar valores lógicos, esto es, datos que sólo pueden ser ciertos o falsos. Su representación depende de la implementación de cada lenguaje; en ocasiones se emplea TRUE para representar una condición que se satisface y FALSE para una que no se satisface; otra opción es emplear un 0 para representar una condición que no se satisface y un 1 (o un valor numérico cualquiera distinto cero) para representar una condición se satisface. C tradicionalmente no ha contado con un tipo de dato para representar los valores lógicos. En C cualquier valor entero que tome un valor diferente de cero se interpreta como un dato lógico que toma el valor cierto, y cualquier valor entero que tome el valor cero se interpreta como un dato lógico que toma el valor falso. C99 introdujo un nuevo tipo de dato, _Bool, para representar valores lógicos. Dado lo reciente de esta especificación, todavía hay compiladores que no lo soportan. Por otro lado, las librerías estándar de C (y

10 Programación 10/56 la gran cantidad de código C que se escribió antes de esta especificación), definidas antes de esta especificación, emplean enteros para representar valores lógicos. Finalmente, el empleo de este nuevo tipo de dato rompe la compatibilidad entre C y C++, ya que impide compilar con un compilador del segundo lenguaje código del primero: para C++ _Bool no es un tipo de dato, ni una palabra reserva. Por todos estos motivos, en este texto no se empleará el tipo de dato _Bool en los programas C, sino que se emplearán variables enteras para representar valores lógicos. 3.3 Números enteros Los números enteros, como su propio nombre indica, representan datos numéricos que no tienen parte decimal. Existen varias formas de representar un número entero en código binario. Números enteros sin signo: o Binario puro: el número entero se representa por su binario correspondiente o Decimal codificado en binario (BCD): se usa un grupo de 4 bits por cada dígito decimal Números enteros con signo o Representación en signo-magnitud (SM): el bit que va más a la izquierda representa el signo (0 si es un número positivo,1 si es un número negativo) y el resto representan la magnitud El rango de valores que se puede presentar es: -2 n-1 +1 x 2 n-1-1. o Complemento a 1 (C-1): los números positivos se representa n igual que en SM. En los negativos se cambian los 0s por 1s.

11 Programación 11/ Rango de representación: -2 n-1 +1 x 2 n-1-1. o Complemento a (C-2): los números positivos se representan igual que en SM. En los negativos se cambian los 0s por 1s y se suma = Rango de representación: -2 n-1 x 2 n-1-1. o Exceso a 2 n-1 : No hay bit para el signo. Se representa en binario el valor correspondiente con número + exceso (2 n-1 ), donde exceso (2 n-1 ) es el número entero una unidad superior al mayor número que se puede presentar con n-1 bits = = Rango de representación: -2 n-1 x 2 n-1-1. En C, los tipos de datos enteros pueden ser char, short, int o long que almacenan, habitualmente, enteros de 8, 16, 32 o 64 bits, respectivamente. int numero, altura, profundidad; long balance, distancia; A los tipos char e int se les pueden aplicar los modificadores signed y unsigned para que sean con signo o sin signo. Los tipos con signo tienen un bit menos de longitud. El tipo char puede corresponder a signed char o unsigned char dependiendo del compilador.

12 Programación 12/56 Los números enteros se pueden representar tanto el formato decimal como octal (para ello se debe anteponer un 0 al número 0712) y en hexadecimal (se antepone un 0x al número 0xFA81). Para más información acerca de estos sistemas de numeración y las conversiones entre distintos sistemas consultar el apéndice del capítulo. Los tipos int y long admiten el modificador long (e int el short) para indicar el número de bits (mayor o menor rango de valores). 3.4 Números reales Los números reales se emplean, habitualmente, para presentar números que tienen una parte decimal; en ocasiones también se le ampara representan números enteros cuyo tamaño demasiado grande para ser representado por los datos de tipo enteros. Los números reales se pueden representar como un conjunto dígitos del 0 al 9 más el punto decimal: O también en notación científica o exponencial: " mantisaeexponente". Número = mantisa * Base de exponenciación exponente Mantisa: número real Base de exponenciación (E): base decimal. Exponente: exponente correspondiente a un número entero con su signo 2.5E3 2.5x E x10-2 Internamente, los números reales se representan en notación científica; la base es 2, la mantisa en binario puro (SM, C-1, C-2), y el exponente en exceso a 2 n-1 (ó SM). En C los números reales de simple precisión (32 bits) se representan como sigue: Signo: 1 bit (posiciones 31) Exponente: 8 bits (posiciones 23 a 30)

13 Programación 13/56 Mantisa: 23 bits (posiciones 0 a 22) Y los de doble precisión precisión (64 bits): Signo: 1 bit (posiciones 63) Exponente: 11 bits (posiciones 52 a 62) Mantisa: 52 bits (posiciones 0 a 51) Los tipos de datos reales son float y double; el segundo almacena números de mayor tamaño y con una mayor precisión que el primero. Ejemplos de uso de este tipo de de datos son: float elevacion = 2.43, x = 4.0; El tipo double admiten el modificador long para indicar es irse un número mayor de bits (mayor o menor rango de valores). 3.5 Rango y precisión de los tipos numéricos de C El número de bits, alcance y precisión de los tipos (tanto enteros como reales) de datos dependen de cada compilador, aunque suelen ser similares para una misma CPU (I80x86, SPARC, Alpha, etc.), ya que se adaptan a los que suministra ésta. Debido esta variación entre distintos compiladores el mejor modo de conocer el rango de valores que pueden representar cada uno de los tipos de datos es consultar los archivos de cabecera limits.h y float.h, que, respectivamente, nos indican los valores mínimo y máximo para cada uno de los tipos de datos enteros y reales. Para que el alumno tenga ciertas referencias del rango la precisión de los distintos tipos de datos listamos a continuación los valores que típicamente se emplean actualmente para los tipos de datos más comunes. En primer lugar indicamos el tamaño en bits del dato y a continuación su rango. char: a 127 unsigned char: 8 0 a 255 signed char: a 127 int: a

14 Programación 14/56 unsigned int: 32 0 a signed int: a short int: a unsigned short int: 16 0 a signed short int: a long int: a signed long int: a unsigned long int: 32 0 a long long: 64 9,223,372,036,854,775,808 a 9,223,372,036,854,775,807 float: 32 seis dígitos de precisión 3.4 x a 3.4 x double: 64 diez dígitos de precisión 1.7 x a 1.7 x long double: dígitos de precisión 3.4 E a 1.1 E Declaraciones de constantes Hemos visto una forma de representar datos cuyo valor no cambia (constantes) en un programa C: mediante la declarativa define. Esta declarativa hace que el preprocesador sustituya toda las ocurrencias de un identificador por un determinado valor, siendo por tanto el valor de la constante un literal en el programa C que es compilado. También es posible definir una constante empleando una variable cuyo contenido no puede ser modificado durante la ejecución del programa. Para ello se emplea la palabra reservada const: const int i= 8; tras esta definición cualquier intento de asignar un valor a la variable i provocará un error en el compilador., así, el siguiente código sería ilegal: const int i= 8; i=8;

15 Programación 15/56 4 Datos estructurados La resolución de un problema puede complicarse o simplificarse notablemente dependiendo de la representación elegida para los datos. Los tipos de datos básicos que hemos visto hasta ahora a menudo resulta una representación demasiado simple para los datos de los problemas del mundo real. Es por ello por lo que se definen estructuras de datos, esto es, una colección de variables homogéneas o heterogéneas con algún tipo de relación entre ellas. Estas estructuras de datos pueden clasificarse, en función de su almacenamiento, en datos internos y datos externos. Los datos internos son los que residen en la memoria principal del ordenador, mientras que los externos residen en los dispositivos de almacenamiento masivo. Dependiendo si el tamaño los datos puede o no cambiar durante la ejecución del programa los datos se clasifican estáticos (su tamaño no puede variar durante la ejecución del programa) y dinámicos (su tamaño sí varía durante la ejecución del programa). Dependiendo de las relaciones que guarda no datos entre si se pueden clasificar en datos lineales, aquellos que están enlazados a un elemento anterior y a uno posterior, y datos no lineales, que pueden estar enlazados múltiples elementos. Por último, si cada dato individual está formado por un conjunto de datos simples o primitivos (carácter, real, entero o lógico) se dice que los datos son compuestos. 4.1 Tipos de datos estructurados Tablas Son estructuras estáticas de datos homogéneos que están constituidas por un número fijo de elementos situados en direcciones contiguas memoria. Dependiendo de su dimensionalidad se clasifican en: Unidimensionales, son los llamados vectores o arrays. Bidimensionales, también llamados matrices. Multidimensionales, o poliedros.

16 Programación 16/56 Se suelen emplear para representar colecciones de datos homogéneas relacionadas lógicamente ellas y de carácter estático, como puede ser los días de la semana (array) o un listado de las notas que cada alumno de una clase ha obtenido en las diferentes asignaturas (matriz). Posición Lunes Martes Miércoles Jueves Viernes Sábado Domingo Alumno/ asignatura Alumno 1 Alumno 2 Alumno 3 Alumno 4 Asignatura Asignatura Asignatura Listas Es una estructura dinámica de datos constituida por elementos (que habitualmente son del mismo tipo) denominados nodos. Esta estructura se corresponde con el concepto de "lista" de la vida cotidiana: una lista de la compra, la lista de invitados a una boda o la lista de las películas más taquilleras se corresponden con esta estructura. En una lista es posible acceder a cualquier elemento, sin importar en la posición en la que esté, siendo posible eliminarlo o modificarlo y añadir elementos en cualquier posición. Dependiendo de cómo se relacionan entre sí los distintos elementos de una lista, éstas se pueden clasificar en: Simplemente enlazadas: cada elemento de la lista está enlazado con el siguiente elemento. Doblemente enlazadas: cada elemento de la lista está enlazado

17 Programación 17/56 con los elementos siguiente y anterior. Listas circulares: son aquellas listas en las cuales el último elemento está enlazado con el primero. Las operaciones típicas que se pueden realizar sobre una lista son: Insertar, eliminar o buscar un nodo. Vaciar la lista de elementos. Extraer un su conjunto de elementos de la lista. Concatenar dos listas. Comprobar si la lista está vacía o no. Existen dos tipos de listas muy empleadas en computación que son casos particulares de las listas generales: las colas y las pilas Pilas Una pila es una lista basada en el criterio LIFO (last in first out, el último que entra es el primero que sale). Los elementos se añaden apilándose unos sobre otros y sólo se tiene acceso al que está en la parte superior.

18 Programación 18/56 Las pilas también son estructuras de uso común en la vida real: una pila de libros que está sobre una mesa, una pila de latas de coca cola en un supermercado o la pila de papeles que usa la impresora para imprimir. En computación, son empleadas tanto por los compiladores como por los intérpretes para ejecutar programas. Las operaciones típicas que se pueden realizar sobre una pila son: Apilar un elemento en la parte superior (push). Extraer elemento que se encuentra en la parte superior (pop). Comprobar si la pila está vacía. Vaciar la pila. Obtener elemento que está encima de la pila sin extraerlo (top) Colas Una cola es una lista basada en el criterio FIFO (first in first out, el primero que entra es el primero que sale). Los nuevos elementos se añaden en la parte de atrás y la extracción de elementos se realiza por la de delante. Nuevamente, esta estructura informática se inspira en soluciones de la vida real: la cola del supermercado, la cola de trabajos en una impresora, o la cola del comedor universitario funcionando modo similar a esta estructura. Las operaciones típicas que se puede realizar sobre una cola son: Añadir un elemento la cola. Extraer el primer elemento de la cola. Comprobar si la cola está vacía. Vaciar todos los elementos la cola. Obtener el primer elemento de la cola sin extraerlo.

19 Programación 19/ Diccionarios o mapas Es una estructura dinámica de datos formada por una serie de parejas (clave, valor). Conociendo la clave es posible recuperar el valor correspondiente. Una guía telefónica o un diccionario son ejemplos del mundo real que funcionan de un modo similar a estructura. En ellos la clave sería el nombre de la persona cuyo teléfono queremos averiguar o la palabra cuya definición estamos buscando, y el valor sería el número de teléfono y la definición, respectivamente. En un mapa, los distintos elementos pueden encontrarse ordenados o no según su clave, y dependiendo del tipo de mapa es posible que se permitan claves repetidas o que no se permita la repetición claves. Las operaciones típicas que se realizan sobre un diccionario o mapa son: Insertar una pareja (clave, valor). Eliminar una pareja (clave, valor). Recuperar el valor asociado a una clave. Comprobar si una clave pertenece o no a la estructura. Listar todas las claves. Listar todos los valores. Borrar todos los elementos.

20 Programación 20/ Árboles Representan estructuras jerárquicas en las que cada nodo tiene un único antecesor pero puede tener varios sucesores. Existe un elemento denominado raíz sin antecesor del cual derivan todos los demás. Un tipo muy común de árboles son los árboles binarios, donde cada nodo tiene como máximo dos descendientes. Los árboles gramaticales para analizar las oraciones del lenguaje o un árbol genealógico son ejemplos del mundo real de función de un modo similar a esta estructura Grafos Un grafo es un conjunto de nodos conectados mediante arcos sin ningún tipo de restricción entre las conexiones que se pueden establecer entre un nodo y los demás. Si, por ejemplo, quisiésemos representar gráficamente las distancias que hay entre distintas ciudades de un país que están conectadas de modo directo entre sí esta sería la estructura más adecuada representar esta información..

21 Programación 21/56 5 Nuestro primer programa en C Un programa en C es un fichero de texto, normalmente con extensión.c, que contienen las sentencias del lenguaje. A continuación mostramos un programa muy simple que imprime en pantalla el texto " Hola mundo!": /* *Nuestro primer programa. *ejemplo4_1.c */ #include <stdio.h> int main(void) { printf(" Hola mundo!"); El texto que está delimitado entre /* */ es un comentario para el programador y, por tanto, no hace que se ejecute ninguna sentencia. La ejecución del programa comienza por la primera línea de la función principal, el main. En este caso la única sentencia que tiene la función principal es un printf, que imprime por pantalla el texto que se le pasa como argumento. Para compilar este programa desde la línea de comandos empleando, por ejemplo, con el compilador gcc emplearemos el comando "gcc ejemplo4_1.c". Como resultado tendremos un fichero de nombre " a.out" en Linux, o " a.exe" en Windows. Si queremos indicar el nombre del archivo ejecutable podemos emplear la opción "-o": "gcc -o ejemplo4_1 ejemplo4_1.c". 6 Componentes de un programa en C Un programa puede contener los siguientes elementos: directivas del preprocesador, comentarios, palabras reservadas, identificadores, símbolos, y literales. Ejemplo: /* *ejemplo4_2.c */ #include "stdio.h" int numero; /* este programa es muy simple */

22 Programación 22/56 main() { numero=5; if (numero>3) printf("el numero es %d ", numero); En este programa: #include "stdio.h" : es una directiva del preprocesador. /* este programa es muy simple */ : es un comentario. int, main, if : son palabras reservadas. numero, printf son identificadores. ; ( ) >, " { son símbolos. "El numero es %d ", 5 y 3 son literales. El formato en que se deben describir los distintos componentes de un programa en C es bastante libre, y se rige por las siguientes reglas: No se pueden pegar palabras (no es correcto escribir "intnumero"). No se pueden partir palabras (no es correcto "ma in"). Se diferencian las mayúsculas de las minúsculas (numero es distinto de Numero). El número de espacios en blanco entre palabras (1 o más) o símbolos (0 o más) no importa. El formato de las líneas es libre, se puede escribir el mismo programa en una sola línea o en varias, siempre que no dividamos una palabra o un literal en dos partes. El ejemplo siguiente muestra dos formas equivalentes de escribir una sentencia de C. if (numero>3) printf("el numero es %d ", numero); es lo mismo que if (numero>3) printf("el numero es %d ", numero); Cada sentencia (no cada línea) finaliza con un punto y coma (generalmente).

23 Programación 23/56 Cualquier identificador (variable, constante o función) que usemos en el programa debe ser definido antes de ser utilizado. El compilador traduce el programa leyéndolo de arriba a abajo y da un error si encuentra que se utiliza algo que no ha sido definido previamente. A continuación veremos más en detalle cada uno de los componentes que pueden aparecer en un programa C. 6.1 Directivas del preprocesador El preprocesador de C es un programa que se ejecuta automáticamente con el compilador y que realiza ciertas modificaciones sobre el código fuente. El compilador actuará sobre el código fuente modificado. Algunas de estas modificaciones son automáticas, mientras que otras pueden ser indicadas por el usuario sobre el programa antes de que se compile. Las modificaciones a realizar se indican por una directiva del preprocesador, que comienza por el símbolo #. Algunas de las directivas existentes son: #define #if #line #elif #ifdef #pragma #else #ifndef #undef #error #include Las directivas #include y #define son las que se utilizan con más frecuencia, por lo que se describirán a continuación La directiva #include Esta directiva hace que el código fuente contenido en un fichero se lea de disco y se compile como si estuviese dentro del programa que se está compilando. El formato de esta directiva es: # include "fichero" o #include <fichero> Cuando se utilizan los caracteres < >, el preprocesador busca el fichero a incluir en un directorio o directorios definidos en la instalación del compilador (generalmente, un directorio llamado INCLUDE). Cuando se utilizan los caracteres " ", se busca el fichero

24 Programación 24/56 primero en el directorio actual (desde el que se utiliza el compilador), y después en dichos directorios. Esta directiva funciona del siguiente modo. Supongamos que tenemos un fichero de programa (prueba.c) y un fichero con definiciones adicionales (cosas.h) a incluir en el mismo. Cuando el preprocesador encuentra el #include "cosas" lo elimina, incluye las líneas de cosas.h el fichero prueba.c y después compila el fichero modificado. El preprocesador no modifica realmente el fichero en disco, sino que hace todo el trabajo en memoria o en una copia temporal del fichero, que borra después de la compilación. Todo este proceso se realiza de forma automática al compilar el programa, sin requerirse la intervención del programador. Veamos un ejemplo: /* *ejemplo4_3.c */ #include "cosas.h" float Area; main() { Area=Pi*radio*radio; printf ("Area: %f", Area); el programa a incluir será: cosas.h float Pi=3.1416; int radio=5; El programa que genera el preprocesador y que será compilado por el compilador es: float Pi=3.1416; int radio=5; float Area; main() { Area=Pi*radio*radio; printf ("Area: %f", Area); Los archivos que se incluyen suelen ser fragmentos de programa con definiciones de tipos, variables o funciones, para utilizarlos en el programa principal. Se denominan archivos de

Tema 4: Introducción a la programación I

Tema 4: Introducción a la programación I Tema 4: Introducción a la programación I Objetivos del tema: Una vez visto los fundamentos de un computador y conociendo cuáles son los pasos a seguir para solucionar un problema del mundo real mediante

Más detalles

Preliminares. Tipos de variables y Expresiones

Preliminares. Tipos de variables y Expresiones Preliminares. Tipos de variables y Expresiones Felipe Osorio Instituto de Estadística Pontificia Universidad Católica de Valparaíso Marzo 5, 2015 1 / 20 Preliminares Computadoras desarrollan tareas a un

Más detalles

Introduccion al Lenguaje C. Omar Andrés Zapata Mesa Grupo de Fenomenología de Interacciones Fundamentales, (Gfif) Universidad de Antioquia

Introduccion al Lenguaje C. Omar Andrés Zapata Mesa Grupo de Fenomenología de Interacciones Fundamentales, (Gfif) Universidad de Antioquia Introduccion al Lenguaje C Omar Andrés Zapata Mesa Grupo de Fenomenología de Interacciones Fundamentales, (Gfif) Universidad de Antioquia Introducción C es un lenguaje de programación creado en 1972 por

Más detalles

TEMA 5. CONTROL DE FLUJO DEL PROGRAMA. Sentencia Instrucción Expresión Operadores + Operandos Sintaxis: Sentencia ;

TEMA 5. CONTROL DE FLUJO DEL PROGRAMA. Sentencia Instrucción Expresión Operadores + Operandos Sintaxis: Sentencia ; TEMA 5. CONTROL DE FLUJO DEL PROGRAMA 5.1 Sentencias Una sentencia es una expresión seguida de un punto y coma. Sentencia Instrucción Expresión Operadores + Operandos Sintaxis: Sentencia ; El ; es obligatorio

Más detalles

Universidad de Pamplona Materia: Programación 1 Docente: Ing. Lusbin Raúl Vargas LENGUAJE C ESTRUCTURA DE UN PROGRAMA EN C

Universidad de Pamplona Materia: Programación 1 Docente: Ing. Lusbin Raúl Vargas LENGUAJE C ESTRUCTURA DE UN PROGRAMA EN C Universidad de Pamplona Materia: Programación 1 Docente: Ing. Lusbin Raúl Vargas LENGUAJE C ESTRUCTURA DE UN PROGRAMA EN C Directivas del procesador Main() { Declaraciones Definiciones proposiciones }

Más detalles

Elementos léxicos del lenguaje de programación Java

Elementos léxicos del lenguaje de programación Java Elementos léxicos del lenguaje de programación Java Elementos léxicos del lenguaje de programación Java Palabras reservadas Identificadores Literales Operadores Delimitadores Comentarios Apéndices Operadores

Más detalles

Aprendiendo a programar Microcontroladores PIC en Lenguaje C con CCS

Aprendiendo a programar Microcontroladores PIC en Lenguaje C con CCS Aprendiendo a programar Microcontroladores PIC en Lenguaje C con CCS Por Andrés Raúl Bruno Saravia Entrega Nº 5. Cómo declaramos una variable en Lenguaje C? En C siempre se deben declarar las variables.

Más detalles

Modulo 1 El lenguaje Java

Modulo 1 El lenguaje Java Modulo 1 El lenguaje Java 13 - Codificación en Java Una de las grandes diferencias entre Java y Pascal en cuando a la codificación es que Java se trata de un lenguaje de los llamados case sensitive Esto

Más detalles

Tema 2 : Códigos Binarios

Tema 2 : Códigos Binarios Tema 2 : Códigos Binarios Objetivo: Conocer diferentes códigos binarios Conocer algunos códigos de detección y corrección de errores. Códigos alfanuméricos 1 Códigos Binarios A la representación de cifras,

Más detalles

En cualquier caso, tampoco es demasiado importante el significado de la "B", si es que lo tiene, lo interesante realmente es el algoritmo.

En cualquier caso, tampoco es demasiado importante el significado de la B, si es que lo tiene, lo interesante realmente es el algoritmo. Arboles-B Características Los árboles-b son árboles de búsqueda. La "B" probablemente se debe a que el algoritmo fue desarrollado por "Rudolf Bayer" y "Eduard M. McCreight", que trabajan para la empresa

Más detalles

!!!!!!!! !!!!! Práctica!4.! Programación!básica!en!C.! ! Grado!en!Ingeniería!!en!Electrónica!y!Automática!Industrial! ! Curso!2015H2016!

!!!!!!!! !!!!! Práctica!4.! Programación!básica!en!C.! ! Grado!en!Ingeniería!!en!Electrónica!y!Automática!Industrial! ! Curso!2015H2016! INFORMÁTICA Práctica4. ProgramaciónbásicaenC. GradoenIngenieríaenElectrónicayAutomáticaIndustrial Curso2015H2016 v2.1(18.09.2015) A continuación figuran una serie de ejercicios propuestos, agrupados por

Más detalles

Introducción al tipo de dato ARRAY

Introducción al tipo de dato ARRAY CONTENIDOS. Introducción al tipo de dato ARRAY. Definición, Características, Declaración, Acceso e Inicialización.. Arrays multidimensionales Definición, Declaración, Acceso e Inicialización. Introducción

Más detalles

Introducción a la Programación 11 O. Humberto Cervantes Maceda

Introducción a la Programación 11 O. Humberto Cervantes Maceda Introducción a la Programación 11 O Humberto Cervantes Maceda Recordando En la sesión anterior vimos que la información almacenada en la memoria, y por lo tanto aquella que procesa la unidad central de

Más detalles

Tema 5 Sentencias de control de flujo. Fundamentos de Informática

Tema 5 Sentencias de control de flujo. Fundamentos de Informática Tema 5 Fundamentos de Informática Sentencias de Control Tipos de sentencias de control: Comprobación lógica para bifurcar el flujo de un programa. Sentencias de control condicional o alternativo Comprobación

Más detalles

INFORMÁTICA. Práctica 5. Programación en C. Grado en Ingeniería en Electrónica y Automática Industrial. Curso 2013-2014. v1.0 (05.03.

INFORMÁTICA. Práctica 5. Programación en C. Grado en Ingeniería en Electrónica y Automática Industrial. Curso 2013-2014. v1.0 (05.03. INFORMÁTICA Práctica 5. Programación en C. Grado en Ingeniería en Electrónica y Automática Industrial Curso 2013-2014 v1.0 (05.03.14) A continuación figuran una serie de ejercicios propuestos, agrupados

Más detalles

Lenguaje C. Tipos de Datos Simples y Estructuras de Control

Lenguaje C. Tipos de Datos Simples y Estructuras de Control Lenguaje C Tipos de Datos Simples y Estructuras de Control Lenguaje C C es un lenguaje de programación creado en 1972 por Dennis M. Ritchie en los Laboratorios Bell como evolución del anterior lenguaje

Más detalles

CONCEPTOS BASICOS DEL LENGUAJE JAVA

CONCEPTOS BASICOS DEL LENGUAJE JAVA CONCEPTOS BASICOS DEL LENGUAJE JAVA NOMENCLATURA GENERAL En Java se distinguen las letras mayúsculas y minúsculas. Las reglas del lenguaje respecto a los nombres de variables son muy amplias y permiten

Más detalles

RESUMEN DE CONCEPTOS BASICOS DE PROGRAMACION JAVA

RESUMEN DE CONCEPTOS BASICOS DE PROGRAMACION JAVA UNED Centro Asociado de Cádiz RESUMEN DE CONCEPTOS BASICOS DE PROGRAMACION JAVA 1. OBJETOS Cualquier elemento del programa es un objeto. Un programa es un conjunto de objetos que se comunican entre sí

Más detalles

SISTEMAS DE NUMERACIÓN. Sistema decimal

SISTEMAS DE NUMERACIÓN. Sistema decimal SISTEMAS DE NUMERACIÓN Sistema decimal Desde antiguo el Hombre ha ideado sistemas para numerar objetos, algunos sistemas primitivos han llegado hasta nuestros días, tal es el caso de los "números romanos",

Más detalles

UNIDAD 2 Configuración y operación de un sistema de cómputo Representación de datos Conceptos El concepto de bit (abreviatura de binary digit) es fundamental para el almacenamiento de datos Puede representarse

Más detalles

Apuntes de ACCESS. Apuntes de Access. Campos de Búsqueda:

Apuntes de ACCESS. Apuntes de Access. Campos de Búsqueda: Apuntes de ACCESS Campos de Búsqueda: Los campos de búsqueda permiten seleccionar el valor de un campo de una lista desplegable en lugar de tener que escribirlos. El usuario sólo tiene que elegir un valor

Más detalles

Se guardan en archivos con extencion c y los cabezales con extension h

Se guardan en archivos con extencion c y los cabezales con extension h Se guardan en archivos con extencion c y los cabezales con extension h Tipos de Variables: Tipo Tamaño(bytes) Limite inferior Limite superior char 1 -- -- unsigned char 1 0 255 short int 2-32768 +32767

Más detalles

Una variable de clase escalar tiene un nivel de indirección igual a 1. Por ejemplo, las variables i, b y x definidas como se muestra a continuación.

Una variable de clase escalar tiene un nivel de indirección igual a 1. Por ejemplo, las variables i, b y x definidas como se muestra a continuación. Descripción de la semántica de ALFA En esta descripción sólo se mencionarán los aspectos en los que el lenguaje de programación ALFA pueda diferir de otros lenguajes de programación de alto nivel. Se sobreentienden

Más detalles

LENGUAJE. Tema 1 - Introducción

LENGUAJE. Tema 1 - Introducción LENGUAJE Tema 1 - Introducción HISTORIA DEL LENGUAJE C El lenguaje de programación C fue creado por Dennis Ritchie cuando trabajaba en Bell Laboratories de AT&T junto con Ken Thompson en el diseño del

Más detalles

Capítulo 1: Sistemas de representación numérica Introducción. Dpto. de ATC, Universidad de Sevilla - Página 1 de 8

Capítulo 1: Sistemas de representación numérica Introducción. Dpto. de ATC, Universidad de Sevilla - Página 1 de 8 Dpto. de ATC, Universidad de Sevilla - Página de Capítulo : INTRODUCCIÓN SISTEMAS DE REPRESENTACIÓN NUMÉRICA Introducción Bases de numeración Sistema decimal Sistema binario Sistema hexadecimal REPRESENTACIÓN

Más detalles

Unidad de trabajo 2: INFORMÁTICA BÁSICA (primera parte)

Unidad de trabajo 2: INFORMÁTICA BÁSICA (primera parte) Unidad de trabajo 2: INFORMÁTICA BÁSICA (primera parte) Unidad de trabajo 2: INFORMÁTICA BÁSICA... 1 1. Representación interna de datos.... 1 1.2. Sistemas de numeración.... 2 1.3. Aritmética binaria...

Más detalles

Centro de Capacitación en Informática

Centro de Capacitación en Informática Fórmulas y Funciones Las fórmulas constituyen el núcleo de cualquier hoja de cálculo, y por tanto de Excel. Mediante fórmulas, se llevan a cabo todos los cálculos que se necesitan en una hoja de cálculo.

Más detalles

by Tim Tran: https://picasaweb.google.com/lh/photo/sdo00o8wa-czfov3nd0eoa?full-exif=true

by Tim Tran: https://picasaweb.google.com/lh/photo/sdo00o8wa-czfov3nd0eoa?full-exif=true by Tim Tran: https://picasaweb.google.com/lh/photo/sdo00o8wa-czfov3nd0eoa?full-exif=true I. FUNDAMENTOS 3. Representación de la información Introducción a la Informática Curso de Acceso a la Universidad

Más detalles

Curso PHP Módulo 1 R-Luis

Curso PHP Módulo 1 R-Luis Lenguaje PHP Introducción Archivos HTML y PHP: Crear un archivo php es tan sencillo como cambiarle la extensión a un archivo html, por ejemplo podemos pasar de index.html a index.php sin ningún inconveniente.

Más detalles

Informática I. While & do While

Informática I. While & do While Asignatura: Informática I Trabajo práctico Nº5 While & do While Estructura repetitiva MIENTRAS o while En C la sentencia while (condición o expresión) instrucciones; es seguramente la más utilizada. La

Más detalles

ARREGLOS DEFINICION GENERAL DE ARREGLO

ARREGLOS DEFINICION GENERAL DE ARREGLO ARREGLOS DEFINICION GENERAL DE ARREGLO Conjunto de cantidades o valores homogéneos, que por su naturaleza se comportan de idéntica forma y deben de ser tratados en forma similar. Se les debe de dar un

Más detalles

Unidad I. 1.1 Sistemas numéricos (Binario, Octal, Decimal, Hexadecimal)

Unidad I. 1.1 Sistemas numéricos (Binario, Octal, Decimal, Hexadecimal) Unidad I Sistemas numéricos 1.1 Sistemas numéricos (Binario, Octal, Decimal, Hexadecimal) Los computadores manipulan y almacenan los datos usando interruptores electrónicos que están ENCENDIDOS o APAGADOS.

Más detalles

Ejemplos de conversión de reales a enteros

Ejemplos de conversión de reales a enteros Ejemplos de conversión de reales a enteros Con el siguiente programa se pueden apreciar las diferencias entre las cuatro funciones para convertir de reales a enteros: program convertir_real_a_entero print

Más detalles

Objetivos de la práctica: - Practicar uso de ficheros: abrir, cerrar y tratamiento de información contenida en el fichero.

Objetivos de la práctica: - Practicar uso de ficheros: abrir, cerrar y tratamiento de información contenida en el fichero. Objetivos de la práctica: - Practicar uso de ficheros: abrir, cerrar y tratamiento de información contenida en el fichero. Uso de Ficheros Todas las estructuras de datos vistas hasta ahora utilizan la

Más detalles

SOLUCION EXAMEN junio 2006

SOLUCION EXAMEN junio 2006 SOLUCION EXAMEN junio 2006 1. Explique razonadamente si las siguientes afirmaciones son verdaderas o falsas: I) (1 p) En UNIX únicamente se distinguen dos tipos de procesos: los procesos de usuario y los

Más detalles

En la actualidad ASCII es un código de 8 bits, también conocido como ASCII extendido, que aumenta su capacidad con 128 caracteres adicionales

En la actualidad ASCII es un código de 8 bits, también conocido como ASCII extendido, que aumenta su capacidad con 128 caracteres adicionales Definición(1) Sistemas numéricos MIA José Rafael Rojano Cáceres Arquitectura de Computadoras I Un sistema de representación numérica es un sistema de lenguaje que consiste en: un conjunto ordenado de símbolos

Más detalles

Capítulo 12: Indexación y asociación

Capítulo 12: Indexación y asociación Capítulo 12: Indexación y asociación Conceptos básicos Índices ordenados Archivos de índice de árbol B+ Archivos de índice de árbol B Asociación estática Asociación dinámica Comparación entre indexación

Más detalles

LABORATORIO Nº 2 GUÍA PARA REALIZAR FORMULAS EN EXCEL

LABORATORIO Nº 2 GUÍA PARA REALIZAR FORMULAS EN EXCEL OBJETIVO Mejorar el nivel de comprensión y el manejo de las destrezas del estudiante para utilizar formulas en Microsoft Excel 2010. 1) DEFINICIÓN Una fórmula de Excel es un código especial que introducimos

Más detalles

1 Estructura básica de un programa C++

1 Estructura básica de un programa C++ Elementos básicos de un lenguaje de alto nivel: C++ CONTENIDOS 1. Estructura básica de un programa C++. 2. Tipos de datos simples. 3. Constantes y variables en C++. Declaración. 4. Operadores y expresiones.

Más detalles

TABLA DE DECISION. Consideremos la siguiente tabla, expresada en forma genérica, como ejemplo y establezcamos la manera en que debe leerse.

TABLA DE DECISION. Consideremos la siguiente tabla, expresada en forma genérica, como ejemplo y establezcamos la manera en que debe leerse. TABLA DE DECISION La tabla de decisión es una herramienta que sintetiza procesos en los cuales se dan un conjunto de condiciones y un conjunto de acciones a tomar según el valor que toman las condiciones.

Más detalles

Sistemas de numeración, operaciones y códigos.

Sistemas de numeración, operaciones y códigos. Tema : Sistemas de numeración, operaciones y códigos. Para representar ideas, los seres humanos (al menos los occidentales) utilizamos cadenas de símbolos alfanuméricos de un alfabeto definido. En el mundo

Más detalles

1. SISTEMAS DIGITALES

1. SISTEMAS DIGITALES 1. SISTEMAS DIGITALES DOCENTE: ING. LUIS FELIPE CASTELLANOS CASTELLANOS CORREO ELECTRÓNICO: FELIPECASTELLANOS2@HOTMAIL.COM FELIPECASTELLANOS2@GMAIL.COM PAGINA WEB MAESTROFELIPE.JIMDO.COM 1.1. INTRODUCCIÓN

Más detalles

Arrays y Cadenas en C

Arrays y Cadenas en C Arrays y Cadenas en C Los arrays son variables estructuradas, donde cada elemento se almacena de forma consecutiva en memoria. Las cadenas de caracteres son declaradas en C como arrays de caracteres y

Más detalles

Tecnologías en la Educación Matemática. Expresiones. Datos. Expresiones Aritméticas. Expresiones Aritméticas 19/08/2014

Tecnologías en la Educación Matemática. Expresiones. Datos. Expresiones Aritméticas. Expresiones Aritméticas 19/08/2014 Tecnologías en la Educación Matemática jac@cs.uns.edu.ar Dpto. de Ciencias e Ingeniería de la Computación UNIVERSIDAD NACIONAL DEL SUR 1 Datos Los algoritmos combinan datos con acciones. Los datos de entrada

Más detalles

2.1.- EJEMPLO DE UN PROGRAMA FORTRAN

2.1.- EJEMPLO DE UN PROGRAMA FORTRAN 2.1.- EJEMPLO DE UN PROGRAMA FORTRAN Con el presente apartado comenzaremos a conocer cómo se escribe un programa en lenguaje FORTRAN bajo el entorno de programación FORTRAN. En primer lugar conozcamos

Más detalles

Tema 3 Elementos básicos de programación

Tema 3 Elementos básicos de programación Representación de Datos y Aplicaciones Tema 3 Elementos básicos de programación Natividad Martínez Madrid nati@it.uc3m.es Objetivos del tema 3 Conocer la estructura básica de un programa Java Comprender

Más detalles

ESTRUCTURA DE DATOS: ARREGLOS

ESTRUCTURA DE DATOS: ARREGLOS ESTRUCTURA DE DATOS: ARREGLOS 1. Introduccion 2. Arreglos - Concepto - Caracteristicas 3. Arreglos Unidimensionales 4. Arreglos Bidimensionales 5. Ventajas del uso de arreglos 6. Ejemplo 1. Introducción

Más detalles

Introducción a la programación orientada a objetos

Introducción a la programación orientada a objetos Introducción a la programación orientada a objetos 1. Introducción a la programación orientada a objetos 2. Las clases 3. El tipo Struct 4. Diferencias entre Class y Struct 5. Pilares de la Programación

Más detalles

Tutorial Básico de vbscript

Tutorial Básico de vbscript Tutorial Básico de vbscript Bueno, primero aclarar que este tutorial, pretende explicar de manera básica las distintas instrucciones aplicadas en visual basic script (vbs de aquí en más), para que así

Más detalles

1 ELEMENTOS BASICOS DEL LENGUAJE

1 ELEMENTOS BASICOS DEL LENGUAJE 1 ELEMENTOS SICOS DEL LENGUJE Contenido: Variables su declaracion y asignacion Caracteres en java Secuencias de escape y comentarios Tipos de datos Operadores aritméticos, relacionales y lógicos Entrada

Más detalles

Representación de la Información

Representación de la Información Representar: Expresar una información como una combinación de símbolos de un determinado lenguaje. Trece -> símbolos 1 y 3 Interpretar: Obtener la información originalmente representada a partir de una

Más detalles

Creación de Funciones de Conducción

Creación de Funciones de Conducción Creación de Funciones de Conducción Requerimientos Para el desarrollo de esta actividad se requiere que: Contemos con un robot BoeBot armado con placa Arduino. Repetición En estos momentos habremos notado

Más detalles

Tema 2. El lenguaje de programación Java (Parte 1)

Tema 2. El lenguaje de programación Java (Parte 1) Programación en Java Tema 2. El lenguaje de programación Java (Parte 1) Luis Rodríguez Baena Facultad de Informática Elementos del lenguaje (I) El juego de caracteres. No utiliza ASCII, sino Unicode de

Más detalles

CAPÍTULO IV BREVE DESCRIPCIÓN DE LA INFRAESTRUCTURA DE CÓMPUTO VISUAL BASIC 6.0 PARA WINDOWS

CAPÍTULO IV BREVE DESCRIPCIÓN DE LA INFRAESTRUCTURA DE CÓMPUTO VISUAL BASIC 6.0 PARA WINDOWS CAPÍTULO IV BREVE DESCRIPCIÓN DE LA INFRAESTRUCTURA DE CÓMPUTO VISUAL BASIC 6.0 PARA WINDOWS 4.1 Antecedentes históricos El lenguaje de programación BASIC (Beginner's All purpose Symbolic Instruction Code)

Más detalles

INTRODUCCION A LA PROGRAMACION DE PLC

INTRODUCCION A LA PROGRAMACION DE PLC INTRODUCCION A LA PROGRAMACION DE PLC Esta guía se utilizará para estudiar la estructura general de programación de um PLC Instrucciones y Programas Una instrucción u orden de trabajo consta de dos partes

Más detalles

1. Informática e información. 2. Sistemas de numeración. 3. Sistema binario, operaciones aritméticas en binario, 4. Sistemas octal y hexadecimal. 5.

1. Informática e información. 2. Sistemas de numeración. 3. Sistema binario, operaciones aritméticas en binario, 4. Sistemas octal y hexadecimal. 5. Representación de la información Contenidos 1. Informática e información. 2. Sistemas de numeración. 3. Sistema binario, operaciones aritméticas en binario, 4. Sistemas octal y hexadecimal. 5. Conversiones

Más detalles

Contenido. Capítulo 1. Introducción a lenguaje C 1

Contenido. Capítulo 1. Introducción a lenguaje C 1 Contenido Capítulo 1. Introducción a lenguaje C 1 Introducción... 2 Qué es un lenguaje de programación?... 2 Tipos de lenguajes de programación... 2 Introducción a lenguaje C... 2 Historia de lenguaje

Más detalles

Capítulo 4 Procesos con estructuras de repetición

Capítulo 4 Procesos con estructuras de repetición Estructura de contador Capítulo 4 Procesos con estructuras de repetición Esta es una operación que incrementa en una unidad el valor almacenado en la variable c, cada vez que el flujo del diagrama pasa

Más detalles

Introducción a PHP. * No es necesario declarar previamente las variables.

Introducción a PHP. * No es necesario declarar previamente las variables. Introducción a PHP La programación de sitios web cada día está más orientada al desarrollo de páginas dinámicas y aplicaciones, o sea sitios donde el usuario pueda interactuar con la web. Dentro de los

Más detalles

Comenzando con MATLAB

Comenzando con MATLAB ÁLGEBRA LINEAL INGENIERÍA INFORMÁTICA Curso 08/09 PRÁCTICA 1 Comenzando con MATLAB 1 Funcionamiento de Matlab MATLAB es un sistema interactivo basado en matrices para cálculos científicos y de ingeniería.

Más detalles

TIPOS DE VARIABLES EN PHP. DECLARACIÓN Y ASIGNACIÓN. LA INSTRUCCIÓN ECHO PARA INSERTAR TEXTO O CÓDIGO. (CU00816B)

TIPOS DE VARIABLES EN PHP. DECLARACIÓN Y ASIGNACIÓN. LA INSTRUCCIÓN ECHO PARA INSERTAR TEXTO O CÓDIGO. (CU00816B) APRENDERAPROGRAMAR.COM TIPOS DE VARIABLES EN PHP. DECLARACIÓN Y ASIGNACIÓN. LA INSTRUCCIÓN ECHO PARA INSERTAR TEXTO O CÓDIGO. (CU00816B) Sección: Cursos Categoría: Tutorial básico del programador web:

Más detalles

8. Sentencia return y métodos

8. Sentencia return y métodos 92 A. García-Beltrán y J.M. Arranz 8. Sentencia return y métodos Objetivos: a) Describir el funcionamiento de la sentencia return b) Interpretar el resultado de una sentencia return en el código fuente

Más detalles

GENERACIÓN DE CÓDIGO

GENERACIÓN DE CÓDIGO GENERACIÓN DE CÓDIGO INTRODUCCION La generación de código es la fase más compleja de un compilador, puesto que no sólo depende de las características del lenguaje fuente sino también de contar con información

Más detalles

Roberto Quejido Cañamero

Roberto Quejido Cañamero Crear un documento de texto con todas las preguntas y respuestas del tema. Tiene que aparecer en él todos los contenidos del tema. 1. Explica qué son los modos de presentación en Writer, cuáles hay y cómo

Más detalles

TEMA 2 WINDOWS XP Lección 4 BLOC DE NOTAS

TEMA 2 WINDOWS XP Lección 4 BLOC DE NOTAS TEMA 2 WINDOWS XP Lección 4 BLOC DE NOTAS 1) EL PEQUEÑO EDITOR El Bloc de notas de Windows XP es un básico editor de texto con el que podemos escribir anotaciones, de hasta 1024 caracteres por línea y

Más detalles

TEMA 2: Representación de la Información en las computadoras

TEMA 2: Representación de la Información en las computadoras TEMA 2: Representación de la Información en las computadoras Introducción Una computadora es una máquina que procesa información y ejecuta programas. Para que la computadora ejecute un programa, es necesario

Más detalles

TRADUCTORES, COMPILADORES E INTÉRPRETES. EJERCICIOS TEMA 5, 6, 7 y 8.

TRADUCTORES, COMPILADORES E INTÉRPRETES. EJERCICIOS TEMA 5, 6, 7 y 8. TRADUCTORES, COMPILADORES E INTÉRPRETES. EJERCICIOS TEMA 5, 6, 7 y 8. 1.) (HOLUB). Escribir un traductor que reconozca definiciones de C siguiendo el estilo antiguo, tal como: prueba(uno, dos, tres, cuatro,

Más detalles

Los sistemas de numeración se clasifican en: posicionales y no posicionales.

Los sistemas de numeración se clasifican en: posicionales y no posicionales. SISTEMAS NUMERICOS Un sistema numérico es un conjunto de números que se relacionan para expresar la relación existente entre la cantidad y la unidad. Debido a que un número es un símbolo, podemos encontrar

Más detalles

PHP y MySQL. Indice: Switch Bucles For While do...while

PHP y MySQL. Indice: Switch Bucles For While do...while PHP y MySQL Indice: Switch Bucles For While do...while Switch switch...case es otra opción para trabajar con condiciones. Y suplanta al if, cuando lo único que se quiere hacer es comparar si son iguales

Más detalles

Sistemas de numeración

Sistemas de numeración Sistemas de numeración Un sistema de numeración es un conjunto de símbolos y reglas que permiten representar datos numéricos. Los sistemas de numeración actuales son sistemas posicionales, que se caracterizan

Más detalles

Tema 7: Programación con Matlab

Tema 7: Programación con Matlab Tema 7: Programación con Matlab 1. Introducción Matlab puede utilizarse como un lenguaje de programación que incluye todos los elementos necesarios. Añade la gran ventaja de poder incorporar a los programas

Más detalles

Estructuras de Datos y Algoritmos Tecnólogo en Informática

Estructuras de Datos y Algoritmos Tecnólogo en Informática Estructuras de Datos y Algoritmos Tecnólogo en Informática INSTRUCTIVO DEL COMANDO MAKE ESTRUCTURAS DE DATOS Y ALGORITMOS - TECNÓLOGO EN INFORMÁTICA 1 Contenido Introducción... 3 El archivo makefile...

Más detalles

SIIGO Pyme. Templates. Cartilla I

SIIGO Pyme. Templates. Cartilla I SIIGO Pyme Templates Cartilla I Tabla de Contenido 1. Presentación 2. Qué es un Template? 3. Qué Aspectos se Deben Tener en Cuenta Antes de Diseñar o Modificar un Template? 4. Cuáles son las Formas que

Más detalles

Objetivo: Introducción conceptual y aplicación básica de los lenguajes del lado del servidor.

Objetivo: Introducción conceptual y aplicación básica de los lenguajes del lado del servidor. Sesión 03: Lenguajes web del servidor Competencias a Conseguir: - Conocer el entorno de trabajo a nivel de servidores web. - Instalación del localhost (Servidor Local). - Repaso general de PHP y ejercicios

Más detalles

LECCIÓN 8: CIRCUITOS Y ALGORITMOS DE MULTIPLICACIÓN DE ENTEROS

LECCIÓN 8: CIRCUITOS Y ALGORITMOS DE MULTIPLICACIÓN DE ENTEROS ESTRUCTURA DE COMPUTADORES Pag. 8.1 LECCIÓN 8: CIRCUITOS Y ALGORITMOS DE MULTIPLICACIÓN DE ENTEROS 1. Circuitos de multiplicación La operación de multiplicar es mas compleja que la suma y por tanto se

Más detalles

Tema 2. La Información y su representación

Tema 2. La Información y su representación Tema 2. La Información y su representación 2.1 Introducción. Un ordenador es una máquina que procesa información. La ejecución de un programa implica la realización de unos tratamientos, según especifica

Más detalles

GENERACIÓN DE TRANSFERENCIAS

GENERACIÓN DE TRANSFERENCIAS GENERACIÓN DE TRANSFERENCIAS 1 INFORMACIÓN BÁSICA La aplicación de generación de ficheros de transferencias permite generar fácilmente órdenes para que la Caja efectúe transferencias, creando una base

Más detalles

DESARROLLO DE HABILIDADES DEL PENSAMIENTO LÓGICO

DESARROLLO DE HABILIDADES DEL PENSAMIENTO LÓGICO I. SISTEMAS NUMÉRICOS DESARROLLO DE HABILIDADES DEL PENSAMIENTO LÓGICO LIC. LEYDY ROXANA ZEPEDA RUIZ SEPTIEMBRE DICIEMBRE 2011 Ocosingo, Chis. 1.1Sistemas numéricos. Los números son los mismos en todos

Más detalles

Bases de datos en Excel

Bases de datos en Excel Universidad Complutense de Madrid CURSOS DE FORMACIÓN EN INFORMÁTICA Bases de datos en Excel Hojas de cálculo Tema 5 Bases de datos en Excel Hasta ahora hemos usado Excel básicamente para realizar cálculos

Más detalles

Sistemas de Numeración Operaciones - Códigos

Sistemas de Numeración Operaciones - Códigos Sistemas de Numeración Operaciones - Códigos Tema 2 1. Sistema decimal 2. Sistema binario 3. Sistema hexadecimal 4. Sistema octal 5. Conversión decimal binario 6. Aritmética binaria 7. Complemento a la

Más detalles

Algoritmos y Diagramas de Flujo 2

Algoritmos y Diagramas de Flujo 2 Algoritmos y Diagramas de Flujo 2 Programación Java NetBeans 7.0 RPC Contenido 2.1 Algoritmo...1 Fase de creación de un algoritmo...1 Herramientas de un algoritmo...2 2.2 Diagrama de Flujo...2 Símbolos

Más detalles

TEMA 3: EL LENGUAJE C: PRESENTACIÓN

TEMA 3: EL LENGUAJE C: PRESENTACIÓN TEMA 3: EL LENGUAJE C: PRESENTACIÓN Historia del lenguaje C Características del lenguaje C Estructura de un programa en C El editor de textos: elementos Funciones: de usuario y de librería Librerías de

Más detalles

Identificadores, palabras reservadas, tipos de datos, operadores aritméticos y el sistema estándar de salida en Java

Identificadores, palabras reservadas, tipos de datos, operadores aritméticos y el sistema estándar de salida en Java Identificadores, palabras reservadas, tipos de datos, operadores aritméticos y el sistema estándar de salida en Java Identificadores Las variables se utilizan en programación para almacenar temporalmente

Más detalles

INSTITUTO POLITECNICO NACIONAL. ESCUELA SUPEIRIOR DE INGENIERIA MECANICA Y ELECTRICA. UNIDAD CULHUACAN. INTEGRANTES: FLORES ACOLTZI ONESIMO

INSTITUTO POLITECNICO NACIONAL. ESCUELA SUPEIRIOR DE INGENIERIA MECANICA Y ELECTRICA. UNIDAD CULHUACAN. INTEGRANTES: FLORES ACOLTZI ONESIMO INSTITUTO POLITECNICO NACIONAL. ESCUELA SUPEIRIOR DE INGENIERIA MECANICA Y ELECTRICA. UNIDAD CULHUACAN. INTEGRANTES: FLORES ACOLTZI ONESIMO MARCEL SANTOS ARIEL MARTINEZ AGUILAR GILBERTO. MATERIA: ESTRUCTURA

Más detalles

2_trabajar con calc I

2_trabajar con calc I Al igual que en las Tablas vistas en el procesador de texto, la interseccción de una columna y una fila se denomina Celda. Dentro de una celda, podemos encontrar diferentes tipos de datos: textos, números,

Más detalles

TEMA 8: ESTRUCTURAS DE DATOS COMPLEJAS 1 VECTORES ESTÁTICOS 2 2 CADENAS O VECTORES DE CARACTERES 6 3 PASO DE CADENAS Y ARRAYS A FUNCIONES 8

TEMA 8: ESTRUCTURAS DE DATOS COMPLEJAS 1 VECTORES ESTÁTICOS 2 2 CADENAS O VECTORES DE CARACTERES 6 3 PASO DE CADENAS Y ARRAYS A FUNCIONES 8 TEMA 8: ESTRUCTURAS DE DATOS COMPLEJAS 1 VECTORES ESTÁTICOS 2 1.1 VECTORES O ARRAYS UNIDIMENSIONALES 2 1.2 ARRAYS MULTIDIMENSIONALES 3 1.3 INICIALIZACIÓN DE ARRAYS 4 1.3.1 INICIALIZACIÓN DE ARRAYS SIN

Más detalles

Análisis de los datos

Análisis de los datos Universidad Complutense de Madrid CURSOS DE FORMACIÓN EN INFORMÁTICA Análisis de los datos Hojas de cálculo Tema 6 Análisis de los datos Una de las capacidades más interesantes de Excel es la actualización

Más detalles

La ventana de Microsoft Excel

La ventana de Microsoft Excel Actividad N 1 Conceptos básicos de Planilla de Cálculo La ventana del Microsoft Excel y sus partes. Movimiento del cursor. Tipos de datos. Metodología de trabajo con planillas. La ventana de Microsoft

Más detalles

Mi primer proyecto en Dev-C++

Mi primer proyecto en Dev-C++ Mi primer proyecto en Dev-C++ Para realizar esta actividad deberás disponer de un ordenador en el que esté instalado el Dev-C++. Debes ir realizando cada uno de los pasos indicados, en el mismo orden en

Más detalles

Práctica 2: Simón dice

Práctica 2: Simón dice Práctica 2: Simón dice Fecha de entrega: 31 de enero de 2016 0.- Descripción del juego (Wikipedia.org) Simon dice es un juego electrónico, creado por Ralph Baer, que consiste en reproducir una secuencia

Más detalles

UNIDADES DE ALMACENAMIENTO DE DATOS

UNIDADES DE ALMACENAMIENTO DE DATOS 1.2 MATÉMATICAS DE REDES 1.2.1 REPRESENTACIÓN BINARIA DE DATOS Los computadores manipulan y almacenan los datos usando interruptores electrónicos que están ENCENDIDOS o APAGADOS. Los computadores sólo

Más detalles

El sistema decimal, es aquél en el que se combinan 10 cifras (o dígitos) del 0 al 9 para indicar una cantidad específica.

El sistema decimal, es aquél en el que se combinan 10 cifras (o dígitos) del 0 al 9 para indicar una cantidad específica. 5.2 SISTEMAS DE NUMERACIÓN. DECIMAL El sistema decimal, es aquél en el que se combinan 10 cifras (o dígitos) del 0 al 9 para indicar una cantidad específica. La base de un sistema indica el número de caracteres

Más detalles

Tema 2 Conceptos básicos de programación. Fundamentos de Informática

Tema 2 Conceptos básicos de programación. Fundamentos de Informática Tema 2 Conceptos básicos de programación Fundamentos de Informática Índice Metodología de la programación Programación estructurada 2 Pasos a seguir para el desarrollo de un programa (fases): Análisis

Más detalles

3.2 Operaciones aritmético-lógicas en Pascal

3.2 Operaciones aritmético-lógicas en Pascal 3.2 Operaciones aritmético-lógicas en Pascal Operadores Los operadores sirven para combinar los términos de las expresiones. En Pascal, se manejan tres grupos de operadores : 1. ARITMÉTICOS 2. RELACIONALES

Más detalles

Capítulo 9. Archivos de sintaxis

Capítulo 9. Archivos de sintaxis Capítulo 9 Archivos de sintaxis El SPSS permite generar y editar archivos de texto con sintaxis SPSS, es decir, archivos de texto con instrucciones de programación en un lenguaje propio del SPSS. Esta

Más detalles

Para leer la entrada de consola, lo primero que se hace es construir un Scanner que este asociado al flujo de entrada estándar System.

Para leer la entrada de consola, lo primero que se hace es construir un Scanner que este asociado al flujo de entrada estándar System. CICLO: 01/2010 Universidad Don Bosco Materia: Lenguaje de Programación III Contenido: 1-Lectura de Datos de entrada. 2-Introduccion a JOPTIONPANE. 3-Estructuras de Control. ->LECTURA DE DATOS DE ENTRADA

Más detalles

Diseño de algoritmos

Diseño de algoritmos Diseño de algoritmos Jose Jesus García Rueda. Adaptado de El algoritmo, una iniciación a la programación (http://www.desarrolloweb.com/manuales/67/ http://www.desarrolloweb.com/manuales/67/) ) y de Diseño

Más detalles

Operación Microsoft Access 97

Operación Microsoft Access 97 Trabajar con Controles Características de los controles Un control es un objeto gráfico, como por ejemplo un cuadro de texto, un botón de comando o un rectángulo que se coloca en un formulario o informe

Más detalles

TEMA 1: SISTEMAS INFORMÁTICOS. Parte 2: representación de la información

TEMA 1: SISTEMAS INFORMÁTICOS. Parte 2: representación de la información TEMA 1: SISTEMAS INFORMÁTICOS Parte 2: representación de la información Qué vamos a ver? Cómo se representa y almacena la información en un ordenador Cómo podemos relacionar la información que entendemos

Más detalles

Estructuras de Control - Diagrama de Flujo

Estructuras de Control - Diagrama de Flujo RESOLUCIÓN DE PROBLEMAS Y ALGORITMOS Ingeniería en Computación Ingeniería en Informática UNIVERSIDAD NACIONAL DE SAN LUIS DEPARTAMENTO DE INFORMÁTICA AÑO 2015 Índice 1. Programación estructurada 2 1.1.

Más detalles