Sei sulla pagina 1di 48

NDICE

1. Introduccin Al Lenguaje C++ 2. Tipos De Datos En C++ 3. Entrada Y Salida Bsica 4. Estructuras De Control 5. Funciones 6. Arreglos 7. Cadenas Estructuras 8. Recomendaciones 9. Bibliografa

INTRODUCCIN Esta Gua de C++, es una recopilacin de conceptos tericos y ejercicios sobre C++ tomados de Internet y actualizados por la Lic. Iris Rangel. Se Utilizar para la prueba de los ejercicios el compilador Dev-C++ , Borland C ++ y Linux. Dev-C++ entorno de desarrollo para C/C++. Consiste en un editor de mltiples ventanas integrado con un compilador que nos permitir una compilacin, un enlace y una ejecucin de aplicaciones rpida y de Fcil uso. Borland C + + es un C y C + + entorno de programacin es decir, un entorno de desarrollo integrado. La gua esta compuesta por temas tiles que servirn como referencia rpida en el aprendizaje del lenguaje C++. Los temas a tratar en la guia son los siguientes: Introduccin Al Lenguaje C++ , Tipos De Datos En C++, Entrada Y Salida Bsica, Estructuras De Control, Funciones, Arrays Y Cadenas, Apuntadores, Estructuras, Entrada Y Salida Por Archivos y la Biblioteca Estndar De C++. Por qu el lenguaje C++ y no otro?, porque es el lenguaje en el cual se han basado para crear otros lenguajes como Java o C#, porque se pueden encontrar muchas similitudes con otros lenguajes y adems porque sigue siendo vigente, podramos sealar que la base del sistema operativo Linux esta creado casi al 100% con ste lenguaje. Aunque una programacin avanzada no sea el objetivo de este manual, se tiene presente el incitar a que, despus de concluir el aprendizaje de ste, se tengan los conocimientos suficientes y los deseos de investigar y aprender por su cuenta ms sobre este u otro lenguaje de programacin.

INTRODUCCIN AL LENGUAJE C++ HISTORIA: La historia del lenguaje de programacin C++ comienza a principios de los aos 70, con un programador de nombre Dennis Ritchie que trabajaba en los laboratorios de AT&T Bell. Trabajando con un lenguaje llamado BCPL inventado por Martin Richards (que luego influy para crear el B de Ken Thompson), Dennis deseaba un lenguaje que le permitiese manejar el hardware de la misma manera que el ensamblador pero con algo de programacin estructurada como los lenguajes de alto nivel. Fue entonces que cre el C que primeramente corra en computadoras PDP-7 y PDP-11 con el sistema operativo UNIX. Pero los verdaderos alcances de lo que sera ste, se veran poco tiempo despus cuando Dennis volvi a escribir el compilador C de UNIX en el mismo C, y luego Ken Thompson (diseador del sistema) escribi UNIX completamente en C y ya no en ensamblador. Al momento de que AT&T cedi (a un precio bastante bajo) el sistema operativo a varias universidades, el auge de C comenzaba. Cuando fueron comerciales las computadoras personales, empezaron a disearse varias versiones de compiladores C, ste se convirti en el lenguaje favorito para crear aplicaciones. En 1983, el Instituto Americano de Normalizacin (ANSI) se dio a la tarea de estandarizar el lenguaje C, aunque esta tarea tard 6 aos en completarse, y adems con la ayuda de la Organizacin Internacional de Normalizacin (ISO), en el ao de 1989 defini el C Estndar. A partir de ste, se dio pie para evolucionar el lenguaje de programacin C. Fue en los mismos laboratorios de AT&T Bell, que Bjarnes Stroutstrup dise y desarroll C++ buscando un lenguaje con las opciones de programacin orientada a objetos. Ahora el desarrollo del estndar de C++ acaparaba la atencin de los diseadores. En el ao 1995, se incluyeron algunas bibliotecas de funciones al lenguaje C. Y con base en ellas, se pudo en 1998 definir el estndar de C++.

Algunas personas podran pensar que entonces C++ desplaz a C, y en algunos aspectos podra ser cierto, pero tambin es cierto que algunas soluciones a problemas requieren de la estructura simple de C ms que la de C++, C generalmente es usado por comodidad para escribir controladores de dispositivos y computadoras con recursos limitados. La base del lenguaje fue creada por programadores y para programadores, a diferencia de otros lenguajes como Basic o Cobol que fueron creados para que los usuarios resolvieran pequeos problemas de sus ordenadores y el segundo para que los no programadores pudiesen entender partes del programa. C++ es un lenguaje de nivel medio pero no porque sea menos potente que otro, sino porque combina la programacin estructurada de los lenguajes de alto nivel con la flexibilidad del ensamblador. La siguiente tabla muestra el lugar del lenguaje respecto a otros. para programas de

ESTRUCTURA BSICA DE UN PROGRAMA // El comentario general del propsito del programa debe de ir aqu SECCIN DEL PREPROCESADOR #include <iostream.h> #include <nombreArchivo> SECCIN FUNCIN PRINCIPAL void main( void ) { // Empieza el bloque de la funcin principal } // Final del bloque de la funcin principal

TIPOS DE DATOS EN C++

TIPO DATO
unsigned char char short int unsigned int int unsigned long enum long float double long double void

Tipo
Caracter Caracter Entero Entero Entero Entero

ESPACIO MEMORIA
8 bits 8 bits 16 bits 32 bits 32 bits 32 bits 16 bits

RANGO
0 a 255 -128 a 127 -32,768 a 32,767 0 a 4,294,967,295 -2,147,483,648 a 2,147,483,647 0 a 4,294,967,295 -2,147,483,648 a 2,147,483,647 -2,147,483,648 a 2,147,483,647 3.4 x 10-38 a 3.4 x 10+38(6 dec) 1.7 x 10-308 a 1.7*10+308(15 dec) 3.4 x 10-4932 a 1.1 x 10+4932

Decimal Decimal Decimal Decimal Nulo

32 bits 32 bits 64 bits 80 bits sin valor

OPERACIONES BSICAS El lenguaje C soporta diferentes tipos de operadores: aritmticos, lgicos y relacinales. Operadores Aritmticos Operador Suma Resta Multiplicacin Divisin Residuo Signo (negativo) Operadores Relacinales Operador Smbolo Ejemplo Significado Igual == x == y x es igual a y Diferente != x != y x es diferente de y Mayor que > x>y x es mayor que y Mayor o igual que >= x >= y x es mayor o igual que y Menor que < x<y x es menor que y Menor o igual que <= x <= y x es menor o igual que y Operadores Lgicos Operador Smbolo Ejemplo Significado Y (AND) && (a>b) && (c<d) a es mayor que b y c es menor que d O (OR) || (a>b) || (c<d) a es mayor que b o c es menor que d NEGACION (NOT) ! !(a>b) a no es mayor que b Smbolo + * / % Ejemplo Significado a+b a ms b a-b a menos b a*b a por b a/b a dividido b a%b a residuo de b -a a negativo

