Tema 2. Programación basada en objetos. Programación Avanzada Ingeniería Técnica en Informática de Gestión Jorge Badenas
|
|
- María Dolores Macías Pinto
- hace 6 años
- Vistas:
Transcripción
1 Tema 2. Programación basada en objetos Programación Avanzada Ingeniería Técnica en Informática de Gestión Jorge Badenas
2 2.1. Objetivos Estudiar los conceptos de clase y objeto, y su implementación mediante el lenguaje C++. Constructores y destructores. Sobrecarga de operadores. Programación Avanzada - Ingeniería Técnica en Informática de Gestión 2
3 2.2. Encapsulación de los datos Encapsulación de los datos ListinTelefonico cap construirlistin insertartelefono buscartelefono Interfaz destruirlistin main insercion Programa busqueda Programación Avanzada - Ingeniería Técnica en Informática de Gestión 3
4 2.2. Encapsulación de los datos El interfaz amortigua los efectos de los cambios internos de la estructura. Si no es preciso cambiar el interfaz, los cambios no afectarán al programa. Programación Avanzada - Ingeniería Técnica en Informática de Gestión 4
5 2.3 Características beneficiosas Mayor abstracción. Entidades de más alto nivel. Modularidad. Agrupación de estructuras de datos con las funciones que facilitan su manipulación. Ocultación de la información. Para usar algo no es preciso saber cómo está hecho. Encapsulación de los datos. El acceso a los datos se hace a través de un interfaz. La encapsulación es la piedra angular que hace que las otras tres se cumplan. Programación Avanzada - Ingeniería Técnica en Informática de Gestión 5
6 2.4. Objetos Necesitamos un mecanismo en los lenguajes de programación que obligue a los programas a manejar los datos a través de la interfaz. Los objetos son ese mecanismo que permite la encapsulación. Objeto Error de compilación cap Acceder directamente a los datos construirlistin insertartelefono buscartelefono destruirlistin Interfaz main insercion busqueda Programa Programación Avanzada - Ingeniería Técnica en Informática de Gestión 6
7 2.5. Objetos y clases Un objeto es una instancia de una clase. Una clase contiene dos tipos de elementos: Datos Funciones que manejan los datos. Dos tipos de elementos en una clase según el tipo de acceso: Privados Públicos La interfaz de la clase lo forman las funciones públicas. El resto de las funciones del programa que no pertenecen a la clase están obligadas a usar los datos a través de la interfaz. Programación Avanzada - Ingeniería Técnica en Informática de Gestión 7
8 2.6 Transformando un Tipo de Dato en una Clase struct Hora { int minutos; int horas; ; void ponerenhora( Hora& oh, int h, int m ) { oh.minutos = m; oh.horas = h; if( m>59 ) normalizar( oh ); void normalizar( Hora& oh ) { oh.horas += oh.minutos / 60; oh.minutos = oh.minutos % 60; void mostrarhora( const Hora &oh ) { cout<<oh.horas<< : <<oh.minutos; Programación Avanzada - Ingeniería Técnica en Informática de Gestión 8
9 2.6 Transformando un Tipo de Dato en una Clase class Hora { public: void ponerenhora( int h, int m); void mostrar( ); private: int horas; int minutos; void normalizar( ); ; Para definir una clase se pueden usar dos palabras clave: class struct (elementos públicos) Los datos serán privados. Las funciones que permitían el manejo de la estructura pasarán a pertenecer a la clase. Programación Avanzada - Ingeniería Técnica en Informática de Gestión 9
10 2.6.1 Miembros de una clase. Las funciones y datos que pertenecen a la clase reciben el nombre de miembros de la clase. Métodos Funciones Atributos Datos Los miembros privados son inaccesibles desde las funciones que no pertenecen a la clase (Encapsulación). Las funciones públicas son la interfaz de la clase. Los datos de una clase son equivalentes a los campos de un tipo de dato struct de C. Las funciones de una clase están incrustadas en ella, por lo tanto no necesitan recibir el objeto, YA LO TIENEN. Programación Avanzada - Ingeniería Técnica en Informática de Gestión 10
11 Declaración y uso de las clases // Sin clases int main( ) { Hora h; ponerenhora( h, 6, 50 ); mostrar( h ); normalizar( h ); h.minutos = 80;//Contenido incorrecto return 0; // Con clases int main( ) { Hora h; h.ponerenhora( 6, 50 ); h.mostrar( ); h.normalizar( ); // ERROR h.minutos = 80; // ERROR return 0; Programación Avanzada - Ingeniería Técnica en Informática de Gestión 11
12 Definición de funciones miembro Se debe poner el nombre de la clase void Hora::mostrar( ) { cout<< horas << : <<minutos; void Hora::normalizar( ) { horas += minutos / 60; minutos = minutos % 60; Cuando estoy en la clase se sobreentiende que hablo de Hora::minutos void Hora::ponerEnHora( int h, int m ) { minutos = m; horas = h; if( m>59 ) normalizar( ); Programación Avanzada - Ingeniería Técnica en Informática de Gestión 12
13 Convertir en una clase: /* Archivo Cuenta.h */ struct Cuenta{ char titular[30]; int numero; float saldo; ; void asignarsaldo ( Cuenta &, float = 0.0); void inicializar ( Cuenta &, char *, int, float = 0.0); /*Archivo Cuenta.cpp */ #include <iostream> using namespace std; #include Cuenta.h void asignarsaldo (Cuenta &c, float s) { if (s<0.0) { cerr<<"saldo NEGATIVO"; s=0.0; c.saldo=s; void inicializar (Cuenta &c, char *t, int n, float s) { strcpy (c.titular, t); c.numero=n; asignarsaldocuenta (c, s); Programación Avanzada - Ingeniería Técnica en Informática de Gestión 13
14 viene de la página anterior /* Archivo Principal.cpp */ int main ( ) { Cuenta c1, c2; inicializar (c1, "Luis López", 35006); inicializar(c2, "Jesús García", 35007, 1000); asignarsaldo (c1, 500.0); asignarsaldo ( c2 ); return 0; Programación Avanzada - Ingeniería Técnica en Informática de Gestión 14
15 2.7. Funciones inline Si una función es breve, se puede escribir su código dentro de la estructura class. Entonces es una función inline. class Hora { public: int leerminutos( ) { return minutos; int leerhoras( ) { return horas; ; Programación Avanzada - Ingeniería Técnica en Informática de Gestión 15
16 2.8. Funciones const Cuando una función no modifica al objeto propietario de la función es conveniente definirla como const. class Hora { public: int leerminutos( ) const { return minutos; int leerhoras( ) const { return horas; ; Programación Avanzada - Ingeniería Técnica en Informática de Gestión 16
17 2.9. Constructores Constructor: Función que se ejecuta automáticamente al crearse un objeto. Propósito: Inicializar el objeto. Características: Su nombre es el de la clase. No devuelve nada. Puede haber varios, por ejemplo: Uno sin parámetros: por defecto. Uno con un parámetro de la misma clase: copia. Los dos anteriores, el compilador los proporciona de forma implícita: Si declaro un constructor, pierdo el implícito por defecto. Cualquiera de los dos puedo declararlo para redefinirlo a mi gusto. Crear un objeto siempre supone usar un constructor... y ha de decidirse cuál en cada caso. Programación Avanzada - Ingeniería Técnica en Informática de Gestión 17
18 2.10. Destructores Destructor: Función que se ejecuta automáticamente cuando un objeto deja de existir. Propósito: Liberar los recursos que el objeto tuviera ocupados (memoria, ficheros, etc.). class Lista { Nodo *cap; public: ~Lista( ); ; Lista::~Lista( ) { Nodo *nt; while( cap!= NULL ) { nt = cap; cap = cap->sig; delete nt; Si no, hay un destructor implícito. Programación Avanzada - Ingeniería Técnica en Informática de Gestión 18
19 2.11. El constructor copia Construye un objeto a partir de otro de la misma clase. Hay uno implícito que copia miembro a miembro. Si el constructor copia implícito no es adecuado, debo reescribirlo. Dada una clase A, el constructor copia se define como: class A { ; A( const A&origen); Se trata de inicializar un objeto de la clase A a partir de otro objeto de la clase A (origen). Programación Avanzada - Ingeniería Técnica en Informática de Gestión 19
20 2.12. Constructores y arrays. Los objetos de un array también se construyen y se destruyen. Paso de parámetros a constructores de arrays: class Complejo { public: ; Complejo(float r=0.0, float i=0.0) { int main() { Complejo vc1[10]; Complejo vc2[3]= {1.0, 2.0, 3.0; Complejo vc3[2]= {Complejo(1.0, 1.0), Complejo(2.0, 2.0); Complejo * pc, * pvc; pc = new Complejo(1.1, 2.2); pvc = new Complejo[5];... delete pc; delete[] pvc;... Programación Avanzada - Ingeniería Técnica en Informática de Gestión 20
21 2.13. Funciones y clases amigas (friend) Una función amiga es una función qué aunque no pertenece a una clase recibe el privilegio de poder acceder a la parte privada. Para hacer una función amiga de una clase se ha de poner en la clase la palabra friend seguida del prototipo de la función. Si se quiere que todas las funciones de una clase A puedan acceder a la parte privada de una clase B, se definirá la clase A como amiga de B. class B { friend class A; ; Programación Avanzada - Ingeniería Técnica en Informática de Gestión 21
22 2.14. this this es la dirección (inmutable) del objeto sobre el que se está ejecutando una función miembro. class A { A* direccion( ) { return this; A objeto( ) { return *this; A& objetoreferencia( ) { return *this; void escrx( int v) { this->x = v; private: int x; ; // En alguna función A a, b; A* pa = a.direccion( ); // pa = &a A* pb = b.direccion( ); // pb = &b b = a.objeto( ); // b=a a.objetoreferencia( ).escrx( 10 ); // Lo mismo que a.escrx( 10 ) Programación Avanzada - Ingeniería Técnica en Informática de Gestión 22
23 2.15. Sobrecarga de operadores La sobrecarga de operadores consiste en asociar funciones a operadores. El operador es una abreviatura que implica la ejecución de una función. Podemos sobrecargar los operadores que existen, pero no podemos: Inventar operadores nuevos. Cambiar el número de operandos que requiere un operador. Sobrecargar el operador + consiste en escribir una función llamada operator+. Lo mismo para el resto de operadores. Programación Avanzada - Ingeniería Técnica en Informática de Gestión 23
24 2.15 Sobrecarga de operadores class Racional { public: Racional( int n, int d = 1): num( n ), den( d ) { Racional( ) { private: int num; // Numerador int den; // Denominador ; Queremos que funcione: Racional a, b, c; a = b + c; Programación Avanzada - Ingeniería Técnica en Informática de Gestión 24
25 2.15 Sobrecarga de operadores En a = b + c hay dos operadores: b + c Racional + Racional a=resultado(b+c) Rac = Rac Para sobrecargar b + c debemos escribir una función llamada operator+. operator+ puede tener dos formas: Miembro de la clase Racional: b.operator+( c ) No miembro: operator+( b, c ) Podemos escoger la forma que queramos. Según la que elijamos tendremos distinto número de parámetros. Programación Avanzada - Ingeniería Técnica en Informática de Gestión 25
26 2.15 Sobrecarga de operadores Qué debe devolver b + c? Racional + Racional Racional Qué debe hacer b + c? Sumar b más c y devolver el resultado Modificar a los objetos b o c? No es lo que ocurre con los tipos de datos del lenguaje (int, float, etc.) Programación Avanzada - Ingeniería Técnica en Informática de Gestión 26
27 2.15 Sobrecarga de operadores Como no miembro, la función sería: Racional operator+( const Racional& b, const Racional& c ) { Racional tmp; tmp.num = b.num*c.den + b.den*c.num; tmp.den = b.den*c.den; return tmp; Si accede a miembros privados desde una función no miembro, la función debe ser friend: class Racional { friend Racional operator+(const Racional& b, const Racional& c ); // Resto del class ; Programación Avanzada - Ingeniería Técnica en Informática de Gestión 27
28 2.15 Sobrecarga de operadores Falta el operator= Racional = Racional No es necesario implementarlo, porque todas las clases tienen una versión implícita de ese operador. Racional& operator=(const Racional&); Realiza la asignación de cada uno de los datos miembros de la clase. Lo deberemos redefinir cuando necesitemos que este operador haga algo diferente. Pregunta: funcionará?: a = b + c + d; Programación Avanzada - Ingeniería Técnica en Informática de Gestión 28
29 2.16. Racional += Racional Haremos que la función sea miembro de la clase Racional a += b a.operator+=( b ) Un operador no es normal que retorne void, así que haremos que devuelva Racional. La función debe modificar el primer operando racional. class Racional { Racional& operator+=( const Racional& ); ; Racional& Racional::operator+=( const Racional& b ) { num = num * b.den + den * b.num; den *= b.den; return *this; Programación Avanzada - Ingeniería Técnica en Informática de Gestión 29
30 2.17. Racional == Racional Qué debe devolver a == b? bool. Mejor como función externa: a == b operator==(a, b) class Racional {... friend bool operator==(const Racional&,... ;... const Racional&); bool operator==(const Racional& a, const Racional& b) { return a.num/a.den == b.num/b.den; Problema con los tipos de datos: 4/5 == 1/3 true? Sobrecargamos también!=? Programación Avanzada - Ingeniería Técnica en Informática de Gestión 30
31 Racional Uso: Racional q, p; p = -q; // p = q.operator-( ); Declaración: class Racional { ; Racional operator-( ) const; Código de la función: // Versión 1 Racional Racional::operator-( ) const { Racional aux; aux.num = -num; aux.den = den; return aux; // Versión 2 Racional Racional::operator-( ) const { return Racional( -num, den ); Programación Avanzada - Ingeniería Técnica en Informática de Gestión 31
32 2.19. Operaciones entre clases distintas Si se quiere poder sumar Complejo y Racional con el operador +, hay dos opciones: Sobrecargar operator+ para Complejo y Racional. Suponiendo que ya se dispone de la suma de complejos, especificar la conversión de Racional en Complejo. De esta forma, en Complejo + Racional: 1. Se convierte automáticamente el Racional en un Complejo. 2. Se efectúa la suma con la sobrecarga del operator+ para dos complejos.
33 2.20. Complejo + Racional Complejo c1, c2; Racional q; c1 = c2 + q; Declaración en las clases: class Complejo { Complejo operator+( const Racional&)const; ; class Racional { friend Complejo Complejo::operator+( const Racional& ) const; ; Código de la función: Complejo Complejo::operator+( const Racional& q)const { float rac = static_cast<float>( q.num ) / q.den ; return Complejo( real + rac,imaginaria );
34 2.21. Racional + Complejo Complejo c1, c2; Racional q; c1 = q + c2; Declaración en las clases: class Complejo { friend Complejo operator+( const Racional&, const Complejo& ); ; class Racional { friend Complejo operator+(const Racional&, const Complejo& ); ; Código de la función: Complejo operator+( const Racional& q, const Complejo& c) { float rac = static_cast<float>( q.num ) / q.den ; return Complejo(c.real+rac,c.imaginaria );
35 2.22. Conversión mediante constructores El constructor permite convertir un objeto a otra clase diferente. class Complejo { public: Complejo(const Racional&);... friend Complejo operator+(const Complejo&, const Complejo&); private: ; float real, imaginaria; Complejo::Complejo(const Racional& q) { real = static_cast<float>(q.num) / q.den; imaginaria = 0.0; Se puede evitar que se produzcan conversiones implícitas (coerciones), poniendo la palabra explicit delante del constructor. Programación Avanzada - Ingeniería Técnica en Informática de Gestión 35
36 2.22. Conversión mediante constructores Racional r; Complejo c1, c2; c1 = c2 + r; C1 = r + c2; El objeto r primero se convierte en un Complejo mediante el constructor, después se llama a la sobrecarga del operador + que suma dos complejos. Programación Avanzada - Ingeniería Técnica en Informática de Gestión 36
37 Racional y Racional++ class Racional { Racional& operator++( ); Racional operator++( int ); ; Racional& Racional::operator++( ) { num += den; return *this; Racional Racional::operator++( int ) { Racional tmp = *this; num += den; return tmp; El parámetro entero es artificial, sólo sirve para diferenciar el operador posfijo del prefijo. Programación Avanzada - Ingeniería Técnica en Informática de Gestión 37
38 2.23. Operadores de E/S Se trata de sobrecargar los operadores >> y <<. Racional q; cout << Dame un racional... ; cin >> q; cout << q vale << q << endl; cout pertenece a la clase ostream, mientras que cin pertenece a istream. Estos operadores no pueden ser funciones miembro, porque el operando de la izquierda no es el de mi clase. Programación Avanzada - Ingeniería Técnica en Informática de Gestión 38
39 2.23. Operadores de E/S El operador de salida es <<: Racional q(2, 3); cout << q; // operator<<(cout, q); Se debe devolver por referencia el operando izquierdo (un ostream) para poder ordenar más salidas en la misma expresión: cout << q1 << y << q2 << endl; Posible implementación: ostream& operator<<(ostream& os, const Racional& q) { os << q.num << / << q.den; return os; Si se accede a datos privados, la función tendrá que ser friend. Programación Avanzada - Ingeniería Técnica en Informática de Gestión 39
40 2.23. Operadores de E/S El operador de entrada es >>: Racional q; cin >> q; // operator>>(cin, q); El formato que lee operator>> debe ser similar al que escribe operator<<. Posible implementación: istream& operator>>(istream& is, char c; // para leer / Racional& q) { is >> q.num >> c >> q.den; return is; Consideraciones análogas al caso anterior, pero: istream en vez de ostream. Operando derecho, por referencia no const. Programación Avanzada - Ingeniería Técnica en Informática de Gestión 40
41 2.24. El operador = Dada una clase C, su cabecera es: C& C::operator=(const C&); Todas las clases disponen de un operator= implícito, que debe redefinirse si no es adecuado. El operator= implícito asigna los datos de un objeto al otro, miembro a miembro. No se debe confundir el constructor copia con el operator=. Al constructor sólo se le puede llamar cuando se está inicializando un objeto que es nuevo. Pero puede ser útil definirlo a partir de la asignación, hecha sobre *this. Es importante prever casos como a=a; (autoasignación). Programación Avanzada - Ingeniería Técnica en Informática de Gestión 41
42 2.25. Operador de indexación Para acceder a un elemento de un objeto contenedor mediante su índice (no siempre int): obj[ind] obj.operator[](ind) // acceso al elemento ind de obj Por ejemplo, para que funcione: VectorFloat v(10); // Diez flotantes float x;... x = v[5]; // Lectura v[6] = x; // Escritura Para poder escribir, operator[] no puede devolver una copia del elemento, sino una referencia a él. Para poder leer incluso si el contenedor es const, necesitamos una versión que devuelva copia o referencia const. Programación Avanzada - Ingeniería Técnica en Informática de Gestión 42
43 2.25. Operador de indexación class VectorFloat{ public: // Para lectura y escritura (Op1) float& operator[](int i) { return elementos[i]; // Para sólo lectura (Op2) float operator[](int i) const { return elementos[i];... private: int nelems; // Número de elementos int *elementos; ; void raro(vectorfloat& vvble, const VectorFloat& vcte) { float x;... x = vvble[0]; // Versión Op1 x += vcte[1]; // Versión Op2 vvble[2] = 2*x; // Versión Op1 Programación Avanzada - Ingeniería Técnica en Informática de Gestión 43
44 2.26. Operador de llamada Para utilizar un objeto como si fuera una función: obj(arg 1,... arg n ) obj.operator()(arg 1,... arg n ) Puede definirse para el número de argumentos que se desee. Por ejemplo, para acceso a elementos de una matriz: class MatrizFloat{ public: float& operator()(int i, int j) { return elementos[i*ncols+j]; float operator()(int i, int j) const... { return elementos[i*ncols+j]; private: ; int nfils, ncols; int *elementos; Programación Avanzada - Ingeniería Técnica en Informática de Gestión 44
Tema 6. Gestión dinámica de memoria
Tema 6. Gestión dinámica de memoria http://aulavirtual.uji.es José M. Badía, Begoña Martínez, Antonio Morales y José M. Sanchiz {badia, bmartine, morales, sanchiz@icc.uji.es Estructuras de datos y de la
Más detallesTema: 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
Más detallesTEMA 8: Gestión dinámica de memoria
TEMA 8: Gestión dinámica de memoria 8.1.-Tipo de datos puntero Hasta ahora, los tipos de datos que hemos visto (a excepción de strings y ficheros) eran estructuras de datos estáticas, es decir, estructuras
Más detallesProf. Dr. Paul Bustamante
Prácticas de C++ Practica Nº 6 Informática II Fundamentos de Programación Prof. Dr. Paul Bustamante Practica Nº 6 Programación en C++ Pág. 1 ÍNDICE ÍNDICE... 1 1. Introducción... 1 1.1 Ejercicio 1: Clase
Más detalles1. Sobrecarga de operadores. 2. Métodos operadores unarios Operador de incremento (prefijo)
. Sobrecarga de operadores. unarios Operador de incremento (prefijo). Devolución de objetos en los métodos. Retorno por referencia Sobrecarga de operadores Los operadores aceptan uno o varios operandos
Más detallesPRÁCTICA DE LABORATORIO 4 Programación Orientada a Objetos
ESCUELA DE INGENIERÍA DE SISTEMAS DEPARTAMENTO DE COMPUTACIÓN PROGRAMACIÓN 2 PRÁCTICA DE LABORATORIO 4 Programación Orientada a Objetos Contenido Introducción...1 Objeto...2 Atributo...2 Métodos...2 Clase...3
Más detallesPlantillas: un mecanismo de polimorfismo
Plantillas: un mecanismo de polimorfismo UPCO ICAI Departamento de Electrónica y Automática 1 Polimorfismo a través de programación genérica Las plantillas permiten programar un clase o una función de
Más detallesLas clases como tipos de datos definidos por el usuario
. La clase Fraccional. Representación en UML de los niveles de acceso 3. Categorías de los objetos que aparecen en los métodos 4. El puntero this. Métodos operadores La clase Fraccional Vamos a diseñar
Más detallesLos constructores son funciones miembro especiales que sirven para inicializar un objeto de una determinada clase al mismo tiempo que se declara.
Constructores Los constructores son funciones miembro especiales que sirven para inicializar un objeto de una determinada clase al mismo tiempo que se declara. Los constructores tienen el mismo nombre
Más detallesTEMA 7: Ficheros. TEMA 7: Ficheros. 7.1.-Concepto de fichero
TEMA 7: Ficheros 7.1.-Concepto de fichero Todas las estructuras de datos que hemos visto hasta ahora utilizan memoria principal. Esto tiene dos limitaciones importantes: 1. Los datos desaparecen cuando
Más detallesUNIVERSIDAD DE LOS ANDES NUCLEO UNIVERSITARIO RAFAEL RANGEL (NURR) DEPARTAMENTO DE FISICA Y MATEMATICA AREA COMPUTACION TRUJILLO EDO.
UNIVERSIDAD DE LOS ANDES NUCLEO UNIVERSITARIO RAFAEL RANGEL (NURR) DEPARTAMENTO DE FISICA Y MATEMATICA AREA COMPUTACION TRUJILLO EDO. TRUJILLO 1.- Resumen de Prog1 Comentarios es C++ Declaraciones de variables.
Más detallesClases en C++ Universidad de Carabobo Facultad Experimental de Ciencias y Tecnología Algoritmos y Programación II. Enero de 2005
Clases en C++ Universidad de Carabobo Facultad Experimental de Ciencias y Tecnología Algoritmos y Programación II Enero de 200 1. Definición de Clases Cada clase contiene: datos (datos miembro o campos),
Más detallesPROGRAMACION ORIENTADA A OBJETOS EN C++
PROGRAMACION ORIENTADA A OBJETOS EN C++ 1- INTRODUCCIÓN El lenguaje C++ representa el resultado de los esfuerzos realizados para proporcionar las ventajas de la programación Orientada a Objetos a un lenguaje
Más detallesContenidos. 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.
Más detallesTema 5: Programación Orientada a Objetos en C++ Programación Orientada a Objetos Curso 2009/2010 Begoña Moros Valle
Tema 5: Programación Orientada a Objetos en C++ Programación Orientada a Objetos Curso 2009/2010 Begoña Moros Valle Contenido Introducción Clases y Objetos en C++: Módulos: Clases, estructuras y espacios
Más detallesTema 3. Tipos de datos simples
Tema 3. Tipos de datos simples Contenido del tema: Concepto de tipo. Tipos simples. Operadores. Expresiones. Semántica. Tipos y expresiones en lenguaje C++ Francisco J. Veredas Dpto. Lenguajes y Ciencias
Más detallesAPUNTADORES. Un apuntador es un objeto que apunta a otro objeto. Es decir, una variable cuyo valor es la dirección de memoria de otra variable.
APUNTADORES Un apuntador es un objeto que apunta a otro objeto. Es decir, una variable cuyo valor es la dirección de memoria de otra variable. No hay que confundir una dirección de memoria con el contenido
Más detallesIntroducción al lenguaje C
Programación 2 Profesorado de Informática CeRP del Suroeste, Uruguay 29 de marzo de 2016 Estructuras de control IV Iteración Sentencia for: for (inicio; condicion; paso) cuerpo for (int i = 0; i < 10;
Más detallesUnidad Didáctica 2. Elementos básicos del lenguaje Java Tipos, declaraciones, expresiones y asignaciones
Unidad Didáctica 2 Elementos básicos del lenguaje Java Tipos, declaraciones, expresiones y asignaciones Fundamentos de Programación Departamento de Lenguajes y Sistemas Informáticos Versión 1.0.3 Índice
Más detallesGuía práctica de estudio 04: Clases y objetos
Guía práctica de estudio 04: Clases y objetos Elaborado por: M.C. M. Angélica Nakayama C. Ing. Jorge A. Solano Gálvez Autorizado por: M.C. Alejandro Velázquez Mena Guía práctica de estudio 04: Clases y
Más detallesTema ADQUISICIÓN Y TRATAMIENTO DE DATOS. Departamento de Ciencias de la Computación e IA. Subprogramas en C
Tema ADQUISICIÓN Y TRATAMIENTO DE DATOS Departamento de Ciencias de la Computación e IA Subprogramas en C Objetivo Una vez que tengamos un programa que resuelva un problema concreto, ser capaces de usarlo
Más detallesEscuela Politécnica Superior de Elche
EXAMEN DE SISTEMAS INFORMÁTICOS INDUSTRIALES ((SOLUCIÓN) (TEORÍA)jUJ jhshshs SEPTIEMBRE 2015 1. Indicar si las siguientes afirmaciones son verdaderas o falsas: (a) En C++, una clase derivada puede acceder
Más detallesUn elemento de cualquier clase llamada Info; Un puntero a un nuevo nodo llamado sig; De tal forma una unión de nodos hace que tengamos una lista:
Tipos Abstractos de Datos: TAD Lista en educación Profesional 1.- Introducción Los tipos abstractos de datos son fundamentales para la informática puesto que de ellos se sirven todos los programas para
Más detallesTema 7.- Fundamentos de la Programación Orientada a Objetos
Tema 7.- Fundamentos de la Programación Orientada a Objetos 7 de enero de 2014 Objetivos Saber definir clases propias. Saber crear objetos de una clase determinada e interactuar con ellos (Problema 1).
Más detallesTema: Clases y Objetos en C#. Parte II.
Programación II. Guía No. 5 1 Facultad: Ingeniería Escuela: Computación Asignatura: Programación II Tema: Clases y Objetos en C#. Parte II. Objetivos Implementar clases, objetos, propiedades, métodos y
Más detallesTema 13: Apuntadores en C
Tema 13: Apuntadores en C M. en C. Edgardo Adrián Franco Martínez http://www.eafranco.com edfrancom@ipn.mx @edfrancom edgardoadrianfrancom Estructuras de datos (Prof. Edgardo A. Franco) 1 Contenido Introducción
Más detallesIntroducción a C++ y Code::Blocks
Introducción a C++ y Práctica Imperativo Clase 1 Luis Agustín Nieto Departamento de Computación, FCEyN,Universidad de Buenos Aires. 28 de mayo de 2010 Menu de esta Tarde Funcional Vs. Imperativo (Intérprete
Más detallesTodo programa en 'C' consta de una o más funciones, una de las cuales se llama main.
LENGUAJE C CARACTERISTICAS DEL LENGUAJE 'C' El lenguaje 'C' se conoce como un lenguaje compilado. Existen dos tipos de lenguaje: interpretados y compilados. Los interpretados son aquellos que necesitan
Más detallesElementos de un programa en C
Elementos de un programa en C Un programa en C consta de uno o más archivos. Un archivo es traducido en diferentes fases. La primera fase es el preprocesado, que realiza la inclusión de archivos y la sustitución
Más detallesProgramación. Test Autoevaluación Tema 3
Programación Test Autoevaluación Tema 3 Autores: M. Paz Sesmero Lorente Paula de Toledo Heras Fco. Javier Ordoñez Morales Juan Gómez Romero José A. Iglesias Martínez José Luis Mira Peidro SOLUCIONES 1.
Más detallesEjercicio 1. Ejercicio 2
Todos los ejercicios incluyen una parte opcional de mayor dificultad, indicada con una serie de asteriscos en función del grado de dificultad. Ejercicio 1 Este ejercicio servirá para practicar la declaración
Más detalles1. Ejemplo de clase : La clase Cuenta 2. Uso de la clase Cuenta. 3. Métodos y objetos receptores de mensajes (Importante)
1. : La clase Cuenta. Uso de la clase Cuenta 3. Métodos y objetos receptores de mensajes (Importante) 1 Una clase para cuentas de un banco Vamos a modelar con una clase, un nuevo tipo de datos, donde los
Más detallesRelación de prácticas de la asignatura METODOLOGÍA DE LA PROGRAMACIÓN Segundo Cuatrimestre Curso º Grado en Informática
Relación de prácticas de la asignatura METODOLOGÍA DE LA PROGRAMACIÓN Segundo Cuatrimestre Curso 2013-2014. 1º Grado en Informática Práctica 1: Punteros Objetivos Se hará hincapié en la aritmética de punteros
Más detallesIntroducció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 detallesCONTENIDO. 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
Más detallesLas plantillas permiten definir funciones genéricas.
Introducción (Genericidad). Plantillas de funciones o funciones genéricas. Sintaxis de plantillas. Ejemplos de declaraciones. A tener en cuenta Un ejemplo de plantilla de funciones: Máximo de un vector.
Más detallesCaracteres y Cadenas Conversión de Datos Funciones y procedimientos Archivos cabecera. Fundamentos de programación
1 Caracteres y Cadenas Conversión de Datos Funciones y procedimientos Archivos cabecera Fundamentos de programación Agenda Caracteres y Cadenas Conversión de Datos Introducción a las funciones y procedimientos
Más detallesTema: 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.
Más detalles15. 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
Más detallesProgramació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
Más detallesDefinición y Conversión de datos. Agustín J. González ELO-329
Definición y Conversión de datos Agustín J. González ELO-329 1 Calificador Const El calificador const previene que un objeto sea modificado con posterioridad a su definición. El objeto calificado como
Más detallesLenguaje de Programación
UG C++ C++ Universidad de Guanajuato Sesión 33 Una estructura es un grupo de variables las cuales pueden ser de diferentes tipos sostenidas o mantenidas juntas en una sola unidad. La unidad es la estructura.
Más detallesPráctica 3. Paso de parámetros entre subrutinas. 3. Consideraciones sobre el paso de parámetros
Práctica 3. Paso de parámetros entre subrutinas 1. Objetivo de la práctica El objetivo de esta práctica es que el estudiante se familiarice con la programación en ensamblador y el convenio de paso de parámetros
Más detallesTest : Conteste exclusivamente en una HOJA DE LECTURA ÓPTICA, no olvidando marcar que su tipo de examen es A.
SISTEMAS INFORMÁTICOS I Junio 2003 INGENIERÍA EN INFORMÁTICA - Código Carrera 55 - Código Asignatura 077 Tipo de Examen: A NO SE PERMITE EL USO DE NINGÚN MATERIAL Tiempo: 2 horas Apellidos: Nombre: DNI:
Más detallesINTRODUCCIóN A LA PROGRAMACIóN APUNTES DE JAVA APUNTES DE JAVA
APUNTES DE JAVA FUNCIONAMIENTO DE UN PROGRAMA Assembler Ensamblador Ejecuta Programador Programa fuente BASIC Interprete Ejecuta C, C++, Pascal Compilador Compila Ejecuta Programa fuente Programa Objeto
Más detallesDescripción y Contenido del Curso. Programación C++ Capacity Academy.
Descripción y Contenido del Curso Programación C++ Capacity Academy Educación en Tecnología de la Información Online, Efectiva y Garantizada Qué aprenderá si toma este Curso? En este curso aprenderás todo
Más detallesConceptos a tratar. Fundamentos de la Programación Orientada a Objetos Ampliación sobre clases y objetos
Fundamentos de la Programación Orientada a Objetos Ampliación sobre clases y objetos Programación Orientada a Objetos Facultad de Informática Dep. Ingeniería del Software e Inteligencia Artificial Universidad
Más detallesCarlos Montenegro. Programación Orientada a Objetos Proyecto Curricular de Ingeniería de Sistemas
2 - Introducción al lenguaje Java, identificadores y comentarios. Carlos Montenegro Programación Orientada a Objetos Proyecto Curricular de Ingeniería de Sistemas 1. Introducción: Java tiene como todos
Más detallesESCUELA DE INGENIERÍA DE SISTEMAS DEPARTAMENTO DE COMPUTACIÓN PROGRAMACIÓN 2 PRÁCTICA DE LABORATORIO 7 Herencia y Composición en POO
ESCUELA DE INGENIERÍA DE SISTEMAS DEPARTAMENTO DE COMPUTACIÓN PROGRAMACIÓN 2 PRÁCTICA DE LABORATORIO 7 Herencia y Composición en POO Contenido Introducción... 1 Concepto de la Herencia... 2 Relación de
Más detallesFunciones. Parámetros por valor
Funciones I Parámetros por valor Fundamentos de Programación Fundamentos de Programación I Llamada a la función definición subprograma Subprogramas en C++ Funciones 1 Una función es un subprograma que
Más detallesProgramación en C. Algoritmo y Estructura de Datos. Ing. M. Laura López. Programación en C
Algoritmo y Estructura de Datos Ing. M. Laura López 1 Estructura de un programa en C 2 Estructura de un programa en C #include Archivos de cabecera # define Definición de constantes Declaraciones Globales
Más detallesfunciones printf scanf
FUNCIONES EN C FUNCIONES Los módulos en C se llaman funciones. Hemos estado utilizando funciones de la biblioteca estandar stdio.h como por ejemplo printf y scanf. Comenzaremos viendo algunas funciones
Más detallesTema 10: Tipos de datos definidos por el usuario
Tema 10: Tipos de datos definidos por el usuario Indice 1. Introducción 2. Registros 2.1. Elementos de un registro 2.2 Arrays de registros 2.3. Registros con arrays 2.4. Registros con registros 2.5. Paso
Más detallesProgramación 1 Tema 3. Información, datos, operaciones y expresiones
Programación 1 Tema 3 Información, datos, operaciones y expresiones Índice Datos y tipos de datos Datos primitivos en C++ Expresiones e instrucción de asignación Datos y tipos de datos Problema información
Más detalles$0 Representa al parámetro cero o nombre del programa $1 Representa al parámetro uno $2 Representa al parámetro dos
PROGRAMACIÓN DE SHELL SCRIPTS EN LINUX El shell es un intérprete de órdenes, pero el shell no es solamente eso; los intérpretes de órdenes de Linux son auténticos lenguajes de programación. Como tales,
Más detallesLaboratorio de Arquitectura de Redes. Punteros en lenguaje C
Laboratorio de Arquitectura de Redes Punteros en lenguaje C Punteros en lenguaje C Definición Declaración e inicialización de punteros Operadores de punteros: «*» y «&» Operaciones con punteros Operaciones
Más detallesLos nombres y marcas comerciales mencionados en este manual son propiedad de sus respectivos autores o fabricantes.
Para aportes y sugerencias puede escribir al correo del autor: thenewinquirer01@gmail.com Los nombres y marcas comerciales mencionados en este manual son propiedad de sus respectivos autores o fabricantes.
Más detallesProgramación Avanzada
Programación Avanzada Referencias Circulares y Namespaces 1 Índice 1. INTRODUCCIÓN.. 3 2. REFERENCIAS CIRCULARES.. 4 Ejercicio 1 4 Ejercicio 2 4 Ejercicio 3 5 3. NAMESPACES 6 Introducción 6 Creación de
Más detallesProf. Dr. Paul Bustamante
Prácticas de C++ Practica Nº 2 Informática II Fundamentos de Programación Prof. Dr. Paul Bustamante Practica Nº 2 Programación en C++ Pág. 1 ÍNDICE ÍNDICE... 1 1. Introducción... 1 1.1 Ejercicio 1: Reserva
Más detallesProf. Dr. Paul Bustamante
Prácticas de C++ Practica Nº 4 Informática II Fundamentos de Programación Prof. Dr. Paul Bustamante Practica Nº 4 Programación en C++ Pág. 1 ÍNDICE ÍNDICE... 1 1. Introducción... 1 1.1 Ejercicio 1: Mi
Más detalles2.2 Nombres, Ligado y Ámbito
2.2 Nombres, Ligado y Ámbito Ligado estático y dinámico, reglas de ámbito y prueba de tipos. Conceptos Nombres e Identificadores Variables Tipos Ámbito Constantes Nombres Identificador que designa en el
Más detallesCategorías de métodos. Métodos constructores y destructores
1. Categorías de los métodos 2. Inicialización de miembros 3. Métodos constructores 4. Inicialización de objetos con y sin constructores 5. Sobrecarga de funciones constructoras 6. Argumentos implícitos
Más detallesMemoria Dinámica. Jornadas de Marzo 2010 Grupo de Usuarios de Linux Tania Pérez
Jornadas de Marzo 2010 Grupo de Usuarios de Linux Tania Pérez 1. PUNTEROS 2. MEMORIA DINÁMICA 2 1. PUNTEROS 3 Qué es un puntero? Un tipo de variable cuyo valor es la dirección de memoria de otra variable.
Más detallesObjetivos 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 detallesTema 2. El lenguaje JAVA
Tema 2. El lenguaje JAVA Nomenclatura habitual Variables Tipos de variables Tipos primitivos Referencias Arrays Operadores Operadores de Java Precedencia de operadores Sentencias de control Sentencias
Más detallesProf. Dr. Paul Bustamante
Carnet Nombre: Examen C++ Grupo A Informática II Fundamentos de Programación Prof. Dr. Paul Bustamante Pág.1 Índice 1. INTRODUCCIÓN... 1 2. EJERCICIO 1: AGENDA TELEFÓNICA (4.0 PTOS.)...1 3. EJERCICIO 2:
Más detallesPrincipios de Computadoras II
Departamento de Ingeniería Electrónica y Computadoras Ing. Ricardo Coppo rcoppo@uns.edu.ar Qué es un Objeto? Un objeto es una instancia de una clase Las clases actuán como modelos que permiten la creación
Más detallesTema: Tipos Abstractos de Datos (TAD s) en C++.
Programación II. Guía 12 1 Facultad: Ingeniería Escuela: Computación Asignatura: Programación II Tema: Tipos Abstractos de Datos (TAD s) en C++. Objetivos Específicos Explicar el concepto "Tipo Abstracto
Más detallesEjercicios propuestos de. Programación orientada a objetos. con C++ Cristina Cachero Pedro J. Ponce de León
de Programación orientada a objetos con C++ Cristina Cachero Pedro J. Ponce de León Departamento de Lenguajes y Sistemas Informáticos Universidad de Alicante Esta obra está bajo licencia Creative Commons
Más detallesPROGRAMACIÓN EN C#.NET Programación Orientada a Objetos en C# Ing. Bruno López Takeyas
PROGRAMACIÓN EN C#.NET Programación Orientada a Objetos en C# Ing. Bruno López Takeyas Instituto Tecnológico de Nuevo Laredo 1 Qué es UML? UML = Unified Modeling Language Un lenguaje de propósito general
Más detallesTema 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
Más detallesIntroducción a variables de tipo Puntero (Apuntadores) Contenidos. 1. Introducción a las variables puntero 2. Repaso:
Contenidos 1. Introducción a las variables untero 2. Reaso: - oerador de dirección: & - referencias 3. Declaración de variables de tio untero 4. Inicialización de variables de tio untero - El untero nulo:
Más detallesContenidos. 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
Más detallesLa sintaxis básica para definir una clase es la que a continuación se muestra:
DEFINICIÓN DE CLASES Y OBJETOS EN C# Sintaxis de definición de clases La sintaxis básica para definir una clase es la que a continuación se muestra: class nombreclase miembros De este modo se definiría
Más detallesProf. Dr. Paul Bustamante
Prácticas de C++ Practica Nº 3 Informática II Fundamentos de Programación Prof. Dr. Paul Bustamante Practica Nº3 Programación en C++ Pág. 1 ÍNDICE ÍNDICE... 1 1. Introducción... 1 1.1 Ejercicio 1: Mi primeras
Más detallesLENGUAJE DE PROGRAMACION I. Ing. JAVIER ECHEGARAY ROJO Ing. WILDER ROMAN MUNIVE. Ing. Javier Echegaray Rojo / Ing. Wilder Román Munive Pag 1
Ing. JAVIER ECHEGARAY ROJO Ing. WILDER ROMAN MUNIVE Ing. Javier Echegaray Rojo / Ing. Wilder Román Munive Pag 1 CAPITULO 3. ENTRADA Y SALIDA BÁSICA Usando la librería estandar de entrada y salida, seremos
Más detallesApuntadores en C y C++
Apuntadores en C y C++ Universidad de Carabobo Facultad Experimental de Ciencias y Tecnología Prof. Marcos A. Gil T. 8 de diciembre de 2004 1. Introducción Los apuntadores en C y C++ son una herramienta
Más detallesTEMA 2 Introducción a C# ANÁLISIS Y DESARROLLO DE APLICACIONES INFORMÁTICAS Curso 2010/2011
TEMA 2 Introducción a C# ANÁLISIS Y DESARROLLO DE APLICACIONES INFORMÁTICAS Curso Origen Nuevo lenguaje de propósito general de Microsoft para la plataforma.net Es el único que ha sido diseñado específicamente.net
Más detallesELO329: Diseño y Programación Orientados a Objetos 20 de Junio de 2005. Certamen Final
Certamen Final 1. Se tiene una aplicación Java que muestra dos botones. Cuando presionamos el botón de la izquierda, incrementa el número mostrado en el botón de la derecha. Cuando presionamos el botón
Más detallesINTRODUCCIÓN...9 CAPÍTULO 1. ELEMENTOS DE UN PROGRAMA INFORMÁTICO...11
Índice INTRODUCCIÓN...9 CAPÍTULO 1. ELEMENTOS DE UN PROGRAMA INFORMÁTICO...11 1.1 PROGRAMA Y LENGUAJESDE PROGRAMACIÓN...12 1.1.1 EL LENGUAJE JAVA...13 1.1.2 EL JDK...15 1.1.3 LOS PROGRAMAS EN JAVA...16
Más detallesVariables. Una variable no es más que un nombre simbólico que identifica una dirección de memoria: vs.
Variables Una variable no es más que un nombre simbólico que identifica una dirección de memoria: Suma el contenido de la posición 3001 y la 3002 y lo almacenas en la posición 3003 vs. total = cantidad1
Más detallesModulo 11. Clases y Objetos en Java
El siguiente texto es una traducción no oficial del documento publicado por el grupo JEDI, Introduction to Programming 1, no pretende en ningún momento reemplazar los contenidos generados por este grupo.
Más detallesEntrada y salida de datos en C y C++
Universidad Nacional de Rosario Facultad de Ciencias Exactas, Ingeniería y Agrimensura Escuela de Ingeniería Electrónica Cátedra de Informática II Entrada y salida de datos en C y C++ Informática II Entrada/Salida
Más detallesEl polimorfismo. Lenguaje C++. Leng. Prog. II. Filiberto Pla y Jorge Badenas.
El polimorfismo Lenguaje C++. Leng. Prog. II. Filiberto Pla y Jorge Badenas. Polimorfismo El polimorfismo se refiere al hecho de que una misma función adopte múltiples formas. Esto se consigue por medio
Más detallesConversión entre Tipos
Conversión entre Tipos La conversión entre tipos permite comparar y copiar valores entre diferentes tipos. En esta lección describiremos como convertir un tipo dado en otro. Conversión en VB y Existen
Más detallesProgramación con Visual C#
Programación con Visual C# Duración: 40.00 horas Descripción Visual C# es uno de los lenguajes de programación desarrollados por Microsoft, basado en la programación orientada a objetos. Es imprescindible
Más detallesUnidad II Fundamentos de C++ M.C. Juan Carlos Olivares Rojas
Unidad II Fundamentos de C++ M.C. Juan Carlos Olivares Rojas Agenda 2.1 Familiarización con el ambiente de programación 2.2 Análisis de la estructura de un programa 2.3 Envío de mensajes a la salida estándar
Más detallesCURSO DE LENGUAJE C. 4.1 Conceptos básicos de funciones 4.2 Funciones que regresan valores no enteros 4.3 Variables externas 4.4 Reglas de alcance
Capítulo 1. Introducción general 1.1 Comencemos 1.2 Variables y expresiones aritméticas 1.3 La proposición FOR 1.4 Constantes simbólicas 1.5 Entrada y salida de caracteres 1.6 Arreglos 1.7 Funciones 1.8
Más detallesUN PROGRAMA EN C++ QUE IMPLEMENTA GRUPOS ABELIANOS
Vol. (7) 1: pp. 55-60 UN PROGRAMA EN C++ QUE IMPLEMENTA GRUPOS ABELIANOS (1) Edgar Ruiz L. RESUMEN El artículo presenta un programa en C++ que implementa el concepto algebraico de grupo conmutativo o abeliano.
Más detallesAlgoritmos y programas. Algoritmos y Estructuras de Datos I
Algoritmos y programas Algoritmos y Estructuras de Datos I Primer cuatrimestre de 2012 Departamento de Computación - FCEyN - UBA Programación funcional - clase 1 Funciones Simples - Recursión - Tipos de
Más detallesCapí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
Más detallesTema 9. Algoritmos sobre listas. Programación Programación - Tema 9: Algoritmos sobre listas
Tema 9 Algoritmos sobre listas Programación 2015-2016 Programación - Tema 9: Algoritmos sobre listas 1 Tema 9. Algoritmos sobre listas Algoritmos sobre Arrays. Búsqueda. Inserción. Ordenación. Programación
Más detallesClases y funciones amigas: friend
1. Introducción a las funciones amigas (Funciones friend) 2. Funciones amigas 3. Clases amigas 4. Ejemplo: La clase fraccional. Métodos operadores amigos 5. Ejemplo: Las clases Coche y Camión. 1 Introducción:
Más detallesProcesos e Hilos en C
Procesos e Hilos en C 6 de febrero de 2012 En esta sesión vamos a escribir programas en lenguaje C que utilicen hilos y procesos para comparar el rendimiento del sistema ante la gestión de unos y otros.
Más detallesExpresiones Aritméticas. Programación digital I Escuela de Sistemas Facultad de Ingeniería Gilberto Diaz
Expresiones Aritméticas Programación digital I Escuela de Sistemas Facultad de Ingeniería Gilberto Diaz Expresiones Aritméticas El computador puede realizar cálculos además de mostrar datos por pantalla.
Más detallesDesde los programas más simples escritos en un lenguaje de programación suelen realizar tres tareas en forma secuencial.
Tipos de Datos Desde los programas más simples escritos en un lenguaje de programación suelen realizar tres tareas en forma secuencial. Entrada de datos Procesamientos de datos Salida de resultados Los
Más detallesClases en C++ Agustín J. González ELO329
Clases en C++ Agustín J. González ELO329 1 Clases y Objetos Una clase es un tipo de datos definido por el usuario. Provee un molde o diseño" para múltiples objetos del mismo tipo o categoría. Un objeto
Más detallesNecesidad de la herencia pertenencia variedad is a has a herencia variedad definir una clase modificando una o más clases añadir nuevos miembros
Necesidad de la herencia La mente humana clasifica los conceptos de acuerdo a dos dimensiones: pertenencia y variedad. Se puede decir que el Ford Fiesta es un tipo de coche (variedad o, en inglés, una
Más detallesTema: Introducción al IDE de Microsoft Visual C#.
Tema: Introducción al IDE de Microsoft Visual C#. Objetivos: El propósito de este tema es que el alumno se familiarice con el entorno de desarrollo de Visual C# Express mientras crea el formulario más
Más detallesExamen Septiembre Curso 2001-2002 -- Programación en C++ Pág. 1
Examen Septiembre Curso 2001-2002 -- Programación en C++ Pág. 1 ÍNDICE ÍNDICE... 1 1.1 Ejercicio 1: Convertidor Dec->Hex y Hex->Dec (5.0 ptos.)... 1 1.1.1 Apartado A (4.0 ptos.)... 1 1.1.2 Apartado B (1.0
Más detalles