Está en la página 1de 13

MANUAL DE PROGRAMACIÓN I

5. LENGUAJE DE PROGRAMACIÓN Dev-C++:


C++

Para resolver un problema se deben tener en


cuenta los siguientes pasos:
✓ Conocer el problema, a qué área del
conocimiento corresponde, identificar los datos
que proporciona el problema y cuál es el
requerimiento para resolverlo.
✓ Elaborar el algoritmo o el diseño de la solución
al problema.
✓ Comprobar los resultados de salida con los
datos de entrada.
✓ Finalmente codificarlo en un lenguaje de También existen compiladores en línea:
programación.
C++ es una respuesta al programar que necesita
hacer programas simples e interactivos o
programas muy elaborados y complejos, para
ingeniería o las ciencias en general; o para elaborar
interfaces gráficas para usuarios de Windows,
dentro de un contexto de un lenguaje modular.

5.1. COMPILADORES DE C++

Los diferentes fabricantes de software ponen a


disposición de los programadores una serie de
compiladores de C++, que permiten utilizar todas
las funciones de C, así como todos sus comandos.
Algunos compiladores para programar en C++:
www.onlinegdb.com

5.2. PROCESO DE EJECUCIÓN DE UN


PROGRAMA

Las fases de compilación y ejecución del programa


dependen del compilador C++, que utilice, en
términos generales los programas de C++ pasan a
través de cinco fases para su ejecución: editar,
preprocesar, compilar, enlazar y ejecutar.
Fase editar
Consiste en escribir el código del programa y
generar el archivo fuente. Se debe guardar este
archivo con extensión .CPP, para que sea
reconocido por el compilador C++. Los
compiladores, traen incorporado un editor
(procesador de palabra) bajo ambiente Windows
sencillo de manejar.
Una vez terminada la edición del programa y
generado el código fuente, corra el programa
(algunos programadores dicen ejecutar o poner en
marcha el programa), así:

UNIVERSIDAD MILITAR NUEVA GRANADA PROGRAMACIÓN I – UNIDAD 2 1


✓ Con el botón RUN. o ser detectados y corregidos, a este proceso
en Visual se le denomina Depuración.
Studio Las situaciones más comunes en las cuales
✓ Utilizando los botones Iniciar Depuración de suelen aparecer errores son: El no
Microsoft Visual Studio. cumplimiento de las reglas gramaticales o
✓ Utilizando las teclas Ctrl F7, para compilar errores de sintaxis y los errores en el diseño
✓ Utilizando las teclas Ctrl F5, para compilar y del algoritmo o errores lógicos.
ejecutar el programa
Los compiladores emiten mensajes de error o
Fase Preprocesador advertencia durante las fases de compilación, de
Permite procesar el código e incluir los archivos de enlace o de ejecución de un programa, así:
cabecera necesarios que le proporcionen al ✓ Errores fatales (fault): La compilación se
compilador la información necesaria de las detiene automáticamente. Por ejemplo, hacer
funciones de biblioteca. Por ejemplo, integra el una división por cero entre números reales.
archivo de cabecera iostream.h, cuando el código ✓ Errores de sintaxis: Son el incumplimiento a las
trae la instrucción de preprocesador reglas de sintaxis del lenguaje o errores al
#include<iostream> acceso a memoria o a disco. Por ejemplo,
olvidar un punto y coma al final de una
Fase Compilador
sentencia.
Cuando se compila el programa, el programa ✓ Advertencias (Warning): No impiden la
traduce el código fuente a código objeto, compilación, pero indican que deben verificarse
generando un archivo de extensión .OBJ. El código ciertas condiciones o sentencias del programa.
objeto es también llamado código de máquina y es Por ejemplo, operar un dato de variables reales
la conversión del programa fuente en código en una variable entera.
binario, es decir en ceros (0) y unos (1). La
Errores de sintaxis
compilación es la fase más costosa del proceso y
esto es debido a que el compilador debe analizar Son los producidos cuando se violan las reglas de
el texto de nuestro programa fuente, comprobar sintaxis o gramática del lenguaje, entre los más
que no contiene errores y producir como salida un frecuentes tenemos:
archivo con la traducción de nuestro código a un
conjunto de instrucciones para el procesador. ✓ Omitir los puntos y comas al final de las
sentencias.
Fase Enlace ✓ Olvido de las llaves que cierran.
✓ Olvidar las instrucciones de preprocesador que
Un programa extenso en C++ puede estar
llaman alguna función específica.
almacenado en archivos diferentes de programa,
✓ Olvido de las comillas para las cadenas.
en este caso cada archivo puede compilarse de
✓ Uso de variables sin definir.
manera separada, pero finalmente deben formar
✓ Olvido de parámetros.
un solo programa antes de ejecutarlo. El enlazador
✓ Utilización de palabras reservadas para
(linker) reúne cada uno de los archivos objeto
identificar variables, funciones, etc.
producidos en la fase anterior con el código de las
funciones definidas en bibliotecas estándar o
bibliotecas particulares, para producir el archivo
ejecutable de extensión.EXE
Fase Ejecución
En esta fase se pone en marcha el programa,
utilizando el archivo de extensión .EXE, generado Para corregir estos errores haga doble clic en el
anteriormente. Este archivo ejecutable contiene error y el editor lo llevará a la línea de código que
todo el código de máquina necesario para ejecutar presenta el error.
el programa, con solo escribir el nombre del
archivo en el indicador de órdenes o haciendo clic Las palabras reservadas como por ejemplo break,
en el icono del archivo. int, for, else en un lenguaje de programación son
palabras clave que se utilizan con un propósito
5.3. ERRORES EN LOS PROGRAMAS específico, intentar utilizarlas para otros
propósitos, como nombre de variable o constante,
Cuando un programa se compila puede generaría mensajes de error.
suceder que contenga errores, estos deben