ENTRADA Y SALIDA BSICA En general la obtencin de datos de entrada a los programas se conoce como Lectura (CIN) y la generacin de datos desde los programas se denomina Escritura (COUT).

La mayora de los programas en C++ incluyen el archivo de encabezado <iostream.h>, el cual contiene la informacin bsica requerida para todas las operaciones de entrada y salida (E/S) de flujo (Un flujo es simplemente una secuencia de bytes. En las peraciones de entrada, los bytes fluyen desde un dispositivo). SALIDA (COUT). Cout es un objeto de la clase ostream, y se dice que est enlazado al dispositivo de salida estndar que normalmente es la pantalla. El operador de insercin de flujo, como se utiliza en la siguiente instruccin, causa que al valor de la variable entera calificacin se le d salida desde la memoria hacia el dispositivo de salida estndar: cout << calificacin; Formato general para la instruccin cout: cout << elemento1 << elemento2 << elemento 3 << ... << elementoN;

Despus de cout sigue una lista de elementos para escribirse, los cuales estn separadas por el operador de insercin de flujo <<. De esta manera, un enunciado cout representa una secuencia o flujo de datos o que se dirige a la pantalla de monitor. Ejemplos: 1.- /* El siguiente programa: SALUDOS1.CPP, muestra la salida de una cadena utilizando una sola instruccin de insercin de flujo. */ #include <iostream.h> //Para cout void main( void ) { cout << "Bienvenidos a la ESCUELA TECNICA COMERCIAL ROBINSONIANA MANUEL PALACIOS FAJARDO!"; }//Fin de main( )

2.- /* El siguiente programa: SALUDOS2.CPP, muestra la salida de una cadena utilizando varias instrucciones de insercin de flujo. */ #include <iostream.h> //Para cout void main( void ) { cout << "Bienvenidos a la "; cout << " ESCUELA TECNICA COMERCIAL ROBINSONIANA MANUEL PALACIOS FAJARDO! "; }//Fin de main( ) 3.- /* El siguiente programa: CASCADA.CPP, ilustra el uso del operador de insercin << utilizado en forma de cascada. */ #include <iostream.h> //Para cout void main( void ) { cout << "15 ms 27 es: " << ( 15 + 27 ) << endl; }//Fin de main( ) 4.- /* El siguiente programa: CVALNUM.CPP, muestra como cout visualiza cadena de caracteres y nmeros. */ #include <iostream.h> // Para cout void main( void ) { cout << "cout le permite visualizar cadenas de caracteres, nmeros enteros\n"; cout << "y de punto flotante.\n\n"; cout << 1001; cout << '\n'; cout << 1.2345; } // Fin de main( )

5.- /* El siguiente programa: UNCOUT.CPP, le muestra como se puede utilizar un solo cout para escribir cadenas y nmeros de diferentes tipos. */

#include <iostream.h> // Para cout void main( void ) { cout << "cout visualiza cadenas " << "\n\n" << 1001 << '\n' << 1.2345; } // Fin de main( )

6.- /* El siguiente programa: OHM.CPP, calcula y muestra el voltaje usando la ley de OHM. */ #include <iostream.h> // Para cout void main( void ) { float voltaje = 0.0; // Para el voltaje calculado. float corriente = 0.001; // Valor de la corriente. float resistencia = 4700.0; // Valor de la resistencia. // Breve descripcin del programa. cout << "Este programa calcular el voltaje dada una corriente de 0.001 " "amperes\ny una resistencia de 4700.0 ohms." << endl << endl; // Clculo del voltaje utilizando la ley de Ohm. voltaje = corriente * resistencia; // Mostrar los resultados. cout << "Valor de corriente = " << corriente << " amperes.\n" "Valor de resistencia = " << resistencia << " ohms.\n" "Valor del voltaje resultante = " << voltaje << " volts" << endl; } // Fin de main ( )

ENTRADA (CIN). Cin es un objeto de la clase istream, y se dice que est enlazado (o conectado) al dispositivo de entrada estndar que normalmente es el teclado. El operador de Extraccin de flujo, como se utiliza en la siguiente instruccin, causa que un valor para la variable entera calificacin (suponiendo que calificacin ha sido declarada como int) se reciba desde cin hacia la memoria:

cin >> calificacin; Formato general para CIN: cin >> variable; Despus del objeto cin sigue un doble pico parntesis a la derecha, el operador de extraccin de flujo, >>, seguido por la variable a la que asignar los datos EJEMPLOS 1.- /* El siguiente programa: CIN1.CPP, calcula la suma de dos enteros introducidos desde el teclado mediante cin y el operador de extraccin de flujo. */ #include <iostream.h> //Para cin y cout void main(void) { int x, y; cout << Introduzca dos nmeros enteros: ; cin >> x >> y; cout << La suma de << x << y << y << es: << (x + y) << endl; }//Fin de main() 2.-/* El siguiente programa: CIN2.CPP, prev de un problema de precedencia entre el operador de insercin de flujo y el operador condicional. Se necesitan parntesis alrededor de la expresin condicional. */ #include <iostream.h> //Para cout y cin void main(void) { int x, y; cout << Introduzca dos nmeros enteros: ; cin >> x >> y; cout << x << (x == y ? es : no es) << igual a << y << endl; }//Fin de main() 3.-/* El siguiente programa: CIN3.CPP, asigna el nmero tecleado a la variable numero. */

#include <iostream.h> // Para cout void main(void) { int numero ; // El nmero ledo desde el teclado cout << "Digite su nmero ENTERO favorito y oprima INTRO: "; cin >> numero; cout << "Su nmero entero favorito es: " << numero << endl; } //Fin de main() 4.- // El siguiente programa: USOCIN.CPP, muestra el uso de la operacin cin. #include <iostream.h> //Para cout void main(void) { // Se definen las variables int registro1 = 0; float registro2 = 0.0; // Pide y lee los datos del usuario cout << "Escriba un nmero ENTERO : "; cin >> registro1; cout << "Escriba un nmero DECIMAL : "; cin >> registro2; cout << endl; cout << "Los nmeros escritos son :" << endl; cout << registro1 << endl; cout << registro2 << endl; } //Fin de main() 5.- // El siguiente programa: LEECAR.CPP, ilustra la lectura de datos de la clase caracter. #include <iostream.h> //Para cout void main(void) { // Define las variables ingresadas y las inicializa con espacio en blanco. char calificacion1 = ' ';

