CURSO de C++ Ignacio López
|
|
|
- Gerardo Crespo Acosta
- hace 9 años
- Vistas:
Transcripción
1 CURSO de C++ Ignacio López
2 Introducción al lenguaje C++ Visión General Objetivos del Curso C++ Conceptos básicos de la programación orientada a objetos (OOP)
3 Visión General I Curso de C++ Introducción al lenguaje C++ Conceptos básicos de C++ Conceptos avanzados de C++ Librerías C++ Integración Rational Rose y C++ Mesa redonda
4 Visión General II Curso programación por eventos : Interfaz de Usuario Curso Persistencia de objetos: Gestión de Archivos y Bases de datos Curso Sistemas operativos: Windows 2000, Unix, Linux Curso: Concurrencia y Sistemas distribuidos (Java, Internet) Curso Reusabilidad y portabilidad: Creación de componentes (Bibliotecario): OCXs, DLLs, etc.
5 Visión General III Normalización de Herramientas SW y Sistemas operativos Normalización de Documentación, Metodología y Calidad de SW
6 Conceptos básicos de la programación orientada a objetos (OOP) Abstracción Encapsulación Herencia Polimorfismo OOP y C++
7 Mejoras de C++ respecto a C (I) Programa principal Comentarios Entrada y salida Uso de Streams para entrada y salida Formateo Redireccionamiento de entrada/salida Posición en el programa para declarar variables El operador de ambito (scope) :: para uso de variables globales El cualificador Const El tipo enumeración
8 Programa principal Función especial que es el punto de entrada de un programa No se puede invocar Si al final se quiere enviar un codigo de vuelta al proceso padre (sistema operativo) definirla la vuelta del tipo int y usar return: int main (int argcount, char * arg[ ) { return o; } Si no se quiere enviar código de vuelta usar void y exit, si es necesario. void main (int argcount, char * arg[ ) { exit; } No hay que definir prototipo de función Tipos de main: Tipo Consola (MSDOS, UNIX): #include <stdio.h> void main (int argcount, char * arg[ ) { printf (" Hola mundo!\n"); } Tipo Ventana (MS Windows, etc.)
9 Comentarios Tipo C++: comienzo //, terminación: final de linea // esto es un comentario Tipo C: Comienzo /*, terminacion */ Puenen incluir varias lineas No son anidables Puede incluir varios comentarios tipo C++ Ejemplos: /* esto es un comentario en una linea */ /* esto es un comentario en varias lineas // con comentarios tipo C++ */
10 Entrada/Salida Operador de salida << : argumento1s << argumento2. Escribe argumento2 en argumento1s. Operador de entrada >>: argumento1e >> argumento2. Lee argumento2 en argumento1e. operador1s: cout : dispositivo estandar de salida operador1s: cin : dispositivo estandar de entrada operador2: constante o variable de tipo estandad (char, int, float, ) Estos operadores y sus dispositivos están definidos en la directiva: #include <iostream.h> Ventajas No nesesitan formato (%s, %d, ), respecto a: printf ("%s%d%f\n" snombre, iedad, faltura); scanf ("%s%d%f\n" snombre, &iedad, &faltura);
11 Ejemplo entrada /salida #include <iostream.h> void main () { char nombre[30 ; int iedad; float faltura; cout << "Entrar nombre edad y altura (separador blanco)\n"; cin >> nombre >> iedad >> faltura; cout << nombre << inum1 << fnum2 << "\n"; }
12 Posición en el programa para declarar variables En C: En el comienzo del módulo y/o comienzo de funciones En C++: Casi en cualquier lugar; y antes de referenciarla Ej.: en el mismo instante del uso de la variable. Ejemplos: for (int i=0; i<100; i++) valido if (int i == 0) inválido
13 El operador :: de ámbito (scope) En C: una variable local tiene precedencia a una global En C++: lo anterior se puede cambiar anteponiendo :: a la variable global (no a una variable local de un anidamiento superior) Ejemplo: int icantidad =123; // variable global void main () { int icantidad = 456; // variable local cout << :: icantidad; // imprime la variable global cout << icantidad; // imprime la variable local }
14 El cualificador const Convierte variables en constantes, es decir, especifica que la variable es de solo lectura, excepto cuando se inicializa. Constante tipo C: #define PI Constante C++: const int PI = ; Constante de variable tipo predefinido: const float fvalor = 5.2; Constante puntero: const char *ptr = mibuffer; Parámetro Constante en función: int f1 (cont int ix) Constante en vuelta función: int f1 (int ix) const Ventaja de const respecto a #define es que a ellas puede acceder con un debugger simbólico.
15 El tipo enumeración (enum) Define un tipo del usuario y declara un conjunto de constantes literales. Definición del tipo color en c/c++: Enum Color {rojo, verde, azul}; Uso del tipo color en C: enum Color csombrero; // se usa enum Uso del tipo color en C++: Color csombrero; // no se usa enum Los valores enteros por defecto asignados al tipo son: 0, 1, 2, Los valores enteros se pueden asignar e incluso repetir: Ej.: enum Color (rojo =1, verde, azul =1); // da los valores 1, 2, 1 respectivamente.
16 Mejoras de C++ respecto a C (II) Prototipos de funciones Funciones Viejo estilo declaracion parámetros no permitido Declaración obligatoria de prototipos de funciones Argumentos de función por defecto Funciones inline Sobrecarga de funciones Asignación de memoria Operador new Operador delete Formas de pasar parámetros (valor, *referencia, &puntero) Especificaciones para el montador (combinar módulos C y C++)
17 Prototipos de funciones (chequeo de tipos) Un prototipo de función es su declaración -signatura-: valor de vuelta nombre (modificador tipo argumento variable,...) Ej.: int suma (int a, int b); No se permite la decharación al vieje estilo: int suma ( a, b) int a,b; { } En la cabecera del módulo en el que se implementa o invoca a la función, obligatoriamente tiene que incluirse su declaración (.h) para que el compilador chequee los tipos.
18 Argumentos por defecto en funciones Una función declarada como: void funcion1 (int i=5, double d = 1.23); Se puede invocar de todas estas maneras: funcion1 (13, 2.7); // reescribe los valores por defecto funcion1 (4); // pasa 4, y el valor por defecto 1.23 funcion1 (); // pasa valores defecto 5, 1.23 funcion1 (, 2.7) // error, no se pueden omitir los parámetros anteriores
19 Funciones inline El cualificador inline colocado al comienzo de la declaración de una función, indica al compilador que coloque una copia de la función, en los lugares que esta se invoque. Se usa solo cuando las funciones son pequeñas o se llaman en pocos sitios. Son equivalentes a las macros, pero sin efectos laterales, ya que se realiza la comprobación de tipos. Ejemplo: Declaración: inline int getedad ( ); Definición: inline int getedad ( ) {return persona1.edad; } Invocación: iedadpepe = getedad();
20 Sobrecarga de funciones (operadores) Sobrecarga significa un mismo nombre puede tener diversos significados. La ambigüedad se resuelve por el contexto Dos funciones que tienen el mismo nombre, pueden tener: los mismos parámetros (número y tipo): Ej.: rectan.pintar (); circu.pintar (); distintos parámetros (número y tipo): Ej.: xx.pintar (); yy.pintar (vv); no pueden tener distinto valor de vuelta Dos funciones que tienen el mismo nombre, pueden realizar: la misma tarea (con iguales o distintos parámetros) generalmente tareas distintas (con iguales o distintos parámetros).
21 Operadores new y delete Es una alternativa a malloc para asignar (new) o desasignar (delete) memoria a variables y objetos. Sintaxis: puntero a variable u objeto = new tipo; // crea una variable de tipo entero. delete [ puntero a variable u objeto; // borra objeto, [ solo para matrices new devuelve un puntero al objeto si asignó memoria al objeto, en caso contrario devuelve 0 (en C++ el puntero nulo tiene valor 0 en lugar de NULL). Ej.: int * ptricontador = new int; char *ptrcar = new char [10 ; ptrffecha = new Date (24, 3, 1999); Ej.: delete ptricontador; delete [ ptrcar; delete ptrsfecha; Delete no borra el puntero, borra el dato al que apunta el puntero. Delete solo se puede utilizar para objetos creados con new Solo se puede borrar un objeto con delete una sola vez Se puede aplicar delete al puntero nulo, sin problemas
22 Función: Paso de parámetros Por valor: Declaración: void f1 (Estructipox xvar); Invocación : f1 (xvar1); Acceso: con.; xvar1. comp1 Semantica: se copia la variable en el stack y de alli la obtiene la funcion. Si se modifica en la función no se refleja el cambio en el origen. Uso: con tipos básicos. No eficiente con tipos complejos. Por puntero: Declaración: void f1 (const Estructipox *xvar); Invocación: f1 (&xvar1); Acceso: con ->; xvar1-> comp1 Semántica: La funcion obtiene la direccion de la variable. Si se modifica en la función se refleja el cambio en el origen. El puntero permanece cosntante. Uso: con tipos complejos (estructuras, arrays,...) y parametro modificable. Por referencia:( significado de &: Referencia si hay un tipo delante de &; direccion de variable en otro caso) Declaración: void f1 (const Estructipox &xvar); Invocación: f1 (xvar); Acceso: con.; xvar1. comp1 Semántica: se copia la variable en el stack y de alli la obtiene la funcion. La funcion recibe un alias a la copia de la variable. Si se modifica en la función no se refleja el cambio en el origen. Simplicidad por el acceso con punto. Uso: con tipos complejos y parametros no modificables.
23 Función: Vuelta de valores Por valor Por puntero Por referencia Declaración: int & f1 () {return ivar;} Invocación: i = f1 (); f1() = i; Vuelta del parámetro implícito this con funciones no estáticas miembro de clases.
24 Otros conceptos Macros y Constantes globales estilo C Macros y Constantes globales estilo C++ Directivas del Preprocesador Declaraciones, definiciones y referencias Tipos Variables y Objetos Inicialización Clases de almacenamiento Visibilidad
25 Macros y Constantes globales estilo C Definición: Macros: Identificadores que representas sentencias o expresiones Constantes simbólicas: Identificadores que representan constantes Las macros y las constantes simbólicas se definen con la directiva: #define identificadormacro cuerpomacro El identificador no puede contener el carácter. Ejemplo: #define PI Invocación: Identificadores de macros en un programa se reemplaza por el cuerpo de la macro Ejemplo: a= 34*PI; Macros predefinidas: FILE : Macro que hace referencia el nombre del archivo fuente. Se expande en una cadena que es el nombre del archivo entre comillas. (ej.: "fecha.h") Macro que es todo el archivo: (con define e identificador de la macro) Ej.: #define xx Macro de registro que es todo el archivo: Cuando se genera una clase C++ con MS Developer Studio, usando el menú: Insert/New class, aparece una macro: #define AFX_FECHA_H 10A52523_EC21_11D2_BC66_ INCLUDED_ Macro que representa el registro del archivo FECHA.H para el registro de Windows. El cuerpo de la macro es todo el contenido del archivo.
26 Macros y Constantes globales estilo C++ C++ admite las Macros y Constantes globales estilo C En C++ las macros, se suelen sustituir por funciones inline. Sobre las funciones inline, se realiza el chequeo de los tipos de parámetros, cosa que no ocurre con las macros, y por tanto no se producen efectos laterales indeseados. Ejemplo: #define Max (a,b) ( if (a>b) return a; return b;) // Max como macro en C inline int Max (a,b){ if (a>b) return a; return b;} // Max como funcion inline en C++ Las constantes no se definen con la directiva define, sino con const. Ejemplo: #define PI // constante del número pi en C; const int PI = ;
27 Directivas del preprocesador: #if, #else, #endif (para compilación condicional) #ifdef, #ifndef (para definición condicional) #define, #undef (define o anula definición macro) #pragma token (soporte caracteristicas especificas del host) #include nombrearchivo (incluye archivo) #line nlinea, "nombrearchivo" (cambio nº linea y archivo) #error token (para terminar compilación)
28 #If, #endif #ifdef identificador o if defined identificador #idndef identificador o #if!defined identificador #end if El identificador puede ser una macro. Ej.: FILE_H El identificador se puede pasar con la opción /D del compilador Ej.: cl /Dtest fecha.ccp
29 #Define #if!defined #define identificador cadena_de_tokens #endif //!defined Cuando no existe cadena de tokens, como ocurre en este caso, se anulan las ocurrencias del identificador, en el archivo fuente (fecha.cpp) Ejemplos: #if!defined ( EXAMPLE_H) #define EXAMPLE_H Class Example { }; #endif //!defined ( Example_H) #if!defined(afx_fecha_h 10A52523_EC21_11D2_BC66_ INCLUDED_) #define AFX_FECHA_H 10A52523_EC21_11D2_BC66_ INCLUDED_ declaracion de la clase #endif //!defined(afx_fecha_h 10A52523_EC21_11D2_BC66_ INCLUDED_) Esto se hace para incluir un solo archivo fecha.h en fecha.cpp
30 #Pragma Directiva para indicar al compilador, caracteristicas especificas de la máquina. #pragma once, especifica que el archivo actual(fecha.h) se incluira solo una vez. Esto conviene ponerlo en todos los archivos.h Ejemplo: #if _MSC_VER >= 1000 #pragma once #endif // _MSC_VER >= 1000
31 #Include Incluye el archivo archivo indicado. Si el nombre está entre < >, lo busca en el include del sistema. Si el nombre está entre " " lo busca en el directorio de trabajo. Ejemplo: #include <iostream.h> #include "fecha.h"
32 Declarativas en.h Cuando se genera una clase C++ (ej.: Fecha) con MS Developer Studio, usando el menú: Insert/New class, aparece al comienzo y al final del archivo.h generado: // lo que sigue se traduce en "fecha.h" con el número de registro de Windows indicado. #if!defined(afx_fecha_h 588B7D25_0306_11D3_BC68_ INCLUDED_) #define AFX_FECHA_H 588B7D25_0306_11D3_BC68_ INCLUDED_ #if _MSC_VER >= 1000 #pragma once #endif // _MSC_VER >= 1000 // Declaración de la clase // lo que sigue es el final de la declaracion de AFX_FECHA_H #endif //!defined(afx_fecha_h 588B7D25_0306_11D3_BC68_ INCLUDED_)
33 Declaraciones, definiciones y referencias Declaración: Indica al compilador que un elemento del programa o un nombre existe. Pueden existir varias veces en un programa. Signatura de una funcion: int f1 ( float x); referencias externas: extern int i; Definición: Especifica al compilador que el código o el dato, que el nombre describe, existe. Solo existen una vez en un programa. Objeto, variable, funcion, clase o enumerador. Implantación de la función o definicion de su cuerpo: int f1 ( float x) { } Declaraciones y definiciones simultáneas: int i; int j = 10; enumeracion y clases con implantacion de funciones Referencias (uso): expresiones : x = y; invocación de funciones: y = f1 (x);
34 Tipos Fundamentales (con o sin signo: (char, short, int, long); con signo: (float, double, long double)) Derivados: Simples: array [], funciones (), punteros *, referencia a objetos &, constantes const, punteros a miembros de una clase (., -> ::*,.*, ->*) Redefinidos: Nombres de tipos (typedef) ej: typedef unsigned char BYTE; Enumeración (enum) Ej.: enum Color {rojo, verde, azul}; Compuestos: Estructuras (struct) Ej.: struct miestru {int ivar; char chvar;}; Uniones (union): Ej.: union miunion {int ivar; char chvar;}; Clases (class):ej.: class Punto {public: Punto(); private: int x;};
35 Variables y objetos Una variable es una instancia de un tipo clásico. Ej.: int ix; Un objeto es una instancia de una clase. Un objeto se puede crear/destruir: Con los constructores/destructores de la clase Con los operadores new/delete
36 Inicialización Las variables se inicializan en las declaraciones: Ej.: int ix = 5; char chnombre [ = {"pepe"}; Los objetos se inicializan al crearlos con los constructores de la clase: Ej.: Persona pepe (Lopez, Jose, 24);
37 Acceso a miembros de clases Nombre del objeto: Acceso por. Ej.: spepe.edad; pepe.visualizad(); Puntero al objeto: Acceso por -> Ej.: ptrpepe->edad; ptrpepe->visualizad();
38 Consideraciones varias Cuando se borra un objeto puntero, no se pone a cero su puntero. Si se crean varios objetos con new y se asignan al mismo puntero, ya no es posible acceder al anterior. Ej.: Persona *ptramigo = new (Persona ("pepe"); Persona *ptramigo = new (Persona ("juan"); ptramigo = ptramigo.persona ("luis");
39 Clases de almacenamiento (Vida) (tipos, variables, objetos y funciones) Automático (automatic) Estático (static) Registro (register) Externo (external)
40 Visibilidad (scope) (tipos, variables, objetos y funciones) Local a un bloque Visibilidad en archivo o módulo Visibilidad en función Visibilidad en la clase Visibilidad en prototipo de función
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
Tema: Arreglos de Objetos en C++.
Programación II. Guía 5 1 Facultad: Ingeniería Escuela: Computación Asignatura: Programación II Tema: Arreglos de Objetos en C++. Objetivos Específicos Describir la implementación de arreglos de Objetos.
Tema: Sobrecarga de Operadores.
Programación II. Guía 7 1 Facultad: Ingeniería Escuela: Computación Asignatura: Programación II Tema: Sobrecarga de Operadores. Objetivos Describir como redefinir (sobrecargar) operadores para que funcionen
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
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
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
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í
LENGUAJE ANSI C Guía de referencia
Apéndice W2 LENGUAJE ANSI C Guía de referencia C.1. Elementos básicos de un programa El lenguaje C fue desarrollado en Bell laboratories para su uso en investigación y se caracteriza por un gran número
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
INTRODUCCIÓN AL TIPO COMPUESTO CADENA CONTENIDOS
CONTENIDOS 1. Introducción a las cadenas 2. Definición 3. Declaración de cadenas 4. Inicialización de cadenas 5. Escritura y Lectura de datos tipo cadena 6. Funciones de manipulación de cadenas 7. Arrays
Contenidos. Funciones (suplemento) Funciones. Justificación del uso de Funciones
Contenidos 1. Justificación del uso de funciones. 2. Declaración de funciones: prototipos. 3. Prototipos y ficheros de cabecera. 4. Polimorfismo (sobrecarga de funciones). 5. Argumentos formales y actuales.
Tema 3: Herencia en C++ Programación Orientada a Objetos Curso 2008/2009 Begoña Moros Valle
Tema 3: Herencia en C++ Programación Orientada a Objetos Curso 2008/2009 Begoña Moros Valle Contenido Tipos de herencia Herencia y niveles de visibilidad Herencia y creación Redefinición de métodos Conversión
INSTITUTO TECNOLOGICO de la laguna Programación Orientada a Objetos en C++
5.- Herencia Múltiple. Un hecho natural es que una persona tenga más de un pariente mayor, esta situación también se puede dar en la herencia de clases, naturalmente este tipo de herencia involucra un
El lenguaje de Programación C. Fernando J. Pereda <[email protected]>
El lenguaje de Programación C Fernando J. Pereda Por qué aprender C? Portable y muy extendido Estándar (C89, C99) El lenguaje de los sistemas Un lenguaje fácil (no, no es broma) Por
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
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
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
Programación Orientada a Objetos con Java
Programación Orientada a Objetos con Java M.C. Jorge Eduardo Ibarra Esquer [email protected] Sobrecarga de métodos Java permite la definición de dos o más métodos que tengan el mismo nombre, dentro de la
Capítulo 6. Introducción a la POO
Capítulo 6. Introducción a la POO 6. 1. Clases, Objetos y Métodos Definición La Programación Orientada a Objetos (POO) es una forma especial de programar, más cercana a cómo expresaríamos las cosas en
Contenidos. Gestión dinámica de memoria. Gestión dinámica de memoria. Introducción. 1. Introducción 2. El operador NEW 3. El operador DELETE
Contenidos 1. Introducción 2. El operador NEW 3. El operador DELETE 1 Introducción Hasta ahora hemos visto que cada vez que queremos usar una variable debemos reservarle un lugar de la memoria al comenzar
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
11. Algunas clases estándar de Java (II)
122 A. García-Beltrán y J.M. Arranz 11. Algunas clases estándar de Java (II) Objetivos: a) Presentar la clase predefinida en Java para trabajar con arrays b) Interpretar el código fuente de una aplicación
TIPOS DE DATOS DEFINIDOS POR EL PROGRAMADOR: Estructuras CONTENIDOS
ESTRUCTURAS CONTENIDOS 1. Concepto de estructura 2. Definición del tipo de dato estructura 3. Declaración de variables de tipo estructura 4. Inicialización de variables de tipo estructura 5. Acceso a los
El lenguaje C. #define MAX LINEA 1000 /* maximo tamanio de linea de entrada */
Principios de Programación El lenguaje C 1. Variables locales y globales 1.1. Variables locales Las funciones permiten al programador modularizar un programa. Todas las variables declaradas en las definiciones
Tema 2. Memoria Dinámica. 2.1 Datos estáticos y dinámicos
Tema 2 Memoria Dinámica 2.1 Datos estáticos y dinámicos Datos estáticos: su tamaño y forma es constante durante la ejecución de un programa y por tanto se determinan en tiempo de compilación. El ejemplo
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
Capítulo 6. Asociaciones y Declaraciones.
Capítulo 6. Asociaciones y Declaraciones. Lenguajes de Programación Carlos Ureña Almagro Curso 2011-12 Contents 1 Asociaciones, entornos y ámbitos 2 2 Declaraciones y definiciones 6 3 Definiciones de valores,
Prof. Dr. Paul Bustamante
Prácticas de C++ Practica Nº 5 Informática II Fundamentos de Programación Prof. Dr. Paul Bustamante Practica Nº 5 Programación en C++ Pág. 1 ÍNDICE ÍNDICE... 1 1. Introducción... 1 1.1 Ejercicio 1: Mi
7. Manejo de Archivos en C.
7. Manejo de Archivos en C. Los datos que hemos tratado hasta el momento han residido en la memoria principal. Sin embargo, las grandes cantidades de datos se almacenan normalmente en un dispositivo de
Java Inicial (20 horas)
Java Inicial (20 horas) 1 Temario 1. Programación Orientada a Objetos 2. Introducción y Sintaxis Java 3. Sentencias Control Flujo 4. POO en Java 5. Relaciones entre Objetos 6. Polimorfismo, abstracción
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.
Objetos y Clases en Java. ELO-329: Diseño y Programación Orientados a Objetos
Objetos y Clases en Java ELO-329: Diseño y Programación Orientados a Objetos 1 Creación de objetos nuevos Se usa el constructor de la clase MiClase a = new MiClase(); Todos los objetos son creados en el
15. Parámetros o argumentos
Programación orientada a objetos con Java 161 15. Parámetros o argumentos Objetivos: a) Profundizar en el concepto de parámetro de una clase e indicar su mecanismo de funcionamiento. b) Interpretar el
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
Programación Avanzada para Sistemas de Telecomunicación. Objetos y clases. J.C. Cruellas. Objetos y clases
Programación Avanzada para Sistemas de Telecomunicación Objetos y clases Juan Carlos Cruellas [email protected] Objetos y clases Concepto de objeto. Concepto de clase. Clases, objetos y programas. Clases
Objetos y Clases en Java. ELO 329: Diseño y Programación Orientados a Objetos
Objetos y Clases en Java ELO 329: Diseño y Programación Orientados a Objetos 1 Elementos de Análisis y Diseño orientado a objetos Notación y relaciones entre clases: Las clases son abstracciones para los
2. Estructura de un programa en Java
24 A. García-Beltrán y J.M. Arranz 2. Estructura de un programa en Java Objetivos: a) Describir la estructura del código fuente de una aplicación Java b) Presentar los conceptos de comentario y de identificador
Programación orientada a objetos
Repaso Programación orientada a objetos Curso INEM. Programación en Java Santiago Muelas Pascual [email protected]! Clase! Objeto! Atributo o variable de instancia! Método! Instanciar/crear un objeto!
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 }
Tema 6. Reutilización de código. Programación 2015-2016. Programación - Tema 6: Reutilización de código
Tema 6 Reutilización de código Programación 2015-2016 Programación - Tema 6: Reutilización de código 1 Tema 6. Reutilización de código Modularidad. Implementación de métodos. Uso de métodos. Programación
Introducción a la Programación Orientada a Objetos
Introducción a la Programación Orientada a Objetos El paradigma imperativo. En un programa se tienen una serie de variables con las cuales operamos y modificamos mediante sentencias y funciones para producir
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
Introducción al Dev-C++
Introducción al Dev-C++ El Entorno de Desarrollo Dev-C++ http://www.bloodshed.net/devcpp.html Incluye todas las operaciones necesarias para crear o modificar un programa. Posee un editor, un compilador
Punteros. Definición Un puntero es un dato que contiene una dirección de memoria.
Punteros Definición Un puntero es un dato que contiene una dirección de memoria. NOTA: Existe una dirección especial que se representa por medio de la constante NULL (definida en ) y se emplea
Un puntero no es más que una variable estática cuyo contenido es una dirección de memoria.
Los punteros en C 1 Introducción Cómo se organiza la memoria asociada a un programa? Como una colección de posiciones de memoria consecutivas. En ellas se almacenan los distintos tipos de datos, que ocupan,
2.1. Introducción al lenguaje Java
Bloque II. Elementos del lenguaje de programación Java 1.Introducción a los lenguajes de programación 2. Estructura de un programa 3. Datos y expresiones simples 4. Instrucciones de control 5. Entrada/salida
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.
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
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
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
ISTP CIDET COMPUTACION E INFORMATICA ARREGLOS EN JAVA
ARREGLOS EN JAVA I I N T R O D U C C I Ó N En las sesiones anteriores, los datos manejados en los programas han sido datos simples (carácter, entero, reales) En un gran número de problemas es necesario
Compiladores e Intérpretes Proyecto N 1 Sintaxis de MiniJava Segundo Cuatrimestre de 2015
Departamento de Cs. e Ingeniería de la Computación Universidad Nacional del Sur Compiladores e Intérpretes Proyecto N 1 Sintaxis de MiniJava Segundo Cuatrimestre de 2015 1. Introducción Este documento
El lenguaje C: Elementos básicos del lenguaje
Facultad de Ciencias Exactas, Ingeniería y Agrimensura Departamento de Sistemas e Informática Escuela de Electrónica Informática II El lenguaje C: Elementos básicos del lenguaje Este material debe utilizarse
Fundamentos de la Programación
Fundamentos de la Programación El Software Las operaciones que debe realizar el hardware son especificadas con una lista de instrucciones, llamadas programas o software. Dos grandes grupos de software
Objetivo de aprendizaje del tema
Computación II Tema 3. Identificadores, palabras clave y tipos de datos Objetivo de aprendizaje del tema Al finalizar el tema serás capaz de: Distinguir i entre modificadores d válidos y no válidos. Enumerar
INDICE DEL CURSO APRENDER PROGRAMACIÓN JAVA DESDE CERO. PROGRAMACIÓN ORIENTADA A OBJETOS (CU00601B)
APRENDERAPROGRAMAR.COM INDICE DEL CURSO APRENDER PROGRAMACIÓN JAVA DESDE CERO. PROGRAMACIÓN ORIENTADA A OBJETOS (CU00601B) Sección: Cursos Categoría: Curso Aprender programación Java desde cero Fecha revisión:
UNIVERSIDAD DR. JOSE MATIAS DELGADO
NOMBRE DE LA ASIGNATURA: PROGRAMACION DE COMPUTADORAS 1 a. Generalidades. Duración del Ciclo en Semanas: Número de Orden: 16 Código: PRC1 16 Ciclo Académico: Duración/Hora Clase: 50 III minutos Prerrequisito
Objetivos. El alumno conocerá los elementos indispensables de un ambiente de programación y será capaz de realizar programas básicos en lenguaje C.
Objetivos El alumno conocerá los elementos indispensables de un ambiente de programación y será capaz de realizar programas básicos en lenguaje C. Al final de esta práctica el alumno podrá: 1. Decir cuáles
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
www.aprendoencasa.com Curso Introducción JAVA Pág.: 1
www.aprendoencasa.com Curso Introducción JAVA Pág.: 1 Introducción Java es un lenguaje basado en la programación orientada a objetos (POO), este tipo de programación va más allá del tipo de programación
Programación básica C++
Programación en Lenguaje C++ Programación básica C++ 6.3.1 Declaración de variables Introducción 6 Las variables sirven para identificar un determinado valor. Es importante tener en cuenta, que una variable
9. Objetos y clases. 9.1. Clases
Programación orientada a objetos con Java 103 9. Objetos y clases Objetivos: a) Presentar el concepto de objeto, clase, atributo, método e instancia b) Interpretar el código fuente de una aplicación Java
VARIABLES, CONSTANTES Y EXPRESIONES ASIGNACIÓN. TIPOS ELEMENTALES. PRECEDENCIA DE LOS ESTRUCTURAS DE CONTROL. CONDICIONAL E
Java Java es un lenguaje de programación presentado en 1995 enfocado a: soportar los fundamentos de la programación orientada a objetos. generar código independiente de la arquitectura de la computadora
INSTITUTO POLITÉCNICO NACIONAL ESCUELA SUPERIOR DE INGENIERÍA MECÁNICA Y ELÉCTRICA UNIDAD CULHUACÁN INTEGRANTES
INSTITUTO POLITÉCNICO NACIONAL ESCUELA SUPERIOR DE INGENIERÍA MECÁNICA Y ELÉCTRICA UNIDAD CULHUACÁN INTEGRANTES CÁRDENAS ESPINOSA CÉSAR OCTAVIO [email protected] Boleta: 2009350122 CASTILLO GUTIÉRREZ
Prof. Dr. Paul Bustamante
Prácticas de C++ Practica Nº 8 Informática II Fundamentos de Programación Prof. Dr. Paul Bustamante ÍNDICE ÍNDICE... 1 1. INTRODUCCIÓN... 1 1.1 EJERCICIO 1: HERENCIA Y POLIMORFISMO I... 1 1.2 EJERCICIO
Tema 9. Vectores y Matrices
Tema 9. Vectores y Matrices OBJETIVO En temas anteriores hemos declarado variables simples de tipo int, float, o de cualquier otro tipo simple. A menudo necesitaremos declarar una colección de variables,
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
10. Algunas clases estándar de Java (I)
Programación orientada a objetos con Java 113 10. Algunas clases estándar de Java (I) Objetivos: a) Presentar algunas de las clases predefinidas en Java b) Interpretar el código fuente de una aplicación
Examen Junio- Grupo A Lunes 17 de Junio - Programación en C++ Pág. 1
Examen Junio- Grupo A Lunes 17 de Junio - Programación en C++ Pág. 1 ÍNDICE ÍNDICE... 1 1.1 Ejercicio 1: Máquina Expendedora (3.5 ptos.)... 1 1.2 Ejercicio 2: Clase Circulo (1.0 pto.)... 3 1.3 Ejercicio
PROGRAMACIÓN N C++ CONSTRUCTORES PROG.C++ L11 CONSTRUCTORES DEL LENGUAJE
L11 CONSTRUCTORES DEL LENGUAJE CLASES class { } PLANTILLAS template { } ESPACIOS DE NOMBRES namespace { } EXCEPCIONES try catch.. SOBRECARGA DE OPERADORES operator (parametros) BIBLIOTECA
Introducción Programar es enseñar Iniciación a la programación Finalidad de este libro
Introducción Programar es enseñar Iniciación a la programación Finalidad de este libro 1. Aplicaciones de la programación Paco y sus inmensas hojas de cálculo Irene siente la llamada de Internet El genio
Clases y Objetos. Informática II Ingeniería Electrónica
Clases y Objetos Informática II Ingeniería Electrónica Los Tipos de Datos Hasta ahora, en un programa podemos usar para representar variables a: Tipos fundamentales : enteros (int), caracteres (char),
Tecnólogo Informático- Estructuras de Datos y Algoritmos- 2009
Árboles Ejemplos de estructuras arborescentes: con forma de árbol Regla de Alcance: los objetos visibles en un procedimiento son aquellos declarados en él mismo o en cualquier ancestro de él (cualquier
UNIVERSIDAD DE SEVILLA PRÁCTICAS DE LABORATORIO ANÁLISIS SINTÁCTICO (1) LENGUAJES FORMALES Y AUTÓMATAS CURSO 2006/2007
UNIVERSIDAD DE SEVILLA E. T. S. INGENIERÍA INFORMÁTICA LENGUAJES Y SISTEMAS INFORMÁTICOS PRÁCTICAS DE LABORATORIO ANÁLISIS SINTÁCTICO (1) LENGUAJES FORMALES Y AUTÓMATAS CURSO 2006/2007 Qué es el análisis
Introducción al lenguaje de programación java
Introducción al lenguaje de programación java Algoritmia y Programación Slide 1 LENGUAJES DE PROGRAMACION Un lenguaje de programación es un idioma artificial diseñado y creado para expresar algoritmos
Arreglos. // Incluir E/S y Librerías Standard #include <stdlib.h> #include <stdio.h>
Arreglos Introducción. En los temas anteriores se han estudiado los diferentes tipos de datos simples de C++, usados para representar valores simples como enteros, reales o caracteres. Sin embargo, en
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
JavaScript. Contenidos. Introducción El lenguaje Validación de formularios. Programación en Internet 2005-2006. DLSI - Universidad de Alicante 1
Departamento de Lenguajes y Sistemas Informáticos JavaScript Programación en Internet Curso 2005-2006 Contenidos Introducción El lenguaje Validación de formularios DLSI - Universidad de Alicante 1 Introducción
Programación: QBASIC
1. QBASIC Programación: QBASIC Guía del alumno Qbasic es una versión moderna del lenguaje BASIC. Se trata de un lenguaje de alto nivel. En un lenguaje de alto nivel las instrucciones tienen un formato
Programación Avanzada para Sistemas de Telecomunicación Arrays
Programación Avanzada para Sistemas de Telecomunicación Arrays Juan Carlos Cruellas [email protected] Objetos y clases Introducción. Vectores de datos primitivos. Vectores de objetos. Introducción En
Pseudolenguaje. (1 byte) 0.. 255 (valores códigos ASCII) [CHAR_MIN.. CHAR_MAX] (Definida en <limits.h>) No hay. Dominio 0.. 2 n 1 [MIN(C)..
Tipo C Dominio 0.. 2 n -1 [MIN(C).. MAX(C)] Operadores Aritméticos Otras funciones No hay CHR(...) CAP(...) ORD(...) E/S No Formateada: Leer (...) Escribir (...) char (1 byte) 0.. 255 (valores códigos
Curso de Java POO: Programación orientada a objetos
Curso de Java POO: Programación orientada a objetos Luis Guerra Velasco Curso INEM 02830. Programación en Java Marzo 2010 Índice 1 Introducción a la POO 2 Herencia y polimorfismo 3 Empaquetado de proyectos
Resumen Lenguaje Java
Resumen Lenguaje Java Métodos (Subprogramas) Tipos de Métodos: con resultado y tipo void Definición 1. Método con resultado, retorna un solo valor, equivalente a los subprogramas tipo función tipo_de_dato_a_retornar
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
Tema 2. El lenguaje de programación Java. Arrays y cadenas
Programación en Java Tema 2. El lenguaje de programación Java. Arrays y cadenas Luis Rodríguez Baena Facultad de Informática Arrays y colecciones Hay dos formas de guardar varias referencias a objetos:
Curso 0 de Informática
Curso 0 de Informática 2015-2016 Tema 1: Introducción a la Informática y Conceptos básicos 1 Motivación (I): En los procesos industriales, cada vez es mayor el uso de sistemas informáticos para: Monitorización,
Introducción al lenguaje JAVA
Universidad Autónoma de Tlaxcala Introducción al lenguaje JAVA M.C.. José Juan Hernández ndez Mora Segunda Sesión 1. Arreglos 2. Matrices 3. Clases en Java 4. Clases de Usuario en Java 5. Objetos definidos
1. Manejo de memoria estática 2. Manejo de memoria dinámica
1. Manejo de memoria estática 2. Manejo de memoria dinámica *La administración de memoria de una computadora es una tarea fundamental debido a que la cantidad de memoria es limitada. *El sistema operativo
Práctica 3 mtp. metodoloxía e tecnoloxía da programación. Presentar detalles básicos sobre la sintaxis del lenguaje de programación Java.
Práctica 3 mtp metodoloxía e tecnoloxía da programación Objetivos: Duración: Presentar detalles básicos sobre la sintaxis del lenguaje de programación Java. 1 semana 1.- Identificadores Los identificadores
Capítulo 4. Vectores y matrices. 4.1 Declaración de tablas. 4.2 Declaración estática de tablas
Capítulo 4 Vectores y matrices En FORTRAN se puede utilizar un tipo especial de variable que sirve, en particular, para almacenar vectores y matrices. De esta forma, se utiliza un sólo nombre para referirse
Conceptos. ELO329: Diseño y Programación Orientados a Objetos. ELO 329: Diseño y Programación Orientados a Objetos
Conceptos ELO329: Diseño y Programación Orientados a Objetos 1 Paradigmas de Programación Historia: Los computadores parten cableados por hardware, Luego se introduce la programación en binario, Se desarrolla
Cómo nombrar variables ( 2&
&'()*+,, *)-.&'*/0+!" #$ # http://www.escet.urjc.es/~aiiq/ Introducción a Visual Studio.NET Aprendiendo el IDE de Visual Basic.NET Elementos del lenguaje. Variables y estructuras de datos Introducción
Tema 4: Estructuras de Control Estructura y Contenidos
Tema 4: Estructuras de Control Estructura y Contenidos 4.1. ESTRUCTURA SECUENCIAL. 4.2. ESTRUCTURAS DE SELECCIÓN. 4.2.1. Selección simple ( if ). 4.2.2. Selección binaria ( if... ). 4.2.3. Selección múltiple
Organización de Computadoras
Organización de Computadoras Departamento de Ciencias e Ingeniería de la Computación Universidad Nacional del Sur Segundo Cuatrimestre de 2015 Proyecto N 1 Programación en Lenguaje C El objetivo principal
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
Programación III. 1. Facultad: Ingeniería Escuela: Computación Asignatura:Programación III I. OBJETIVOS II. INTRODUCCIÓN TEÓRICA
Programación III. 1 Facultad: Ingeniería Escuela: Computación Asignatura:Programación III GUIA1: Uso de C# modo consola. I. OBJETIVOS Qué el estudiante: Conozca el lenguaje de programación Visual C#.Net
CONTENIDO. Programación orientada a objetos - POO. Clases. Constructores y destructores. Definiciones. Entrada y salida
INFORMÁTICA II 1 CONTENIDO 2 1 Programación orientada a objetos - POO 2 Clases 3 Constructores y destructores 4 Definiciones 5 Entrada y salida PROGRAMACIÓN ORIENTADA A OBJETOS Los lenguajes de programación
Programando en C a Bajo Nivel
Universidad de Buenos Aires Facultad De Ingeniería Programando en C a Bajo Nivel [75.40] Algoritmos y Programación I 1er Cuatrimestre 011 Cátedra: Ing. Pablo Guarna Autor: Bernardo Ortega Moncada Versión
Programación 1. Tema II. Diseño de programas elementales. Lección 7. Diseño modular y descendente de programas
Programación 1 Tema II. Diseño de programas elementales Lección 7. Diseño modular y descendente de programas 1 Objetivos de la lección : Aprender qué es un diseño modular de un programa Aprender a diseñar
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,
