introduccion a c++

23
Programación en C+ Programación en C+ + + Lección #2: Introducción Lección #2: Introducción a C++ a C++ Por Antonio F. Huertas Por Antonio F. Huertas

Upload: guestab91474

Post on 14-Dec-2014

2.954 views

Category:

Education


1 download

DESCRIPTION

Pequeña introducción al lenguaje C++

TRANSCRIPT

Page 1: Introduccion a c++

Programación en C++Programación en C++

Lección #2: Introducción a C++Lección #2: Introducción a C++

Por Antonio F. HuertasPor Antonio F. Huertas

Page 2: Introduccion a c++

Estructura Básica de un ProgramaEstructura Básica de un Programa

// // Comentarios descriptivosComentarios descriptivos

#include <iostream>#include <iostream>

using namespace std;using namespace std;

int main()int main()

{{

Declaración de constantes/variables localesDeclaración de constantes/variables locales

EnunciadosEnunciados

return 0;return 0;

}}

Page 3: Introduccion a c++

Comentarios DescriptivosComentarios Descriptivos

Son anotaciones que el programador Son anotaciones que el programador coloca para describir el programa o una coloca para describir el programa o una porción del mismo.porción del mismo.

Formato:Formato:// Esto es un comentario de una sola línea// Esto es un comentario de una sola línea

/* Esto es un comentario que se extiende/* Esto es un comentario que se extiende

por varias líneas */por varias líneas */

Page 4: Introduccion a c++

Directivas del PreprocesadorDirectivas del Preprocesador

El preprocesador lee el código fuente del El preprocesador lee el código fuente del programa antes de que sea compilado y ejecuta programa antes de que sea compilado y ejecuta aquellas líneas que comienzan con el símbolo #aquellas líneas que comienzan con el símbolo #La directiva La directiva #include#include causa que el causa que el preprocesador incluya el contenido de otro preprocesador incluya el contenido de otro archivo en el programaarchivo en el programaEl archivo El archivo iostreamiostream contiene el código que le contiene el código que le permite a un programa en C++ mostrar datos en permite a un programa en C++ mostrar datos en la pantalla y obtener datos del tecladola pantalla y obtener datos del tecladoEl archivo El archivo iostreamiostream es un tipo de archivo de es un tipo de archivo de cabecera (cabecera (header fileheader file) ya que se incluye al inicio ) ya que se incluye al inicio del programadel programa

Page 5: Introduccion a c++

Espacios de NombreEspacios de Nombre

Los espacios de nombre (Los espacios de nombre (namespacesnamespaces) sirven ) sirven para organizar conjuntos de declaraciones de para organizar conjuntos de declaraciones de rutinas, variables y constantes relacionadasrutinas, variables y constantes relacionadasLa instrucción La instrucción using namespace std;using namespace std; indica indica que los nombres declarados en que los nombres declarados en iostreamiostream son son parte de un espacio llamado parte de un espacio llamado stdstd (abreviatura (abreviatura de de standard library namespacestandard library namespace))El El standard librarystandard library contiene un conjunto de contiene un conjunto de header filesheader files que, a su vez, contienen rutinas que, a su vez, contienen rutinas prehechas. Estos prehechas. Estos header files header files están presente están presente en toda instalación de un compilador de C++en toda instalación de un compilador de C++

Page 6: Introduccion a c++

Función Función main()main()

A las rutinas en C++ se les llama A las rutinas en C++ se les llama funciones.funciones.

Una función contiene las instrucciones Una función contiene las instrucciones que llevan a cabo una tarea.que llevan a cabo una tarea.

Un programa se puede componer de Un programa se puede componer de varias funciones pero debe contener una varias funciones pero debe contener una función llamada función llamada main()main() que es la primera que es la primera que se ejecutaque se ejecuta

Page 7: Introduccion a c++

Función Función main()main()

El encabezado El encabezado int main()int main() indica que indica que esta función le devuelve un número entero esta función le devuelve un número entero al sistema operativoal sistema operativo

El cuerpo de El cuerpo de main()main() está rodeado por los está rodeado por los símbolos { y }símbolos { y }

La instrucción La instrucción return 0;return 0; en el cuerpo en el cuerpo de de main()main() indica que el programa debe indica que el programa debe devolver el número 0 al sistema operativo devolver el número 0 al sistema operativo (el programa ejecutó satisfactoriamente)(el programa ejecutó satisfactoriamente)

Page 8: Introduccion a c++

Declaración de VariablesDeclaración de Variables

Las variables representan localizaciones Las variables representan localizaciones de memoria que contienen valores que de memoria que contienen valores que pueden cambiarpueden cambiar

Formato:Formato:

tipoDeDatos nombreVariable(s)tipoDeDatos nombreVariable(s);;

Ejemplos:Ejemplos:int age;int age;

double radius, areaCircle;double radius, areaCircle;

Page 9: Introduccion a c++

Declaración de VariablesDeclaración de Variables