char calificacion2 = ' '; char calificacion3 = ' '; // Lectura/escritura de los datos del usuario cout << "Introduzca una calificacin (R,D,C,B,A): "; cin >> calificacion1; cout << "La calificacin introducida fue: " << calificacion1 << endl << endl; cout << "Introduzca una calificacin (R,D,C,B,A): "; cin >> calificacion2; cout << "La calificacin introducida fue: " << calificacion2 << endl << endl; cout << "Introduzca una calificacin (R,D,C,B,A): "; cin >> calificacion3; cout << "La calificacin introducida fu: " << calificacion3 << endl << endl; } //Fin de main()

ESTRUCTURA DE CONTROL

Desde el principio se estableci que C++ es un lenguaje de programacin estructurado. Este tipo de lenguaje facilita la escritura, la verificacin, la lectura, la documentacin y el mantenimiento de los programas. Una razn principal es la caracterstica de que sea modular y con programacin estructurada. Por modular se entiende que cualquier programa, sin importar qu tan complejo sea, puede dividirse en mdulos de programas independientes ms sencillos. De hecho, cualquier programa complejo puede separarse en mdulos que conforman uno de los tres patrones fundamentales llamados estructuras de control. Una estructura de control es simplemente un patrn para controlar el flujo de un mdulo de programa. Las tres estructuras de control fundamentales de un lenguaje de programacin estructurado son: secuencia, seleccin o decisin e iteracin. SECUENCIA Es una serie de enunciados secuenciales paso a paso. SELECCIN O DECISIN Permiten modificar el flujo del programa, dependiendo de una o ms condiciones. Se destina a la toma de decisiones. INSTRUCCIN IF La instruccin If puede ser verdadera (diferente de cero) o falsa (cero). FORMATO If if (expresin de verificacin) { enunciado 1; enunciado 2; ................... // Enunciado compuesto enunciado n; } // Fin de if

EJEMPLOS

1.- Determine la salida para cada uno de los siguientes segmentos de programa. Suponga que x y tienen las siguientes asignaciones antes de la ejecucin de cada operacin if.

x = 2; y = 3; a. if (x < y) { cout << x = << x << endl; cout << y = << y << endl; } // Fin del if b. if (x) cout << El valor de x es diferente de cero. << endl; c. if (x < y) { temp = y; y = x; x = temp; cout << x = << x << endl; cout << y = << y << endl; } // Fin del if d. if ((x < y) && (y != 10)) { suma = x + y; cout << x = << x << endl; cout << y = << y << endl; cout << Suma = << suma << endl; } // Fin del if e. if ((x > y) || (x y < 0)) { ++x; --y;

cout << x = << x << endl; cout << y = << y << endl; } // Fin del if f. if (( x > y) || (x * y < 0)) { ++x; --y; } // Fin del if cout << x = << x << endl; cout << y = << y << endl; g. if ((x % y) == 10) cout << x es divisible entre y. << endl; cout << x no es divisible entre y. << endl; 2.- /* El siguiente programa: IFSIMPLE, utiliza el enunciado if para comparar el valor de la variable calificacin con 90. Si la calificacin es mayor o igual a 90, el programa visualiza un mensaje, en caso contrario simplemente termina. */ #include <iostream.h> // Para cout void main(void) { int calificacion = 95; if (calificacion >= 90) cout << "Felicidades, obtuviste una A!" << endl; } // Fin de main()

3.- /* El siguiente programa: IGUALDIS.CPP, ilustra la prueba de igualdad (==) y diferente a (!=), utilizando if.

*/ #include <iostream.h> // Para cout void main (void) { int edad = 21; int altura = 73; if (edad == 21) cout << "La edad del usuario es de 21 aos" << endl; if (edad != 21) cout << "La edad del usuario no es de 21 aos" << endl; if (altura == 73) cout << "La altura del usuario es de 73 pulgadas" << endl; if (altura != 73) cout << "La altura del usuario no es de 73 pulgadas" << endl; } // Fin de main() 4.- /* El siguiente programa: IFCIN.CPP, solicita un nmero de punto flotante. En caso de ser distinto de cero, calcula el recproco del mismo. */ #include <iostream.h> // Para cout y cin void main(void) { double x; cout << "Introduzca un nmero distinto de cero: "; cin >> x; if (x != 0) cout << "El recproco de " << x<< " es " << (1 / x) << endl; } // Fin de main()

5.- /* El siguiente programa: IFCMP.CPP, utiliza un enunciado compuesto tanto para if como para else. */

#include <iostream.h> // Para cout void main(void) { int calificacion = 65; if (calificacion >= 90) { cout << "Felicidades, obtuviste una A!" << endl; cout << "Tu calificacin fu de: " << calificacion << endl; } //Fin de if else { cout << "Tiene que trabajar duro!" << endl; cout << "Perdiste: " << (100 - calificacion) << " puntos " << endl; } //Fin de else } //Fin de main() 6.- /* El siguiente programa: ANIDADO.CPP, ilustra el uso de los if anidados. Salida: Muestra la palabra "VAPOR", "HIELO" o "AGUA", dependiendo de la temperatura que escriba el usuario. Entrada: Temperatura en Celsius escrita por el usuario. Procesamiento: Verifica el valor de la temperatura contra el rango de 0 a 100 grados Celsius. */ #include <iostream.h> // para cin y cout void main(void) { //Definicin de variable. float temperatura = 0.0; // Valor de temperatura dado por el usuario // Muestra el mensaje de la descripcin del programa al usuario. cout << "Este programa calcular una temperatura para ver si\n" "produce hielo, agua o vapor." << endl << endl; // Obtiene la temperatura que escribe el usuario. cout << "Escriba una temperatura en grados Celsius: "; cin >> temperatura;

if (temperatura > 0) { if (temperatura >= 100) cout << "VAPOR" << endl; else cout << "AGUA" << endl; } else cout << "HIELO" << endl; // Verificacin de si la temperatura es agua, vapor o hielo. If (temperatura > 0) If (temperatura >= 100) cout << "VAPOR" << endl; else cout << "AGUA" << endl; else cout << "HIELO" << endl; } // Fin de main() INSTRUCCIN SWITCH Permite al programa seleccionar una de muchas opciones o casos (cases). La seleccin de un caso en particular se controla mediante un proceso de comparacin. Primero se evala una expresin a la que llamaremos selector para producir un valor. Despus, el valor del selector se compara con una serie de opciones. Si el valor del selector iguala a uno de los valores de las opciones, se ejecuta el enunciado case correspondiente. Si no se satisface ninguna comparacin, el programa simplemente contina con el siguiente enunciado que sigue al enunciado switch.

