LABORATORIO #1 INTRODUCCIÓN AL LENGUAJE DE PROGRAMACIÓN C++ C++ es un lenguaje de programación diseñado por Bjarne Stroustrup a partir de 1979. La intención de su creación fue ampliar al exitoso lenguaje de programación C con mecanismos que permitan la manipulación de objetos. En ese sentido, desde el punto de vista de los lenguajes orientados a objetos, C++ es un lenguaje híbrido. Como uno de los lenguajes de programación más populares creados, C++ es ampliamente utilizado en la industria del software[2][3]. Algunas de sus características son[1]: Es Multiparadigma, ya que posee características de Programación Estructurada y de Programación Orientada a Objetos. Es Robusto. Es Portable. Es Compilado. Programación en C++ Lo primero que se requiere para desarrollar aplicaciones en C++ es un Compilador de C++, existen muchos compiladores entre los cuales se encuentran los de GNU Project, Microsoft, Intel y Borland. En este curso se utilizará el de GNU (g++). Para instalar g++ en Windows se pueden seguir las instrucciones de la guía de instalación y configuración de g++ disponible en la página de la materia. A continuación se describe la estructura básica de un programa en C++, haciendo la analogía con la notación de pseudocódigo: Algoritmo Principal [Secuencia de Operaciones] FAlgoritmo [Inclusion de Bibliotecas] int main( ) [Secuencia de Operaciones] La primera línea permite la inclusión de archivos de cabecera que extienden las funcionalidades del programa. El código fuente se guarda en un archivo con la extensión.cpp. Usando un editor de texto estándar (Bloc de Notas, vi, Kwrite, Gedit, Notepad++, etc.) copie el siguiente ejemplo y guárdelo en un archivo llamado primerejemplo.cpp. #include <iostream> using namespace std; int main() cout << "Hola mundo!" << endl; return 0; 1
Llega el momento ahora de compilar la aplicación, para lo cual se debe abrir la línea de comandos, e introducir lo siguiente: g++ primerejemplo.cpp -o primerejemplo g++ es un compilador, éste se encarga de traducir el código fuente a un código ejecutable. En el comando anterior luego de -o se escribió primerejemplo esto se hace para indicarle al compilador que el nombre del archivo ejecutable será primerejemplo. Para ejecutar la aplicación, se debe introducir en la línea de comandos lo siguiente: primerejemplo Si se han seguido las instrucciones, debe aparecer en la línea de comandos el mensaje Hola mundo!, en la línea de comandos. Comentarios Los comentarios permiten explicar de forma simple y en lenguaje natural el código, para que otras personas o el mismo programador entiendan o recuerden de manera sencilla lo que sucede o se quiere en el programa. Los comentarios son ignorados por el compilador del lenguaje, ya que estos no son parte de la lógica del código. Comentarios de múltiples líneas: Este tipo de comentario comienzan con /* y finalizan con */. Comentario de una línea: Este tipo de comentario comienzan con // y terminan al final de la línea. int main() /*Este es un comentario de varias líneas*/ //Este es un comentario de una sola línea Tipos de datos básicos Los tipos de datos permiten definir variables que almacenan la información necesaria, asociando dicha información a un dominio de valor y operaciones sobre dicho valor. C++ cuenta con los siguientes tipos de datos básicos[4]: Nombre Equivalente en pseudocódigo Longitud * Rango * char Caracter 8 bits (1 byte) 0 a 255 (ver tabla ASCII estándar) bool Lógico 8 bits (1 byte) true,false ó 0 a 255 int Entero 32 bits (4 bytes) -2147483648 al 2147483647 float Real 32 bits (4 bytes) double Real 64 bits (8 bytes) * Estos rangos y longitudes dependen del compilador que se esté utilizando. Para algunos tipos de datos se puede ampliar o disminuir la longitud y el rango utilizando short y long. 2
Nota: El string no es un tipo de dato básico en C++, sin embargo puede ser utilizado incluyéndolo como archivo de cabecera al principio del código de la siguiente manera: #include <string> Declaración de variables Las variables son porciones de memoria que almacenan un valor y este puede ser modificado. La declaración de una variable se lleva a cabo mediante la combinación de un identificador, un tipo de dato y si se quiere un valor inicial. También se puede crear una lista de variables asociadas a un mismo tipo de dato. Tipo_de_dato nombre_variable; nombre_variable = valor_inicial; int main() int a; a = 0; char c; Operadores Básicos en C++ Operación Pseudocódi go C++ Suma + + Resta - - Multiplicación * * División / / Div DIV / Mod MOD % Mayor que > > Mayor o igual que >= >= Menor que < < Menor o igual que <= <= Igual que == == Diferente que!= O Lógico O Y Lógico Y && NO Lógico NO! 3
Prioridad de los Operadores en C++ [5] Operación C++ Paréntesis () NO Lógico! Menos (Unario) - Multiplicación, División, Div, Mod * / / % Suma, Resta + - Mayor que, Menor que, Mayor o igual que, Menor o igual que > < >= <= Igual que, Diferente que ==!= Y lógico && O Lógico Asignación = Entrada/Salida Para leer y escribir en C++ se debe incluir la cabecera iostream de la siguiente manera: #include <iostream> //permite utilizar las operaciones de leer y escribir using namespace std; //se utiliza para evitar escribir std::cout y std::cin Para mostrar un mensaje: cout << "Hola!" << endl; Para mostrar el valor de una variable: int x = 0; //La variable a mostrar debe estar declarada e inicializada cout << x << endl; Para mostrar un mensaje junto al valor de una variable: cout << "El total es: " << x << endl; Para leer un valor y almacenarlo en una variable: char letra; cout << "Introduzca un caracter: "; cin >> letra; 4
Para finalizar copie el siguiente ejemplo en un editor de texto, luego compílelo y ejecútelo: #include <iostream> #include <string> using namespace std; int main () cout << "Segundo Ejemplo en C++" << endl; string nombre = ""; cout << "Introduzca su nombre: "; cin >> nombre; cout << "Operaciones matematicas" << endl; int inta = 5; int intb = 2; int suma = 0, resta = 0, multiplicacion=0, diventera=0, mod=0; float divreal=0; suma = inta+intb; cout << "La suma de " << inta << " + "<< intb <<" es " << suma << endl; resta = inta-intb; cout << "La resta de " << inta << " - "<< intb <<" es " << resta << endl; multip = inta*intb; cout << "La multiplicacion de " << inta << " * "<< intb <<" es " << multip << endl; diventera = inta/intb; cout << "La division entera de " << inta << " / "<< intb <<" es " << diventera << endl; divreal = ((float)inta)/((float)intb); cout << "La division real " << inta << "/"<< intb <<" es " << divreal << endl; mod = inta%intb; cout << "El mod de " << inta << " y de "<< intb <<" es " << mod << endl; cout << endl << "El primer numero es " << inta; inta--;//es lo mismo que hacer inta = inta - 1; cout << endl << "Al restarle uno da " << inta << endl; cout << "El segundo numero es " << intb ; intb++;//es lo mismo que hacer intb = intb + 1; cout << endl << "Al sumarle uno da " << intb << endl; cout << endl << nombre << " ha finalizado el programa" << endl; Fuentes: [1] The C++ Programming Language. Bjarne Stroustrup. http://www2.research.att.com/~bs/c++.html [2] C++. Wikipedia en inglés. http://en.wikipedia.org/wiki/c%2b%2b [3] C++. Wikipedia en español. http://es.wikipedia.org/wiki/c%2b%2b [4] Aprenda C++ Básico como si estuviera en primero. Bustamante, P., Aguinaga I. Universidad de Navarra. (Descargado de http://ccpd.ciens.ucv.ve/~jparada/desarrollo/ayed/cppbasico.pdf ) [5] C++ Operator Precedence. http://www.cppreference.com/wiki/operator_precedence Prep. Daniel Romero. GDAP, Sept. 2010 5