Los siguientes son tipos de datos Los siguientes son tipos de datos comunes en C++:comunes en C++: shortshort e e intint para números enteros para números enteros floatfloat y y doubledouble para números reales para números reales charchar para caracteres y para caracteres y stringsstrings boolbool para valores booleanos ( para valores booleanos (truetrue, , falsefalse))

En el caso de los En el caso de los stringsstrings, C++ provee un , C++ provee un tipo de datos llamado tipo de datos llamado stringstring

Page 10: Introduccion a c++

Declaración de VariablesDeclaración de Variables

Es posible inicializar una variable al Es posible inicializar una variable al momento de declararla asignándole un momento de declararla asignándole un valor (llamado un literal)valor (llamado un literal)

Ejemplos:Ejemplos:int counter = 1;int counter = 1;

double sumPrices = 0.0;double sumPrices = 0.0;

char answer = 'Y';char answer = 'Y'; // comillas sencillas// comillas sencillas

char code[4] = "ZZZ";char code[4] = "ZZZ"; // comillas dobles// comillas dobles

bool found = true;bool found = true;

Page 11: Introduccion a c++

Declaración de VariablesDeclaración de Variables

Los literales que corresponden a Los literales que corresponden a stringsstrings se se colocan entre comillas.colocan entre comillas.La siguiente figura muestra cómo se almacena La siguiente figura muestra cómo se almacena el el stringstring “Universidad” en la memoria: “Universidad” en la memoria:

El caracter ‘\0’ se le conoce como el caracter El caracter ‘\0’ se le conoce como el caracter núlo y C++ lo coloca automáticamente al final de núlo y C++ lo coloca automáticamente al final de todo litera que corresponda a un todo litera que corresponda a un stringstring aunque aunque no se veano se veaInternamente, los caracteres se almacenan Internamente, los caracteres se almacenan como números de acuerdo al código ASCIIcomo números de acuerdo al código ASCII

U n i v e r s i d a d \0

Page 12: Introduccion a c++

Declaración de Constantes Declaración de Constantes SimbólicasSimbólicas

Los literales pueden ser asociados con Los literales pueden ser asociados con nombres llamados constantes simbólicas.nombres llamados constantes simbólicas.

Formato:Formato:

constconst tipoDatos nombreConstante tipoDatos nombreConstante == valor valor;;

Algunos ejemplos:Algunos ejemplos:const double PI = 3.14159;const double PI = 3.14159;

const int NAME_SIZE = 26;const int NAME_SIZE = 26;

Page 13: Introduccion a c++

EnunciadosEnunciados

A las instrucciones se les llama enunciadosA las instrucciones se les llama enunciados

En general los enunciados pueden clasificarse En general los enunciados pueden clasificarse como:como: Enunciados de Enunciados de outputoutput – sirven para mostrar valores – sirven para mostrar valores Enunciados de Enunciados de inputinput – sirven para obtener valores – sirven para obtener valores Enunciados de asignación – sirven para asignar Enunciados de asignación – sirven para asignar

valores a variablesvalores a variables Estructuras de control – sirven para controlar el orden Estructuras de control – sirven para controlar el orden

en que se ejecutan los enunciadosen que se ejecutan los enunciados

Page 14: Introduccion a c++

Enunciados de Enunciados de OutputOutput

Para mostrar datos en la pantalla se usa Para mostrar datos en la pantalla se usa la variable la variable coutcout y el operador << y el operador <<

La variable La variable coutcout ( (console outputconsole output) ) simboliza la pantalla y está declarada en simboliza la pantalla y está declarada en iostreamiostream

El operador << (operador de inserción) El operador << (operador de inserción) permite enviarle valores a permite enviarle valores a coutcout

Ejemplo:Ejemplo:cout << "Hello, world!";cout << "Hello, world!";

Pantalla:

Hello, world!

Page 15: Introduccion a c++

Enunciados de Enunciados de OutputOutput

Ejemplo:Ejemplo:cout << "Hello!";cout << "Hello!";

cout << "Good-bye!";cout << "Good-bye!";

Como muestra el ejemplo, todos los valores que Como muestra el ejemplo, todos los valores que se muestren salen en la misma línease muestren salen en la misma línea

Una manera de separar el Una manera de separar el outputoutput en varias línea en varias línea es usar el manipulador es usar el manipulador endlendl ( (end-lineend-line):):cout << "Hello!" << endl;cout << "Hello!" << endl;

cout << "Good-bye!";cout << "Good-bye!";

Pantalla:

Hello!Good-bye!

Pantalla:

Hello!

Good-bye!

Page 16: Introduccion a c++

Enunciados de Enunciados de OutputOutput

La otra forma de provocar que el ejemplo La otra forma de provocar que el ejemplo anterior se muestre en dos líneas es usar el anterior se muestre en dos líneas es usar el caracter ‘\n’:caracter ‘\n’:cout << "Hello!\nGood-bye!"; cout << "Hello!\nGood-bye!";