Sintaxis general : switch (expresin)

{ case constante1_1: [case constante1_2: ...] <uno o ms enunciados>; break; case constante2_1: [case constante2_2: ...] <uno o ms enunciados>; break; ............................................................................... case constanteN_1: [case constanteN_2: ...] <uno o ms enunciados>; break; default: <uno o ms enunciados>; break; } EJEMPLO /* El siguiente programa: SWITCH.CPP, soluciona al programa IFMUL.CPP utilizando el enunciado switch. */ #include <iostream.h> // Para cout y cin void main(void) { char c; cout << "Introduzca un carcter: "; cin >> c; switch (c) { case 'A': case 'B': case 'C':

case 'D': // otras etiquetas case cout << "Introdujo una letra mayscula" << endl; break; case 'a': case 'b': case 'c': case 'd': // otras etiquetas case cout << "Introdujo una letra minscula" << endl; break; case '0': case '1': case '2': case '3': // otras etiquetas case cout << "Introduje un dgito" << endl; break; default: cout << "Introdujo un carcter no alfanumrico" << endl; break; } //Fin de switch } //Fin de main()

ITERACIN Es una estructura de control de ciclo. INSTRUCCIN WHILE Es un ciclo de preverificacin porque se hace una prueba antes de que los enunciados del ciclo se puedan ejecutar. Si la expresin de verificacin es verdadera (diferente de cero ) se ejecutarn los enunciados del ciclo. Si la expresin de verificacin es falsa (cero) se ignorarn los enunciados del ciclo y se ejecutar el siguiente enunciado que sigue al ciclo.

FORMATO while (expresin de verificacin) { enunciado 1; enunciado 2; .................... // Enunciados del ciclo enunciado n; } // Fin de while EJERCICIOS 1.- /* El siguiente programa: MSTWHILE.CPP, ilustra las cuatro partes de un ciclo while. Muestra en la pantalla los nmeros del 1 al 100 separados por un espacio en blanco. */ #include <iostream.h> // Para cout void main(void) { int contador = 1; // Inicializa la variable de control while (contador <= 100) // Prueba la condicin { cout << contador << ' '; // Ejecuta los enunciados contador++; // Modifica la variable de control } // Fin de while } // Fin de main()

2.- /* El siguiente programa: OBTSN1.CPP, le pide que teclee S (para s) o N (para No) A continuacin el programa ejecuta un ciclo while, para leer caracteres desde el teclado hasta que teclee S o N. */

#include <iostream.h> // Para cin y cout void main(void) { int hecho = 0; // Se pone en verdadero cuando se encuentra S o N char letra; while (!hecho) { cout << "\nDigite S o N y oprima Intro para continuar: "; cin >> letra; if ((letra == 'S') || (letra == 's')) hecho = 1; else if ((letra == 'N') || (letra == 'n')) hecho = 1; else cout << '\a'; // Suena la campana para carcter invlido } // Fin de while cout << "La letra que tecle fu: " << letra << endl; } // Fin de main() 3.- /* El siguiente programa: WHILE.CPP, calcula la suma y el promedio de un rango de enteros usando un bucle while. */ #include <iostream.h> // Para cout y cin void main(void) { int contador = 0; // Variable para determinar el nmero de enteros sumados double suma = 0.0; // Acumulador con la suma de todos los enteros del rango int primero, ultimo, temporal; // Variable inicial y final del rango. // temporal es una variable auxiliar, para // intercambiar si es necesario los valores // entre primero y ultimo. cout << "Introduzca el primer entero: "; cin >> primero; cout << "Introduzca el segundo entero: ";

cin >> ultimo; if (primero > ultimo) { temporal = primero; primero = ultimo; ultimo = temporal; } // Fin del if cout << "La suma de los enteros desde " << primero << " hasta " << ultimo << ": "; while (primero <= ultimo) { contador++; suma += (double) primero++; } // Fin del while cout << suma << endl; cout << "El promedio es de: " << suma / contador << endl; } // Fin del main()

INSTRUCCIN DO/WHILE La verificacin del Do/While se hace al final del ciclo, en lugar que al principio del ciclo. Esta es la diferencia principal entre while y do/while. Ya que do/while es un ciclo posverificador, los enunciados del ciclo siempre se ejecutarn por lo menos una vez. Para romper el ciclo, la expresin de verificacin debe convertirse en falso (cero) De este modo, si el valor de la verificacin es inicialmente verdadero, algo debe suceder dentro del ciclo para cambiar el valor a falso; de lo contrario, tendr un ciclo infinito. FORMATO do { enunciado 1; enunciado 2; .................. // Enunciados del ciclo

enunciado n; } // Fin de do/while EJEMPLO 1.- /* El siguiente programa: MENU3.CPP, ilustra el uso de do while. */ #include <iostream.h> // Para cout y cin #include <conio.h> #include <ctype.h> // Para toupper() #include <stdlib.h> void main(void) { char letra; do { cout << "[A] Ejecuta el comando DIR" << endl; cout << "[B] Ejecuta el comando CHKDSK" << endl; cout << "[C] Ejecuta el comando DATE" << endl; cout << "[S] Salir" << endl; cout << "Su eleccin: "; cin >> letra; letra = toupper(letra); if (letra == 'A') system("DIR"); else if (letra == 'B') system("CHKDSK"); else if (letra == 'C') system("DATE"); } while (letra != 'S'); } // Fin de main() INSTRUCCIN FOR

Se le llama ciclo de repeticin fija porque el ciclo se repite un nmero determinado de veces. FORMATO for(<clases de datos> contador = valor inicial; expresin de verificacin contador; incrementa o decrementa contador) { enunciado 1; enunciado 2; ................... // Enunciados del ciclo enunciado n; } // Fin del for EJEMPLO 1.- /* El siguiente programa: PRIMFOR.CPP, utiliza el ciclo for para visualizar los valores del 1 al 100 en su pantalla. */ #include <iostream.h> // Para cout void main(void) { int contador; for(contador = 1; contador <= 100; contador++) cout << contador << ' '; } // Fin de main() 2.- /* El siguiente programa: PRGCONTA.CPP, despliega un mensaje preguntando por un nmero que indica cuando debe terminar el ciclo. El programa muestra los nmeros entre uno y el valor tecleado. */ #include <iostream.h> //Para cin y cout void main(void) { int contador; int valorFinal;

cout << "Teclee el valor final y oprima Intro: "; cin >> valorFinal; for(contador = 1; contador <= valorFinal; contador++) cout << contador << ' '; } //Fin de main() 3.- /* El siguiente programa: SUM1_100.CPP, despliega los nmeros del 1 al 100 y al mismo tiempo acumula el valor de los nmeros mostrados. */ #include <iostream.h> //Para cout void main(void) { int contador; int total = 0; for(contador = 1; contador <= 100; contador++) { cout << "Sumar " << contador << " a " << total; total = total + contador; cout << " da un gran total de " << total << endl; }//Fin del for } //Fin del main()

FUNCIONES Cuando los programas se vuelven ms complejos, los programadores descomponen el programa en pequeos subprogramas llamados funciones. Cada funcin debe realizar una tarea especfica. Cuando el programa requiere de la tarea, llama a la funcin, proporcionndole toda la informacin que requiera para llevar a cabo la tarea. FORMATO claseRetorno nombreFuncion (listaParametros) { declaracin Variables; enunciados; }

FORMATO DE FUNCIONES DEFINIDAS POR EL USUARIO // Encabezado de la funcin <claseRetorno> <nombreFuncin> (<listaParmetros>) {// Empieza el bloque de enunciados de la funcin // Variables y constantes locales <los objetos variables y las constantes locales debern ir aqu> // Enunciados de la funcin o cuerpo enunciado #1; enunciado #2; ....................................... enunciado #n; return <valor de regreso>; } // Final del bloque de enunciados de la funcin EJEMPLOS 1.- /* El siguiente programa: SUMAVAL.CPP, llama a una funcin llamada sumaValores, la cual calcula la suma de dos nmeros enteros. */ #include <iostream.h> //Para cout int sumaValores(int a, int b) { return (a+b); } //Fin de sumaValores() void main(void) { cout << "100 + 200 = " << sumaValores(100, 200) << endl; cout << "500 + 501 = " << sumaValores(500, 501) << endl; cout << "-1 + 1 = " << sumaValores(-1, 1) << endl; } //Fin de main() 2.- El siguiente programa: MSTRMSJ.CPP, crea una funcin muestraMensaje(), para visualizar un mensaje. */

#include <iostream.h> //Para cout void muestraMensaje(void) { cout << "Hola, he sido rescatado por C++" << endl; } //Fin de muestraMensaje() void main(void) { cout << "Llamado a una funcin" << endl << endl; muestraMensaje(); cout << endl << "Regreso del llamado a la funcin" << endl; } //Fin de main() 3.- /* El siguiente programa: DOSMSJ.CPP, utiliza dos funciones para enviar cada una un mensaje. */ #include <iostream.h> //Para cout void muestraTitulo(void) { cout << "APUNTES: Apuntes de COMPUTACION I" << endl; } //Fin de muestraTitulo() void muestraLeccion(void) { cout << "LECCION: Conocimientos bsicos sobre funciones" << endl; } //Fin de muestraLeccion() void main(void) { muestraTitulo(); muestraLeccion(); } //Fin de main()

3.- /* El siguiente programa: USOPAR.CPP, elabora una funcin que muestra los diferentes parmetros que le son enviados. */

#include <iostream.h> //Para cout void mostrarNumero(int valor) { cout << "El valor del parmetros es: " << valor << endl; } //Fin de mostrarNumero() void main(void) { mostrarNumero(1); mostrarNumero(1001); mostrarNumero(-532); } //Fin de main() 4.- /* El siguiente programa: GDEPEQ.CPP, crea una funcin que determina y muestra cual es el mayor y el menor de tres enteros que le son enviados. */ #include <iostream.h> //Para cout void mostrarGdeYPeq (int a, int b, int c) { int pequeno = a; int grande = a; if (b > grande) grande = b; if (b < pequeno) pequeno = b; if (c > grande) grande = c; if (c < pequeno) pequeno = c; cout << "El valor ms grande es: " << grande << endl; cout << "El valor ms pequeo es: " << pequeno << endl; } //Fin de mostrarGdeYPeq() void main (void) { mostrarGdeYPeq (1, 2, 3); cout << endl;

mostrarGdeYPeq (500, 0, -500); cout << endl; mostrarGdeYPeq (1001, 1001, 1001); } //Fin de main() 5.- /* El siguiente programa: SINCAM.CPP, ilustra el uso de paso de argumentos por valor */ #include <iostream.h> //Para cout void despliegaValores(int a, int b) { a = 1001; b = 1001; cout << "Los valores dentro de la funcin despliegaValores son : " << a << " y " << b << endl << endl; } void main(void) { int grande = 2002, pequeno = 0; cout << "Los valores de grande y pequeo antes de llamar a la funcin : " << grande << " y " << pequeno << endl << endl; despliegaValores(grande, pequeno); cout << "Los valores de grande y pequeo despus de llamar la funcin : " << grande << " y " << pequeno << endl; }//Fin de main()