2 PROGRAMACIÓN I – UNIDAD 5 DEPARTAMENTO DE TECNOLOGÍAS DEL CONOCIMIENTO


Errores lógicos Las líneas de la 14 a la 20, definen la función de
usuario o estructura de la función
Estos no suelen ser detectados por el compilador,
ya que no produce ningún mensaje de error. Se Los comentarios
presentan por lo general en el diseño del algoritmo
Los comentarios son pequeñas anotaciones de
o el diseño de la solución al problema. Para
texto que clarifican alguna parte del código y
solucionarlos se debe corregir el algoritmo y
permiten documentar el programa por la persona
comprobar los resultados de salida con los datos
que lo escribe, son muy útiles en el momento en
dados de entrada.
que es leído el programa por otra persona
Por ejemplo, si al operar una variable que tiene un diferente al autor.
dato de entrada, se olvida colocar paréntesis para
En C++ hay dos formas de escribir los
alterar la jerarquía de los operadores puede
comentarios:
generar un resultado erróneo, que no es detectado
por el compilador. Iniciando con /* y terminándolo con */ o utilizando
y=5*x+2 es diferente a y=5*(x+2) dos “slash” (//) por cada línea de comentario.
Un ejemplo de un comentario en la parte inicial de
5.4. ESTRUCTURA DE UN PROGRAMA EN un programa seria de la siguiente forma:
C++ /*Facultad de Ingeniería
Elaborado por: Luis Enrique Castro
Un programa en C++ incluye entre otros: Aplicación: Área del circulo */
Comentarios, la función main(), declaraciones
globales, directivas de preprocesador y las Otra forma de crear ese mismo comentario:
funciones definidas por el usuario. //Facultad de Ingeniería
//Elaborado por: Luis Enrique Castro
El siguiente ejemplo ilustra la estructura típica
//Aplicación: Área del circulo
general de un programa en C++:
La función principal main()
La función main() es el punto inicial de entrada al
programa principal y es obligatorio que todos los
programas de C++ la tengan.

En programas cortos, la totalidad de las sentencias


van en el bloque de sentencias de main(), sin
embargo, en programas largos desde el programa
principal, se hacen llamadas a funciones definidas
por el usuario.
Su estructura puede ser alguna de las dos que se
muestran a continuación:

void main() int main()


{ {
: :
Las líneas 1 y 2 son comentarios. : :
Las líneas 3, 4 son directivas de preprocesador. : :
} return 0;
La línea 5 es el prototipo o declaración de la }
función de usuario.
La línea 6 es el punto inicial de entrada al Entre las llaves va el bloque de sentencias o
programa o función principal del programa. programa principal.

Las líneas del 8 al 12, son las instrucciones que Declaraciones globales
debe ejecutar el programa principal. Las declaraciones globales van por fuera del
En la línea 10 está el llamado de la función. programa principal e incluyen directivas de
preprocesador, prototipos de funciones, variables
y constantes globales y otras instrucciones que le

UNIVERSIDAD MILITAR NUEVA GRANADA PROGRAMACIÓN I – UNIDAD 5 3


indican al compilador que lo aquí declarado es En el presente manual se harán los ejemplos para
común para todas las funciones del programa. Visual Studio, por lo cual si tiene otro compilador
instalado, verifique la escritura de las librerías y la
Ejemplo de declaraciones globales en un
utilización de using namespace std;, ya que puede
programa:
no necesitar esta línea
Funciones definidas por el usuario
Un programa en C++ se compone de una o más
funciones, una función (llamada también rutina)
agrupa las instrucciones para realizar una o más
acciones o tareas.
Las funciones escritas en C++ pueden no estar
todas en un mismo archivo (esto es, pueden
Directivas de preprocesador
escribirse programas en C++ cuyo código esté
Inician con el signo de número (#) y son las repartido en varios archivos).
instrucciones que le indican al compilador que lea
Toda función de usuario está compuesta por los
estas sentencias antes de compilar la función
siguientes elementos:
principal del programa, se acostumbra a colocarlas
al inicio del programa o por lo menos antes de que ✓ El prototipo de la función o la cabecera de
se mencionen las instrucciones correspondientes a función: Permite declarar o identificar la
la directiva. función, el tipo de datos que devuelve y los
parámetros que recibe la función.
Estas directivas pueden definir inclusión de
✓ Llamada de la función: Es mencionar la función
archivos de cabecera, macros, nombres de
para que sea invocada, normalmente se hace
constantes, archivos fuente adicionales, etc.
desde la función principal.
Las dos directivas de preprocesador más usuales ✓ Estructura de la función: Contiene el código de
son: #include y #define. Con la directiva #include, la función.
incorporamos los archivos de cabecera que
Cuando el compilador encuentra una sentencia de
proporcionan al compilador la información
llamada de una función, significa que el programa
necesaria de las funciones de biblioteca, para que
utilizará el conjunto de sentencias que le permiten
se puedan ejecutar entre otras, sentencias de
al programador la resolución de un problema o la
entrada y salida de datos, funciones matemáticas,
realización de una tarea específica.
o funciones de cadena. Con la directiva #define,
podemos definir constantes simbólicas, para La facilidad de utilizar funciones hace que la
insertar su valor directamente en el código. programación pueda ser modular, es decir que un
programa se divida en módulos para realizar
Para incluir los archivos de cabecera en un
tareas específicas o subdividir problemas muy
programa, utilizamos la directiva #include y
largos.
encerramos entre corchetes puntudos (< >) el
nombre del archivo de cabecera. Por ejemplo:
5.5. ELEMENTOS BÁSICOS DE UN
#include <iostream> LENGUAJE DE PROGRAMACIÓN
Así, el archivo de cabecera iostream, proporciona
al compilador C++, la información necesaria sobre En el algoritmo se decide las variables, constantes,
las funciones de biblioteca que realizan los tipos de datos de entrada y salida y los cálculos
operaciones de entrada y salida de datos, y todas que se van a realizar en un programa. A
las demás operaciones relacionadas; iostream es continuación, se mostrará la sintaxis en C++, de
un archivo de texto ASCII, que se encuentra en la cada una de las expresiones que se requieran para
carpeta include, generada al instalar C++. hacer el programa

La directiva using namespace std;, le indica al 5.5.1. TIPOS DE DATOS EN C++


programa que utilizará objetos que tienen nombre
en una región especial denominada std. Esta Los programas en C++ pueden procesar diferentes
región especial contiene los nombres de muchos
tipos de datos. Los tres tipos básicos de datos en
objetos predefinidos que se utilizan al escribir los
C++ son, los de números enteros, los de números
programas.
de punto flotante (reales) y los de carácter

4 PROGRAMACIÓN I – UNIDAD 5 DEPARTAMENTO DE TECNOLOGÍAS DEL CONOCIMIENTO


Tipo de dato entero
Es el cero o cualquier número positivo o negativo Tipo de dato booleano
sin decimales. En C++ los denominamos de tipo int.
Permite declarar variables lógicas que pueden
Algunas variantes de este tipo de dato entero son: almacenar los valores de verdadero o falso. En C++
short, long y unsigned. los denominamos de tipo bool.
Ejemplos de datos enteros: Ejemplo:
0 3 -11 +30 1000 -31500 bool respuesta=true;
Ejemplos de datos que NO son enteros: La siguiente tabla muestra los principales tipos de
datos en C++, sus tamaños en bytes y el rango de
3.0 +30.0 -31.5
valores que puede almacenar:
Tipo de dato de punto flotante (reales)
Es cualquier número positivo o negativo con o sin
signo que tiene punto decimal. En C++ los
denominamos de tipo float, double o long double.
Ejemplos de datos de punto flotante:
3.0 -11.0 +30. 1000.20 -31500.625
Ejemplos de datos que NO son de punto flotante:
25 +123 -31,500.20
Tipo de dato caracter En el momento de seleccionar el tipo de dato,
verifique en la tabla anterior, si es dato entero o
Incluye las letras del alfabeto mayúsculas o real y a continuación el tamaño del tipo de dato a
minúsculas, los dígitos del o al 9, los símbolos utilizar.
especiales como el +, $, @. Los valores caracteres
se almacenan en la mayoría de los computadores Por ejemplo, si en el algoritmo se decide trabajar
utilizando el código ASCII, así, por ejemplo, al variables, constantes o tipos de datos de entrada o
almacenar la letra A se almacena el código ASCII salida que sean enteros positivos y mayores de
que en binario es 01000001 o en decimal el 65. En cincuenta mil, debemos escoger un tipo de dato
C++ los datos carácter los denominamos de tipo long int. Si nuestros datos contienen dos números
char. decimales escogemos datos float. Si nuestros datos
son números con muchos decimales es mejor optar
Los valores caracteres son reconocidos en C++, por tipo de dato double.
como un solo elemento que deben ser encerrados
entre comillas sencillas.
5.5.2. VARIABLES EN C++
Ejemplos de datos caracter:
En C++ una variable es una posición de memoria
‘A’ ‘3’ ‘$’ ‘a’ ‘*’ ‘,’
con nombre, donde se almacena un valor de un
Ejemplos de datos que NO son caracter: cierto tipo de dato que puede ser modificado,
durante la ejecución de un programa.
3 ‘ABC’
Toda variable debe ser declarada previamente a su
Tipo de dato cadena utilización, se recomienda se haga al principio del
Un dato de tipo cadena se puede considerar como bloque de instrucciones, aunque se podría hacer en
un conjunto de caracteres de tipo char. Su cualquier parte del programa.
representación se diferencia del tipo char porque Toda variable tiene cuatro elementos principales: El
esta va encerrado entre comillas dobles. Las tipo de dato, el nombre, el contenido de la variable
variables de tipo string en C++ tienen un tamaño y la dirección de la variable.
hasta de 28 bytes
El tipo de dato tiene que ver con escoger un tipo de
Ejemplos: dato de los de C++. Por ejemplo: int, float o char.
string SALUDO, opcion1; El nombre identifica la variable, se aconseja utilizar
SALUDO = " HOLA COMO ESTAS"; un nombre que describa su propósito. Por ejemplo:
opcion1 = " 1. Area del circulo"; Para almacenar datos personales, sería

UNIVERSIDAD MILITAR NUEVA GRANADA PROGRAMACIÓN I – UNIDAD 5 5


conveniente utilizar variables con los siguientes ✓ El nombre de variable puede tener cualquier
nombres: apellido1, apellido2, nombre, edad, longitud, pero solo es significativo los 32
fechaNacimiento, sueldo_básico. primeros caracteres.
✓ Los identificadores de variables no pueden ser
Al valor real almacenado en la variable se le conoce
palabras reservadas, porque el lenguaje la
como el contenido de la variable.
asociaría con algún significado en especial. Por
La dirección en la variable es la ubicación física en ejemplo, una variable no se puede llamar void,
la memoria, por ejemplo: 0x8f5afff4. int, else, const, switch.

La declaración de una variable en un programa en Para determinar la dirección física en la memoria de


C++ es una sentencia simple con la siguiente una variable se utiliza el operador (&). Por
sintaxis: ejemplo:

Tipo-de-variable nombre-de-variable; &precio;

Por ejemplo: Indica la dirección física del primer byte utilizado


por precio, algo así como: 0x8f5afff4.
char respuesta;
int edad, x;
5.5.3. CONSTANTES EN C++
Las variables se pueden inicializar en su
declaración. Adicionalmente puede hacer uso del preprocesador
Tipo-de-variable nombre-de-variable = dato; para definir constantes simbólicas, mediante la
directiva #define que permite insertar el valor de la
Por ejemplo: constante directamente en el código. Al compilar se
char opcion; sustituye tal cual un valor por otro tenga o no
float peso = 50.1; sentido, y no se reserva memoria para el valor.
int x = 0, y = 1, z = 23;
En los ejemplos anteriores, se definen variables Por ejemplo:
escribiendo el tipo de dato, a continuación, el
identificador o nombre de la variable y #define LONGITUD 10
opcionalmente el valor inicial que tomará. Cuando #define VALOR 54
se necesite declarar varias variables de un mismo #define pi 3.141592
tipo, se puede hacer una declaración abreviada en
una sola sentencia. Observe que no se especifica en estas constantes
En C++ los identificadores son palabras el tipo de dato, como si se requiere cuando se
compuestas de letras y/o números de hasta 32 declara la constante en la función principal o en una
caracteres significativos, que nos permiten dar de usuario, esto si no se maneja con cuidado,
nombre a variables, constantes, funciones o clases. puede algunas veces ocasionar errores al compilar.
Tenga en cuenta las siguientes reglas para
seleccionar un identificador: Al definir constantes simbólicas, se puede de la
✓ Debe ser una secuencia de letras, números o el misma manera definir macros, así:
carácter subrayado (_), donde el primer
carácter debe ser una letra o el subrayado. Los #define PI 3.14
identificadores son sensibles a la mayúscula y #define AREA_CIRCULO(x) PI * (x) * (x)
la minúscula. Por ejemplo, es diferente la
variable Neto, a la variable, neto. No dejar Ahora podemos usar la macro como si fuera una
espacios en blanco, ni utilizar símbolos función normal, así:
extraños en ellas, como el * o el - . Por ejemplo,
no utilice un identificador como Valor-Neto o int main()
Valor neto. Escoja identificadores claros y con {
referencia directa al problema. Por ejemplo,
double a;
para almacenar el salario de un empleado
utilice el identificador salario, para almacenar a = AREA_CIRCULO(3);
los datos de la abscisa x, utilice el identificador }
x.

6 PROGRAMACIÓN I – UNIDAD 5 DEPARTAMENTO DE TECNOLOGÍAS DEL CONOCIMIENTO


Durante la compilación la macro se expande a: Por ejemplo:

a = 3.14 * (3) * (3) float dato;


dato+=0.2;
donde la variable a almacena el resultado 28.26
A la variable real de nombre dato, se le asigna
5.5.4. EXPRESIONES Y OPERADORES mediante el operador “+=” un incremento de 0.2.
Estas mismas instrucciones podrían escribirse, así:
Los programas en C++, en términos generales
realizan numerosas operaciones aritméticas y float dato;
matemáticas de diferente complejidad con los datos dato=dato+0.2;
que le son proporcionados.
Se pueden realizar asignaciones múltiples por la
Una expresión en C++ es normalmente una derecha a variables. Por ejemplo:
ecuación matemática que muestra una secuencia
de operaciones y operandos, que especifican un int x, y, z;
cálculo. x=y=z=6;

Por ejemplo: A las variables enteras x, y, z, se les asigna el valor


6.
hipotenusa=sqrt(pow(cateto1,2)+pow(cateto2,2))
Operadores aritméticos
Los operadores fundamentales en C++ son: los de
Los operadores aritméticos permiten realizar las
asignación, los aritméticos, los lógicos y los
operaciones matemáticas básicas como: suma,
relaciónales.
resta, multiplicación, división y residuo.

Operadores de asignación
Los operadores de asignación permiten establecer
el valor de la expresión derecha a la variable o
constante situada a la izquierda.

Por ejemplo:

long int código =324589;

A la variable entera larga de nombre código, se le Las expresiones aritméticas que contengan
asigna mediante el operador “=” el valor 324589. múltiples operadores serán evaluadas de acuerdo
Adicional al operador “=”, C++ cuenta con otros con la prioridad o jerarquía del operador, así:
operadores de asignación que permiten simplificar
Nivel 1.- Paréntesis
las expresiones:
Nivel 2.- Multiplicaciones, divisiones y residuo

Nivel 3.- Sumas y restas

Dos o más operadores de la misma jerarquía u


orden, se resuelven de izquierda a derecha. Por
ejemplo:

3+4*2 es igual a 11
(3+4)*2 es igual a 14
10/2+3*2 es igual a 11
10/(2+3)*2 es igual a 4 10%3 es igual 1
2+7%3*5 es igual a 7

UNIVERSIDAD MILITAR NUEVA GRANADA PROGRAMACIÓN I – UNIDAD 5 7


Note que, en C++, no hay operadores para Los operadores incrementales y decrementales
exponentes ni radicales, en caso de necesitarse se tienen mayor jerarquía que los operadores
debe recurrir a las funciones estándar de biblioteca. aritméticos.

Operadores incrementales y decrementales Operadores relacionales


C++, también contiene el operador incremental Cuando se utilizan los operadores relacionales en
unitario ++ y el operador decremental unitario --, una expresión de C++, el operador produce un cero
que pueden ser utilizados en vez de las (0), o un uno (1), dependiendo del resultado de la
expresiones: x=x+1 o x+=1 con tan solo escribir expresión: falso o verdadero, respectivamente:
x++. Estos son:

Las siguientes sentencias parecerían que tienen el


mismo efecto:

Por ejemplo, si se escribe:

La variable c asume el valor 1.


Sin embargo, cuando se utilizan los operadores ++
int c;
y -- de prefijos, las operaciones se efectúan antes
c= 3<7;
de las operaciones de asignación. Si los operadores
están de sufijos, la asignación se efectúa en primer Si declara variables booleanas, estas almacenarán
lugar y la operación a continuación. valores, verdadero (true) o falso (false). Por
ejemplo, si se escribe:
Por ejemplo:
bool d;
int i=10;
d=3<7;
int j;
j=i++; La variable d asume el valor verdadero (1).

Al finalizar la secuencia, la variable j vale 10, ya Los datos caracteres se comparan utilizando el
que el operador ++ está de sufijo en la variable i, código ASCII. Por ejemplo:
en cambio i toma el valor 11. Los resultados son
diferentes si los operadores están de prefijo: ‘A’ < ‘a’;

int i=10; Es verdadera, ya que A es el código ASCII 65 y es


int j; menor que a, de código 97.
j=++i;
Operadores lógicos
La variable j toma el valor 11, al igual que la
variable i. Estos operadores unen dos o más expresiones
relacionales sencillas. Es decir, nos permiten unir
varias relaciones.

8 PROGRAMACIÓN I – UNIDAD 5 DEPARTAMENTO DE TECNOLOGÍAS DEL CONOCIMIENTO


Ejemplo 1:

cout<< “Bienvenido a la programación”;

Visualiza:

Bienvenido a la Programación

El operador ! tiene prioridad sobre &&, que a su


Los textos que queremos visualizar en pantalla van
vez tiene mayor prioridad que ||.
entre comillas dobles.
Los operadores lógicos devuelven un valor
Es posible utilizar una serie de operadores << en
verdadero o falso como resultado de operar varias
cascada.
expresiones.
int x=100, y=200;
El operador lógico &&, produce un valor verdadero
cout<< “Valor final ”<<x<<” “<<y;
solo si ambas expresiones son verdaderas. El
operador lógico ||, produce un valor verdadero si
Visualiza:
cualquiera de las expresiones es verdadera.
Valor final 100 200
Por ejemplo:
Para imprimir los datos que guardan las variables,
int c;
solamente mencione el nombre de la variable, a
c = 3 < 7 && 4 !=8
continuación del operador de inserción <<; no
La variable c asume el valor verdadero (1), ya que utilice comillas.
3<7 es verdadero y 4!=8 es verdadero, luego
Ejemplo 3:
verdadero && verdadero, produce verdadero (1).
cout<<”Los resultados son importantes \n pero
A continuación, se presenta una tabla que resume
más importante es la ganancia”;
la forma como se relacionan dos expresiones
relaciónales: Visualiza:

Los resultados son importantes pero


más importante es la ganancia

En este ejemplo se utilizó \n, para el salto de línea,


sin embargo, hay otra forma de hacerlo con la
5.6. ENTRADA Y SALIDA DE DATOS
instrucción endl, así:
Para manejar entrada o salida de datos en C++,
cout<<”Los resultados son importantes”
utilizamos el flujo estándar de salida cout y el
<<endl<<” pero más importante es la ganancia”;
operador de inserción <<; y para las entradas, el
flujo cin y el operador de extracción >>.
Ejemplo 4:
Para utilizar entradas/salidas de flujo, los
cout<<”El resultado es: ”<<3*5<<endl<<”y la
programas C++ deben incluir el archivo de
suma es: ”<<3+5;
cabecera iostream.
Visualiza:
5.6.1. SALIDA
El resultado es: 15
Utilice cout, cuando desea visualizar en la pantalla y la suma es: 8
de su equipo datos. El operador de inserción <<,
inserta datos en el flujo cout.
UNIVERSIDAD MILITAR NUEVA GRANADA PROGRAMACIÓN I – UNIDAD 5 9
5.6.2. ENTRADA

Utilice cin, cuando desea introducir datos por


teclado. El operador de extracción >>, extrae
valores del flujo para almacenarlos en variables.

Por ejemplo:

int n;
double x;
cout<<”Ingrese los datos: ”<<endl;
cin>>n;
cin>>x; Por ejemplo:

Visualiza: cout<<"Codigo \t Nombre \t Salario \n Fin de la


impresión".

Visualiza:

En las variables n y x, se almacenarán los datos


introducidos por teclado en el respectivo orden,
esto es, en n se almacenará 100 y en x se
almacenará 5.2546897. 5.6.4. FORMATO NUMÉRICO EN C++

Podríamos haber utilizado una sola línea de código En C++ podemos dar formato a los datos
para el ingreso de los datos, así: numéricos que imprime la salida cout<<, utilizando
manipuladores de ancho de campo setw(n), de
int n; número de decimales setprecision(n), notación
double x; exponencial o decimal setiosflags(n) o escoger el
cout<<”Ingrese los datos: ”<<endl; sistema numérico.
cin>>n>>x;
Para utilizar formatos numéricos, los programas
C++ deben incluir el archivo de cabecera
5.6.3. CARACTERES DE CONTROL iomanip.h
Codificación en C++:
Son llamados también secuencias de escape y nos
permiten avanzar líneas, hacer tabuladores,
retroceder, etc. Estos efectos deben ser
introducidos en forma de carácter, esto es, entre
comillas dobles. Para que se ejecute la acción hay
que usar una barra invertida (\) y una letra sin
espacio en medio, de esta forma serán
interpretados en forma distinta al texto normal: Ejecución y Validación:

Las tablas se inicializan usando algunas de las


siguientes tres formas:

10 PROGRAMACIÓN I – UNIDAD 5 DEPARTAMENTO DE TECNOLOGÍAS DEL CONOCIMIENTO


Codificación en C++:

Ejecución y Validación:

Ejecución y Validación:

5.8. BIBLIOTECA ESTÁNDAR DE


FUNCIONES

setw(18): establece el ancho del campo en 18. Los compiladores de C++, proporcionan la
setiosflags(ios::fixed): Despliega el número en biblioteca estándar de funciones, que contiene una
notación decimal. colección de funciones que facilitan el realizar
setprecision(3): Determina en tres el número de cálculos matemáticos, manipulación de cadenas,
lugares decimales. funciones de entrada y salida, manejo de archivos
y muchas otras cosas, de uso corriente.
5.7. ESTRUCTURAS SECUENCIALES
Existen muchas de estas librerías, algunas tienen
sus características definidas según el estándar,
Las estructuras de control se dividen en tres
ANSI C o C++; otras son específicas del
grandes categorías: secuencia, lógicas o
compilador, otras del sistema operativo, también
condicionales y repetición. Lo anterior en función
las hay para plataformas Windows, LINUX u otras.
del flujo de ejecución de las instrucciones.
En el presente curso nos limitaremos a las librerías
Los programas mostrados hasta el momento ANSI C y C++.
contienen instrucciones de control secuenciales, en
Cada biblioteca estándar tiene su archivo de
las que se ejecutan todas las instrucciones de arriba
cabecera que contiene los prototipos de todas las
hacia abajo en el orden que las escribimos, cada
funciones de dicha biblioteca y las definiciones de
una de las cuales se ejecutan una sola vez.
varios tipos de datos y de constantes requeridas
para dichas funciones. Este archivo de cabecera
obligatoriamente se debe mencionar antes de
EJEMPLO Elaborar un programa que permita hallar
utilizar la función correspondiente.
el área de un triángulo cuyos vértices en
coordenadas polares son: (0;0), (6;20º) y (9;50º) Las funciones de biblioteca se utilizan normalmente
en un programa, escribiendo el nombre de la
Análisis:
función y entre paréntesis el argumento o
La fórmula del área de un triángulo cuyos vértices argumentos de la función.
en coordenadas polares son (0;0), (r1;θ1) y FUNCIONES MATEMÁTICAS DE BIBLIOTECA
(r2;θ2) es: área = ½ r1 r2 sen(θ2-θ1) <math.h>
Las funciones matemáticas de biblioteca le
Codificación en C++: permiten al programador ejecutar ciertos cálculos
matemáticos comunes. Para utilizar las funciones
de la biblioteca de matemáticas en los programas
C++, debe incluir el archivo de cabecera math.h.
(en la versión 2012 no es necesario su utilización)

UNIVERSIDAD MILITAR NUEVA GRANADA PROGRAMACIÓN I – UNIDAD 5 11


Todas las funciones de la biblioteca de
matemáticas devuelven datos en tipo double. Los
argumentos de las funciones pueden ser
constantes, variables o expresiones. Luego de mostrar "Hola, mundo." y que el
programa se detiene, se borra la consola y
muestra la nueva consola, "Hola, nuevamente.".
Función rand()
La función rand genera números aleatorios, entre
0 y RAND_MAX, que es por lo menos el número
32767 o el valor máximo de un entero de dos bytes
(16 bits).

Visualiza: Por ejemplo, si se desea simular un rango de


valores del 0 al 5, utilizamos el operador de
módulo (%) en conjunto con rand, así:
rand()%6;
Al 6 se le llama factor de dimensionamiento.
Debido a que la función rand(), genera números
OTRAS FUNCIONES
seudo aleatorios, esto es, que cada vez que el
Función system ("pause") programa se ejecute genera la misma secuencia,
es mejor utilizar la función srand(), que genera en
La función system ejecuta un comando del sistema
el programa números diferentes tomando un
o un programa externo almacenado en disco.
argumento entero como semilla. Si utilizamos la
Cuando se escribe system ("pause") detiene la
función time() o reloj del computador como
consola que muestra los resultados luego de
semilla, generaríamos números diferentes cada
ejecutar un programa.
vez que se corra el programa.
Esta función nos será muy útil para detener el
Las funciones rand() y srand(), pertenecen a la
programa antes de que termine y la consola o
biblioteca <iostream> y la función time() requiere
ventana de ejecución desaparezca.
la librería <time.h>
Función system ("cls")
Cuando la función se escribe system ("cls") borra
la consola que muestra los resultados.

12 PROGRAMACIÓN I – UNIDAD 5 DEPARTAMENTO DE TECNOLOGÍAS DEL CONOCIMIENTO


Cada vez que se ejecute el programa genera un
número aleatorio del 0 al 5; para simular un dado
se le suma uno
Función toupper()
Convierte un carácter a mayúscula.

Con la instrucción int i=toupper(ch);, guardamos


en la variable i el entero ASCII, correspondiente a
la letra en mayúscula, para ser asignado a una
variable carácter e imprimirla.

UNIVERSIDAD MILITAR NUEVA GRANADA PROGRAMACIÓN I – UNIDAD 5 13

También podría gustarte