Por lo tanto, los siguientes enunciados producen Por lo tanto, los siguientes enunciados producen lo mismo:lo mismo:cout << "I love to program!\n";cout << "I love to program!\n";cout << "I love to program!"cout << "I love to program!"

<< endl;<< endl;

Al caracter ‘\n’ se le llama una secuencia Al caracter ‘\n’ se le llama una secuencia de escape. No es la única en C++ pero sí de escape. No es la única en C++ pero sí es la que más se vees la que más se ve

Pantalla:

Hello!

Good-bye!

Pantalla:

I love to program!

I love to program!

Page 17: Introduccion a c++

Enunciados de Enunciados de InputInput

Para obtener datos entrados por el teclado Para obtener datos entrados por el teclado se la variable se la variable cincin y el operador >> y el operador >>

La variable La variable cincin ( (console inputconsole input) simboliza ) simboliza el teclado y está declarada en el teclado y está declarada en iostreamiostream

El operador >> (operador de extracción) El operador >> (operador de extracción) permite obtener valores de permite obtener valores de cincin

Page 18: Introduccion a c++

Enunciados de Enunciados de InputInput

Ejemplo:Ejemplo:cout << "Enter your age: ";cout << "Enter your age: ";

cin >> age;cin >> age;

cout << "You are " << age << " years old!" cout << "You are " << age << " years old!"

<< endl;<< endl;

Pantalla:

Enter your age: 21

You are 21 years old!

age

21

Page 19: Introduccion a c++

Enunciados de Enunciados de InputInput

Si se entran múltiples datos del teclado de Si se entran múltiples datos del teclado de una sola vez, el operador >> asume que el una sola vez, el operador >> asume que el separador de los datos será el espacio:separador de los datos será el espacio:cout << "Enter the base and height: ";cout << "Enter the base and height: ";

cin >> base >> height;cin >> base >> height;

cout << "The base is " << base << endl;cout << "The base is " << base << endl;

cout << "The height is " << height << endl;cout << "The height is " << height << endl;

Pantalla:

Enter the base and height: 15 7

The base is 15

The height is 7

base

15

height

7

Page 20: Introduccion a c++

Enunciados de AsignaciónEnunciados de Asignación

Para asignar el resultado de una expresión a Para asignar el resultado de una expresión a una variable se utiliza el siguiente formato:una variable se utiliza el siguiente formato:nombreVariablenombreVariable = = expresiónexpresión;;

Una expresión es un valor o se compone de Una expresión es un valor o se compone de operadores que se usan para procesar valores operadores que se usan para procesar valores (operandos) y obtener un resultado(operandos) y obtener un resultado

Ejemplos:Ejemplos:n = 7;n = 7;

a = -3.9;a = -3.9;

b = a * 5.987;b = a * 5.987;

Page 21: Introduccion a c++

Operadores AritméticosOperadores Aritméticos

Los operadores aritméticos son los siguientes:Los operadores aritméticos son los siguientes: ++ SumaSuma -- RestaResta ** MultiplicaciónMultiplicación // DivisiónDivisión %% Módulo (Residuo)Módulo (Residuo)

En los operadores +, -,* y /, la regla es la siguiente: si En los operadores +, -,* y /, la regla es la siguiente: si ambos operandos son números enteros, el resultado ambos operandos son números enteros, el resultado será entero. Si por lo menor un operando es un número será entero. Si por lo menor un operando es un número real, el resultado será un número realreal, el resultado será un número realEn operador % requiere que ambos operandos sean En operador % requiere que ambos operandos sean números enteros y el resultado también será un número números enteros y el resultado también será un número enteroentero

Page 22: Introduccion a c++

Operadores AritméticosOperadores Aritméticos

Algunos ejemplos:Algunos ejemplos: 2 + 4 = 62 + 4 = 6 2 + 4.0 = 6.02 + 4.0 = 6.0 8.3 * 9.2 = 76.368.3 * 9.2 = 76.36 17.0 / 3 = 5.66717.0 / 3 = 5.667 (a 3 lugares decimales)(a 3 lugares decimales) 17 / 3 = 517 / 3 = 5 (el cociente)(el cociente) 17 % 3 = 217 % 3 = 2 (el residuo)(el residuo)

Page 23: Introduccion a c++

Operadores AritméticosOperadores Aritméticos

Cómo en las Matemáticas, existe una Cómo en las Matemáticas, existe una jerarquía de los operadores aritméticos:jerarquía de los operadores aritméticos: *, /, %*, /, % de izquierda a derechade izquierda a derecha +, -+, - de izquierda a derecha de izquierda a derecha

La jerarquía se altera agrupando La jerarquía se altera agrupando expresiones con paréntesisexpresiones con paréntesisEjemplos:Ejemplos: 5 + 2 * 4 = 135 + 2 * 4 = 13 (5 + 2) * 4 = 28(5 + 2) * 4 = 28 (6 – 3) * (2 + 7) / 3 = 9(6 – 3) * (2 + 7) / 3 = 9