6.- /* El siguiente programa: CAMPAR.CPP, ilustra el uso de paso de los argumentos por referencia */ #include <iostream.h> //Para cout y cin void cambiaValores(int *a, int *b) { *a = 1001; *b = 1001; cout << "Los valores dentro de la funcin cambiaValores son : "

<< *a << " y " << *b << endl << endl; }//Fin de cambiaValores() void main(void) { int grande =2002, pequeno = 0; cout << "Los valores de grande y pequeo antes de la funcin son : " << grande << " y " << pequeno << endl << endl; cambiaValores(&grande, &pequeno); cout << "Los valores de grande y pequeo despus de ejecutar la funcin son: " << grande << " y " << pequeno << endl; }//Fin de main() ARREGLO Un arreglo es una estructura de datos indexados que se utiliza para almacenar elementos de datos de la misma clase. Proporcionan un medio organizado para localizar y almacenar datos.

EJEMPLO 1.- /* El siguiente programa: INICIALIZA.CPP, inicializa a ceros a un arreglo de 10 elementos, posteriormente imprime el contenido de dicho arreglo. */ #include <iostream.h> //Para cout y cin #include <iomanip.h> //Para setw() void main(void) { int i, arreglo[10]; for(i = 0; i < 10; i++) arreglo[i] = 0; //Inicializa el arreglo cout << "Elemento" << setw(13) << "Valor" << endl; for(i= 0; i < 10; i++) // Imprime el arreglo cout << setw(7) << i << setw(13) << arreglo[i] << endl;

}//Fin de main() 2.- /* El siguiente programa: DECLARA.CPP, inicializa los elementos de un arreglo mediante una declaracin. Mediante un for se muestra el contenido de dicho arreglo. */ #include <iostream.h> //Para cout y cin #include <iomanip.h> //Para setw() void main(void) { int i, arreglo[10] = {32, 27, 64, 18, 95, 14, 90, 70, 60, 37}; cout << "Elemento" << setw(13) << "Valor" << endl; for(int i = 0; i < 10; i++) cout << setw(7) << i << setw(13) << arreglo[i] << endl; }//Fin de main() 3.- /* Este programa: PARES.CPP inicializa un arreglo con los enteros pares comprendidos entre 2 y 20 inclusive. */ #include <iostream.h> //Para cout y cin #include <iomanip.h> //Para setw() void main(void) { const int TAMANO_ARREGLO = 10; int j, arreglo[TAMANO_ARREGLO]; for(j = 0; j < TAMANO_ARREGLO;j++) //Inicializa arreglo arreglo[j] = 2 + 2 * j; cout << "Elemento" << setw(13) << "Valor" << endl; for(j = 0; j < TAMANO_ARREGLO; j++) //Imprime los valores cout << setw(7) << j << setw(13) << arreglo[j] << endl; }//Fin de main() 4.- /* El siguiente programa: PROMEDIO1.CPP, calcula el valor promedio de un arreglo. Los elementos del arreglo estn preasignados. */ #include <iostream.h> //Para cout y cin const int TAMANO_ARREGLO = 10; void main(void)

