Programacion C

Post on 29-Jun-2015

3.953 views 2 download

Transcript of Programacion C

Lenguaje Alto Nivel IParte I

Ing. Fausto Loja Mora

Agenda

• Conceptos Básicos• Lectura y Escritura de Archivos• Introducción a los objetos y a las clases• Funciones Miembro

Entrada/Salida• Se necesita incluir la librería iostream.h

– #include <iostream.h>• Salidas con cout

– Permite enviar a pantalla texto (encerrado entre comillas dobles) y/o variables y/o expresiones.

– Ejemplos:• Texto: cout << “Hola Mundo C++”;• Variables: cout << total;• Texto y Variables: cout << “El resultado es” << total• Expresiones: cout << “El resultado:”<<(contador * 2)

• << se conoce como operador inserción

Entrada/Salida• Secuencias de Escape: una combinación de un \ y un

carácter.• El \ le dice al computador que el carácter que sigue no

tiene el mismo significado que cuando aparece solo.• Ejemplos:

– Nueva línea: \n– Tabulación horizontal: \t– Alerta: \a– Diagonal invertida: \\– Comillas dobles: \”

Entrada/Salida

• Entrada con cin:– Es muy similar a cout con la diferencia que utilizamos cin y las

flechas apuntan en sentido contrario >>– La instrucción cin hace que el contenido de las variables sea

igual a los valores introducidos mediante teclado.– Ejemplos:

• cin >> sumandoA >> sumandoB;• Cin >> sumandoA >> sumandoB;

Estructuras Condicionales

if(<condicion>){<sentencias>;

}else{

<sentencias>;}

Flujo if

Estructuras Condicionales

• switch(<expresión>){ case <val>:<sentencias>;break;

case <val>:<sentencias>;break; case <val>:<sentencias>;break;

default:<sentencias>; }

Flujo switch

Ejemplo if

Ejemplo

Ejecución

Ejemplo switch

Ejecución

Ciclos Repetitivos

• while• do while• for

Ejemplo while

Ejecución

Ejemplo do while

Ejecucion

Ejemplo for

Archivos (E/S)

• Importar libreria <fstream.h>• Existen flujos de entrada y salida• ifstream (entrada)• ofstream(salida)

Clases para E/S

Abrir archivos

• flujo.open(“archivo.ext”)• ofstream ( const char * filename, openmode mode =

out | trunc );

bit effect

app Ubicar al final del archivo al realizar operación de salida

ate Ubicar al final del archivo al realizar apertura del archivo

binary Archivo Binario

in Permitir Lectura

out Permitir Escritura

trunc Borrar al abrir

Leer, Escribir

• Lectura >> get(char s)getline (char* s, streamsize n );

• Escribir <<put(char)write(char,size)

Ejemplo archivos

Ejemplo archivo

Ejecución

Archivo de Salida

cin.getline(nombres,'\n');

Programación Orientada a Objetos

Programación OO

• Clase

- Atributos(color, tamaño, marca, etc)- Métodos (pintar, escribir, etc)

Otros conceptos

• Sobrecarga• Constructores• Destructores• Polimorfismo

Ejemplo Clase parte 1/2

Ejemplo clase parte 2/2

Ejemplo Clase Parte 1/5

Ejemplo Clase Parte 2/5

Ejemplo Clase Parte 3/5

Ejemplo Clase Parte 4/5

Ejemplo Clase Parte 5/5

Sobrecarga de Operadores

• Los operadores pueden ser sobrecargados para que su comportamineto sea diferente

Ejemplo parte 1/2

Ejemplo parte 2/2

Ejecución

Bibliografía• http://www.conclase.net/c/curso/index.php• http://c.conclase.net/ficheros/index.php• http://www.codersource.net/cpp_file_io.html• http://fpsalmon.usc.es/genp/doc/cursos/C++/io/

tofiles.html• http://ieee.udistrital.edu.co/concurso/programacionII/

Programacion2/html/x238.html• http://www.geocities.com/chuidiang/sobrecarga/

sobrecarga.html

Lenguaje Alto Nivel IParte II

Ing. Fausto Loja Mora

Agenda

• Herencia• Arreglos• Matrices• Punteros• Listas Enlazadas

Herencia

• Mecanismo de la POO., por medio de la cual una clase deriva de otra.

• Reutilización de código• Todos los atributos y métodos son heredados

de la clase base.

Herencia

Clase Base

Clase Derivada

Método Principal

Arreglos

• Conjunto de elementos que tienen u mismo tipo de dato.

Tipos de Arreglos

• De una dimensión

• De dos dimensiones

a b c d e

1 2 2

2 1 2

2 2 1

Vectores

• Colección de elementos que tienen un mismo tipo de dato.• Para acceder a los arreglos se lo hace mediante un índice.

0 1 2 3

Ejemplo Vectores 1/3

Ingreso

Ejemplo Vectores 2/3

Ejemplo Vectores 3/3

Ordenación

Proceso Ordenación

Proceso Ordenación

Proceso Ordenación

Matrices

• Colección de Elementos de un solo tipo de dato que tiene dos dimensiones.

• Contiene Filas y Columnas.• Se accede a sus valores por medio de dos

índices.

Ejemplo Matrices 1/2

Ejemplo Matrices 2/2

Ejecución ingreso datos

Ejecución suma matrices

Apuntadores

• Un apuntador es una variable que guarda la dirección de memoria en donde se encuentra un dato.

• Se trabaja con dos operadores– * Para el valor– & Para la dirección

Ejemplo Apuntador

Ejecución

Listas

• Una lista en un conjunto de nodos.• Cada nodo puede contener un conjunto de

campos.• En los campos existe un apuntador.• Se usan estructuras, en donde se definen los

campos

Estructuras

struct Persona{char nombre[40];int Edad;Persona *sig;

}

Lista

Lista

Definiendo la Estructura

Creando el primer nodo

Presentar Lista

Buscando Nodo

Presentación

Eliminando nodo

Ejecución Ordenación

ListaCABEZA

COLA

Eliminando la cabezA

CABEZA

COLA

Eliminando la Cola

CABEZA

COLA

AUX

AUX1

Eliminando la Cola

CABEZA

COLA

AUX

AUX1

Eliminar intermedioCABEZA

COLA

AUX

AUX1

Eliminar intermedioCABEZA

COLA

AUX

AUX1

Bibliografía• http://www.conclase.net/c/curso/index.php• http://c.conclase.net/ficheros/index.php• http://www.codersource.net/cpp_file_io.html• http://fpsalmon.usc.es/genp/doc/cursos/C++/io/

tofiles.html• http://ieee.udistrital.edu.co/concurso/programacionII/

Programacion2/html/x238.html• http://www.geocities.com/chuidiang/sobrecarga/

sobrecarga.html

Gracias

fjloja@utpl.edu.ec