{ double arreglo[TAMANO_ARREGLO] = { 12.2, 45.4, 67.2, 12.2, 34.6, 87.4, 83.6, 12.3, 14.8, 55.5 }; double suma = 0; for (int ix = 0; ix < TAMANO_ARREGLO; ++ix) { suma += arreglo[ix]; cout << "arreglo[" << ix << "]: " << arreglo[ix] << endl; }//Fin de for cout << endl << "Promedio: " << suma / TAMANO_ARREGLO << endl; }//Fin de main() 5.- /* El siguiente programa: PROMEDIO2.CPP, calcula el valor promedio del arreglo que es inicializado desde el teclado */ #include <iostream.h> //Para cout y cin const int TAMANO_ARREGLO = 30; void main(void) { double arreglo[TAMANO_ARREGLO]; int numeroElementos; // Obtiene la cantidad de puntos de datos do { cout << "Introduzca el nmero de puntos de datos [2 a " << TAMANO_ARREGLO << "]: "; cin >> numeroElementos; cout << endl; } while (numeroElementos < 2 || numeroElementos > TAMANO_ARREGLO); // Pide datos al usuario for (int ix = 0; ix < numeroElementos; ix++) { cout << "arreglo[" << ix << "]: "; cin >> arreglo[ix];

}//Fin de for // Ahora obtiene el promedio double suma = 0; for (int ix = 0; ix < numeroElementos; ++ix) suma += arreglo[ix]; cout << endl << "Promedio: " << suma / numeroElementos << endl; }//Fin de main() 6.- /* El siguiente programa: HISTOGRAMA.CPP, imprime un histograma. */ #include <iostream.h> //Para cout y cin #include <iomanip.h> //Para setw() void main(void) { const int TAMANO_ARREGLO = 10; int arreglo[TAMANO_ARREGLO] = {19, 3, 15, 7, 11, 9, 13, 5, 17, 1}; cout << "Elemento" << setw(13) << "Valor" << setw(17) << "Histograma" << endl; for(int i = 0; i < TAMANO_ARREGLO; i++) { cout << setw(7) << i << setw(13) << arreglo[i] << setw(9); for(int j = 0; j < arreglo[i]; j++) //Imprime una barra cout << '*'; cout << endl; }//Fin del for }//Fin de main() 7.- /* El siguiente programa: PASARRE.CPP, ilustra como se pasa un arreglo a una funcin. */ #include<iostream.h> // Para cin y cout // DECLARA EL TAMAO DEL ARREGLO const int TAMANO_ARREGLO = 3; // FUNCIN PROTOTIPO void raro(char arreglo[TAMANO_ARREGLO]); void main(void)

{ //DEFINE UN ARREGLO DE CARACTERES char nombre[TAMANO_ARREGLO]; //LLENE EL ARREGLO nombre CON CARACTERES nombre[0] ='I'; nombre[1] ='B'; nombre[2] ='M'; //MUESTRA EL ARREGLO nombre cout << El contenido de nombre[] antes de raro() es: ; for (int i = 0; i < TAMANO_ARREGLO; ++i) cout << nombre[i]; //LLAMA A LA FUNCIN raro() raro(nombre); //MUESTRA EL ARREGLO nombre cout << \n\nEl contenido de nombre[] despus de raro() es: ; for (int i = 0; i < TAMANO_ARREGLO; ++i) cout << nombre[i]; } // Fin de main() // ESTA FUNCIN DECREMENTA CADA UNO DE LOS ELEMENTOS DEL ARREGLO void raro(char arreglo[TAMANO_ARREGLO]) { for (int i = 0; i < TAMANO_ARREGLO; ++i) --arreglo[i]; } // Fin de raro() ARREGLOS MULTIDIMENSIONALES Un arreglo multidimensional es simplemente una extensin de un arreglo unidimensional. Ms que almacenar una sola lista de elementos, piense en un arreglo multidimensional como el almacenamiento de mltiples listas de elementos. EJERCICIO

1.- /* El siguiente programa: MUESTRA.CPP, usa las variables rengln y columna para visualizar los valores del arreglo llamado tabla. */ #include <iostream.h> //Para cout y cin void main(void) { int renglon, columna; float tabla[3][5] = { {1.0, 2.0, 3.0, 4.0, 5.0}, {6.0, 7.0, 8.0, 9.0, 10.0}, {11.0, 12.0, 13.0, 14.0, 15.0}}; for (renglon = 0; renglon < 3; renglon++) for (columna = 0; columna < 5; columna++) cout << "tabla[" << renglon << "][" << columna << "] = " << tabla[renglon][columna] << endl; }//Fin de main() 2.- /* El siguiente programa: FUNARRE.CPP, utiliza la funcin mostrarArreglo() para visualizar el contenido de varios arreglos de dos dimensiones. */ #include <iostream.h> //Para cout y cin void mostrarArreglo(int arreglo[][10], int renglones) { int i, j; for (i = 0; i < renglones; i++) for (j = 0; j < 10; j++) cout << "arreglo[" << i << "][" << j << "] = " << arreglo[i][j] << endl; }//Fin de mostrarArreglo() void main(void) { int a[1][10] = { {1, 2, 3, 4, 5, 6, 7, 8, 9, 10}}; int b[2][10] = { {1, 2, 3, 4, 5, 6, 7, 8, 9, 10}, {11, 12, 13, 14, 15, 16, 17, 18, 19, 20}}; int c[3][10] = { {1, 2, 3, 4, 5, 6, 7, 8, 9, 10}, {11, 12, 13, 14, 15, 16, 17, 18, 19, 20}, {21, 22, 23, 24, 25, 26, 27, 28, 29, 30}};

mostrarArreglo(a, 1); cout << endl; mostrarArreglo(b, 2); cout << endl; mostrarArreglo(c, 3); cout << endl; }//Fin de main() 3.- /* El siguiente programa: SUMARRE.CPP, regresa la suma de los valores de un arreglo bidimensional.*/ #include <iostream.h> //Para cout y cin long sumarArreglo(int arreglo[], int elementos) { long suma = 0; int i; for (i = 0; i < elementos; i++) suma += arreglo[i]; return(suma); }//Fin de sumarArreglo() void main(void) { int a[10] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10}; int b[2][10] = {{1, 2, 3, 4, 5, 6, 7, 8, 9, 10}, {11, 12, 13, 14, 15, 16, 17, 18, 19, 20}}; int c[3][10] = {{1, 2, 3, 4, 5, 6, 7, 8, 9, 10}, {11, 12, 13, 14, 15, 16, 17, 18, 19, 20}, {21, 22, 23, 24, 25, 26, 27, 28, 29, 30}}; cout << "La suma de los elementos del arreglo a[10] es = " << sumarArreglo(a, 10)<< endl; cout << "La suma de los elementos del arreglo b[2][10] es = " << sumarArreglo((int *)b, 20)<< endl; cout << "La suma de los elementos del arreglo c[3][10] es = " << sumarArreglo((int *)c, 30)<< endl; }//Fin de

4.- /* El siguiente programa: MATRIZ1.CPP, calcula el promedio de cada columna en una matriz bidimensional. */ #include <iostream.h> //Para cout y cin const int COL_MAX = 3; const int REN_MAX = 3; void main(void) { double matriz[REN_MAX][COL_MAX] = { 1, 2, 3, // Rengln #1 4, 5, 6, // Rengln #2 7, 8, 9 // Rengln #3 }; double suma, promedio; int renglones = REN_MAX, columnas = COL_MAX; // Despliega los elementos de la matriz cout << "La matriz es:" << endl; for (int i = 0; i < renglones; i++) { for (int j = 0; j < columnas; j++) { cout.width(4); cout.precision(1); cout << matriz[i][j] << " "; }//Fin del for interno cout << endl; }//Fin del for externo cout << endl; // Obtiene la suma de cada columna for (int j = 0; j < columnas; j++) { suma = 0.0; // Inicializa suma for (int i = 0; i < renglones; i++) suma += matriz[i][j]; promedio = suma / renglones;

cout << "El promedio de la columna " << j << " = " << promedio << endl; }//Fin del for }//Fin de main() CARACTERES Y CADENAS Una cadena es una serie de caracteres que se trata como unidad. Una cadena puede incluir letras, dgitos y diversos caracteres especiales, como +, -, *, /, $ y otros. En C++ las literales de cadena o constantes de cadena se escriben entre comillas, como sigue: Iris Rangel (un nombre), Una cadena en C++ es un arreglo de caracteres que termina con el carcter nulo ( \0). La biblioteca de manejo de cadenas ofrece muchas funciones tiles para la manipulacin de cadenas de datos, la comparacin de cadenas, la bsqueda de caracteres y cadenas dentro de cadenas, la divisin de cadenas en tokens (separacin de cadenas en piezas lgicas) y la determinacin de la longitud de una cadena. char *strcpy( char *s1, const char *s2 ) Copia la cadena s2 al arreglo de caracteres s1. Se devuelve el valor de s1. char *strncpy( char *s1, const char *s2, size_t n ) Copia cuando mucho n caracteres de la cadena s2 al arreglo de caracteres s1. Se devuelve el valor de s1. char *strcat( char *sl, const char *s2 ) Agrega la cadena s2 al final de la cadena s1. El primer carcter de s2 sobrescribe el carcter nulo de terminacin de s1. Se devuelve el valor de s1. char *strncat( char *sl, const char *s2, size_t n ) Agrega cuando mucho n caracteres de la cadena s2 a la cadena s1. El primer carcter de s2 sobrescribe el carcter nulo de terminacin de s1. Se devuelve el valor de s1. int strcmp( const char *sl, const char *s2 )

Compara la cadena s1 con la cadena s2. La funcin devuelve un valor de 0, menor que 0 o mayor que 0 si s1 es igual, menor o mayor que s2, respectivamente. int strncmp( const char *sl, const char *s2, size_t n ) Compara hasta n caracteres de la cadena s1 con la cadena s2. La funcin devuelve un valor de 0, menor que 0 o mayor que 0 si s1 es igual, menor o mayor que s2, respectivamente. char *strtok( char *sl, const char *s2 ) Una secuencia de llamadas a strtok divide la cadena s1 en "tokens" (piezas lgicas como palabras de una lnea de texto) separados por los caracteres contenidos en la cadena s2. La primera llamada contiene s1 como el primer argumento y las siguientes llamadas que dividen la misma cadena en tokens contienen NULL como el primer argumento. Cada llamada devuelve un apuntador al token actual. Si no hay ms tokens al llamar a la funcin, se devuelve NULL. size_t strlen( const char *s ) Determina la longitud de la cadena s. Devuelve el nmero de caracteres que precede al carcter nulo de terminacin. EJEMPLO 1.- /* El siguiente programa: COPIAR1.CPP, muestra el uso de strcpy() y strncpy(). */ #include <iostream.h> //Para cout y cin #include <string.h> //Para strcpy() y strncpy() void main (void) { char x[] = "Feliz Cumpleaos a Ti"; char y[25], z[15]; cout << "La cadena de caracteres en el arreglo x es: " << x << "\nLa cadena de caracteres en el arreglo y es: " << strcpy(y, x) << '\n'; strncpy(z, x, 16); //No copia el caracter nulo

z[16] = '\0'; cout << "La cadena de caracteres en el arreglo z es: " << z << endl; }//Fin de main()

2.- /* El siguiente programa: COPIAR2.CPP, muestra el uso de las funciones strcat() y strncat(). */ #include <iostream.h> //Para cout y cin #include <string.h> //Para strcat() y strncat() void main(void) { char s1[20] = "Feliz "; char s2[] = "Ao Nuevo "; char s3[40] = ""; cout << "s1 = " << s1 << "\ns2 = " << s2; cout << "\nstrcat(s1, s2) = " << strcat(s1, s2); cout << "\nstrncat(s3, s1, 6) = " << strncat(s3, s1, 6); cout << "\nstrcat(s3, s1) = " << strcat(s3, s1) << endl; }//Fin de main() 3.- /* El siguiente programa: COMPARAR.CPP, muestra el uso de las funciones strcmp() y strncmp(). */ #include <iostream.h> //Para cout y cin #include <iomanip.h> //Para setw() #include <string.h> //Para strcmp() y strncmp() void main(void) { char *s1 = "Feliz Ao Nuevo"; char *s2 = "Feliz Ao Nuevo"; char *s3 = "Feliz Vacacin"; cout << "s1 = " << s1 << "\ns2 = " << s2 << "\ns3 = " << s3 << "\n\nstrcmp(s1, s2) = " << setw(2) << strcmp(s1, s2) << "\nstrcmp(s1, s3) = " << setw(2)

<< strcmp(s1, s3) << "\nstrcmp(s3, s1) = " << setw(2) << strcmp(s3, s1); cout << "\n\nstrncmp(s1, s3, 6) = " << setw(2) << strncmp(s1, s3, 6) << "\nstrncmp(s1, s3, 7) = " << setw(2) << strncmp(s1, s3, 7) << "\nstrncmp(s3, s1, 7) = " << setw(2) << strncmp(s3, s1, 7) << endl; }//Fin de main() 4.- /* El siguiente programa: TOKENS.CPP, muestra el uso de la funcin strtok(). */ #include <iostream.h> //Para cout y cin #include <string.h> //Para strtok() void main(void) { char cadena[] = "Esta es una oracin con 7 tokens"; char *tokenPtr; cout << "La cadena a dividirse en tokens es:\n" << cadena << "\n\nLos tokens son:\n"; tokenPtr = strtok(cadena, " "); while(tokenPtr != NULL) { cout << tokenPtr << '\n'; tokenPtr = strtok(NULL, " "); }//Fin de while }//Fin de main() 5.- /* El siguiente programa: LONGITUD.CPP, muestra el empleo de la funcin strlen(). */ #include <iostream.h> //Para cout y cin #include <string.h> //Para strlen() void main(void) { char *cadena1 = "abcdefghijklmnopqrstuvwxyz"; char *cadena2 = "cinco";

char *cadena3 = "Mxico"; cout << "La longitud de \"" << cadena1 << "\" es " << strlen(cadena1) << "\nLa longitud de \"" << cadena2 << "\" es " << strlen(cadena2) << "\nLa longitud de \"" << cadena3 << "\" es " << strlen(cadena3) << endl; }//Fin de main() DECLARACIN DE UNA ESTRUCTURA Una estructura define una plantilla con la que puede ms tarde declarar una variable. En otras palabras, su programa primero define una estructura y posteriormente se declaran las variables con la estructura. Para definir una estructura, su programa debe utilizar la palabra reservada struct, normalmente seguida por un nombre y llave izquierda. A continuacin de la llave izquierda, define el tipo y nombre para uno o ms miembros. Despus del ltimo miembro, coloca una llave derecha. Finalmente, si lo desea puede declarar variables con la estructura: struct nombre { int nombre_miembro_1; float nombre_miembro_2; } variables; 1.- /* Este programa: EMPLEADO.CPP, ilustra el uso de una estructura. */ #include <iostream.h> //Para cout y cin #include <string.h> //Para strcpy() void main(void) { struct empleado { char nombre[64]; long id_empleado; float salario;

char telefono[10]; int numero_oficina; } trabajador; // Copia un nombre a la cadena strcpy(trabajador.nombre, Juan Prez Martnez); trabajador.id_empleado = 12345; trabajador.salario = 25000.00; trabajador.numero_oficina = 102; // Copia un nmero telefnico a la cadena strcpy(trabajador.telefono, 555-1212); cout << Empleado: << trabajador.nombre << endl; cout << Telfono: << trabajador.telefono << endl; cout << Id empleado: << trabajador.id_empleado << endl; cout << Salario: << trabajador.salario << endl; cout << Oficina: << trabajador.numero_oficina << endl; }//Fin de main() 2.- /* El siguiente programa: STRUCT.CPP, pide dos juegos de coordenadas de un rectngulo y calcula su rea.*/ #include <iostream.h> //Para cout y cin #include <math.h> //Para fabs() struct point { double x; double y; }; struct rect { point esi; // esquina superior izquierda point eid; // esquina superior derecha double area; };

void main(void) { rect r; double largo, ancho; cin >> r.esi.x >> r.esi.y; cout << "Introduzca las coordenadas (X Y) para eid del rectngulo: "; cin >> r.eid.x >> r.eid.y; largo = fabs(r.esi.x - r.eid.x); ancho = fabs(r.esi.y - r.eid.y); r.area = largo * ancho; cout << "El rea del rectngulo es de: " << r.area << endl; }//Fin de main()

RECOMENDACIONES

Se recomienda que, con el inters de aprender el lenguaje de programacin C++, siga esta gua de principio a fin, tal y como si se tratara de un tutorial. Por supuesto, para su mejor aprovechamiento se sugiere consultar otras bibliografas, as como la ayuda proporcionada con el compilador que utilice para hacer los ejemplos. Al finalizar la lectura y estudio de esta gua contar con los elementos necesarios para desarrollar programas estructurados. La principal caracterstica de C++ es que es un lenguaje orientado a objetos, es por eso que, si se tiene el inters de tener un mejor nivel de programacin y hacer cosas mejores, es necesario que se estudie la programacin orientada a objetos. El lenguaje C++ ha sido una base para otros lenguajes de programacin, es por ello que encontramos varias similitudes con otros. Y, siendo un lenguaje vigente para el desarrollo de aplicaciones, resulta muy til aprenderlo. Sin embargo, considero que no es absolutamente necesario aprender a programar con objetos en C++ antes que en cualquier otro lenguaje, de hecho, personalmente recomiendo adentrarse desde ahora en el lenguaje Java, con el cual, adems de que proporciona varias ventajas que en otros lenguajes difcilmente tenemos (como que los punteros no existen), se ha convertido en uno de los lenguajes con ms amplia cobertura, refirindome con esto a que las implementaciones de este lenguaje prcticamente no tienen lmites, pudiendo encontrar aplicaciones desarrolladas con l en cualquier lado.

BIBLIOGRAFA

Deitel, Harvey M.; Deitel, Paul J. C++, cmo programar. Edit. Pearson Educacin. 4 ed., 2003. 1320 pp Gary J. Bronson. C++ Para Ingeniera y Ciencias. Segunda Edicin. Edit Thomson Schildt, Herbert. C, Manual de Referencia.Edit. Osborne McGraw-Hill. 4 ed., 2000. 709 pp. Toledo Martnez, Miguel .

TALLER DE LENGUAJE C++ PARA LOS PROFESORES DE LA ESCUELA TCNICA ROBINSONIANA MANUEL PALACIOS FAJARDO LIC. IRIS RANGEL

Caracas, marzo.

Potrebbero piacerti anche