Sesion 02 c++
Transcript of Sesion 02 c++
Lenguaje de Programaciónww
w.ev
ira.
net
Pág. 01
Area de descargas - www.cursos.evira.net
El formato general de un programa en C++ es el siguiente:
void main(...) <--- línea de cabecera de la función principal.{ <--- inicio de bloque.................................................................... cuerpo de la función principal..................................} <--- fin de bloque
Encabezado / Definición de constantes y macros< declaración de variables globales/ inclusión de archivos.
SESION02Estructura de un Programa en C++
www.
evira.
net
Pág. 02
Area de descargas - www.cursos.evira.netLenguaje de Programación
1) Archivos de Cabecera Existe un extenso grupo de archivos de cabecera, y cada uno de
ellos sirve para manejar un grupo de funciones relacionadas. La ex-tensión h de estos archivos es la inicial de la palabra header. Ge-neralmente estos archivos se incluyen en las primeras líneas de un programa en C++.
- El compilador C++ desplegará un mensaje de error cuando se trate de incluir una función sin antes haber incluido el archivo de cabe-cera que contiene el prototipo de ella.
- Los archivos de cabecera son almacenados en el directorio INCLU-DE cuando se instala en el paquete del compilador.
Ejemplo:# include <stdio.h>
2) Comentarios En C++ existen dos formas de manejar los comentarios: a) La primera: /*...*/ <--- abarca varias líneas b) La segunda: //...// <--- comentario que abarca una línea
www.
evira.
net
Pág. 03
Area de descargas - www.cursos.evira.netLenguaje de Programación
/* el principal de los comentarios. // primer comentario de una línea. // segundo comentario de una línea.*/ <--- fin del comentario de varias lineas
// Primer_Ejemplo.cpp//# include <stdio.h> // Permite utilizar la función printf()# include <conio.h> // getch()void main (void){ printf (“Bienvenidos al curso C++\n”); printf(“\n”); getch ();}
Ejemplo:
www.
evira.
net
Pág. 04
Area de descargas - www.cursos.evira.netLenguaje de Programación
1.1 Inclusión de archivos Se logra por medio de la directiva #include en cualquiera de las
tres formas siguientes:
a) # include <nombre_archivo>
b) # include “nombre_archivo”
c) # include “d:\trayectoria\nombre_archivo” /* nombre_archivo será buscado en el directorio especificado en
trayectoria */
Ejemplo:i) # include “c:\datoscpp\pantalla.c”
1.2 La función main() Todo programa de C++ debe contener una función llamada main()
(principal) la cual sirve de enlace con el sistema operativo que se
--> /* nombre_archivo buscará sola-mente en el directorio INCLUDE*/
--> /* nombre_archivo buscará en el directorio de trabajo actual */
www.
evira.
net
Pág. 05
Area de descargas - www.cursos.evira.netLenguaje de Programación
esté utilizando.Al invocar a un programa escrito en C++ desde el indicador de presen-cia del sistema operativo, se le puede pasar ciertos valores que se lla-man argumentos, los cuales van a ser recibidos por la función principal. esto a su vez va a regresar un valor de retorno al sistema operativo que la invocó, la devolución del valor de retorno se hace por medio de la instrucción return.
Ejemplo:return 0;
1.3 Tipo de Datos C++ al igual que C contiene: - Tipos fundamentales o incorporados - Tipos derivados o estructurados Los tipos fundamentales se corresponden con las unidades de alma-cenamiento mas frecuentes de una computadora y los mas usuales son:
www.
evira.
net
Pág. 06
Area de descargas - www.cursos.evira.netLenguaje de Programación
Enteros: char 128...127 ..................... 8 bits int -32768 a 32767 ....... 16 bits Long int -2,147’483.648 ......... 32 bits 2,147’483.648
Enteros sin signo: unsigned char: 0...255
Reales:
float 10-38 ... 10+38 ....................... 32 bits double 10-308 ... 10+308 ....................... 64 bits long double 10-4932 ... 104932 ............. 80 bits
C++ define los tipos: short int int long intcomo tipos diferentes
i) unsigned int ---> (valores positivos o nulos) ---> rango 0 - 65,535
www.
evira.
net
Pág. 07
Area de descargas - www.cursos.evira.netLenguaje de Programación
ii) unsigned char ---> 0 ... 255 unsigned long ---> 0 ... 4,294’967,265
1.4 Datos tipo caracter En C++ un carácter se encierra entre comillas.
Ejemplo: char si = “s”; Const char inicial = ‘a’;
Las constantes de caracteres pueden contener mas de un carácter encerrado dentro de simples comillas (apóstrofes).
Tabla de Secuencias de Escape
Si el carácter que sigue a la diagonal es alguno de los caracteres mos-trados en la tabla se obtendrá el efecto explicado en ella (pero si es cualquiera de los demás caracteres del código ASCII; se visualizará el caracter tal cual.
www.
evira.
net
Pág. 08
Area de descargas - www.cursos.evira.netLenguaje de Programación
Secuencia Caracter Efecto \a BEL Sonido de la bcina \b BS Retroceso \n LF Nueva línea \r CR Retorno de carro \t HT Tabulación horizontal \v VT Tabulación vertical \\ \ Diagonal hacia atrás \’ ‘ Comilla sencilla \” “ Comilla doble
1.5 Operadores Son símbolos que indican los cálculos que se deben realizar sobre
una, dos o más variables o constantes de una expresión. En C++ existen los siguientes operadores:
1.5.1 Operadores Aritméticos Se aplican sobre objetos con valores numéricos.
www.
evira.
net
Pág. 09
Area de descargas - www.cursos.evira.netLenguaje de Programación
Sean x=20, y=30, a=100.0, b=200.0
Operador Operación Ejemplo Resultados + Adición z = x+y z = 50 - Sustracción z = y-x z = 10 * Multiplicación z = x*y z = 600 / División z = y/x z = 1.5 % Módulo z = y%x z = 10 ++ Incremento x++ x = 21 -- Decremento x-- x = 19
1.5.2 Operadores Relacionales Los operadores relacionales se usan para comparar los valo-
res que resultan de reducir expresiones. Los operadores relacionales en C++ son:
< Menor que> Mayor que<= Menor o igual que>= Mayor o igual que== igual que!= Diferente (no igual que)
www.
evira.
net
Pág. 10
Area de descargas - www.cursos.evira.netLenguaje de Programación
&& Y (conjunción) o AND || O (disyunción) u OR ! NO (negación)
1.5.3 Operadores Lógicos Los operadores lógicos se aplican siempre sobre los enuncia-
dos que resultan de las operaciones relacionales.
Prioridad de los Operadores
Operador Operación Ejemplo Resultados 1 () [] izq - derecha 2 !, ++, -- && der - izq 3 * / % izq - der 4 + - izq - der 5 Todos los operadores
www.
evira.
net
Pág. 11
Area de descargas - www.cursos.evira.netLenguaje de Programación
Ejemplo:1ro 8/4 * 6 2do 28/(3*4) 2*6 28/12 12 2
3ro (float) 2/4 4to (float) (2/4) 2.0/4 (float) 0 0.5 0.0
1.6 Operador Asignación Indica una operación de reemplazo o asignación. Asigna un valor derecho a un valor izquierdo.
Formato:nomb_variable = expresión
Operadorasignación
simple
Constantevariable
expresión
www.
evira.
net
Pág. 12
Area de descargas - www.cursos.evira.netLenguaje de Programación
Si x = 20 y = 30
1 z = x + y2 PI = 3.14163 si n = 123 n1 = n/100 // (asigna 1) re = n%100 // (asigna 23)4 z = x * y // (asigna 600)
Ejemplo:
1.7IdentificadoresLos identificadores son los nombres elegidos para referenciar va-riables, funciones, constantes, etiquetas, etc.
1.7.1. Identificadores creados por el usuario 1.7.2. Palabras reservadas
1.7.1.Identificadorescreadosporelusuario El usuario debe cuidar que los identificadores creados por él cumplan con las siguientes reglas generales:
www.
evira.
net
Pág. 13
Area de descargas - www.cursos.evira.netLenguaje de Programación
1) Un identificador puede estar formado por: i) Letras mayúsculas y/o minúsculas. ii) El caracter subrayado (-). iii) Dígitos del 0 al 9.
2) El primer caracter de un identificador debe ser una le-tra o el caracter de subrayado.
3) El tamaño de un identificador puede contener un núme-ro arbitrario de caracteres, borland c++ considera como significativos los primeros 32 o los n primeros que decida el programador donde: 1 <= n <= “32”
4) C++ es sencible al tamaño de las letras. Letras mayúscu-las y minúsculas los trata como caracteres diferentes.
nota.- La longitud permitida para el nombre de un identifi-cador varía con las versiones.
www.
evira.
net
Pág. 14
Area de descargas - www.cursos.evira.netLenguaje de Programación
Ejemplo:
- SUMA- Suma- suma- var_1- Var_1- VAR_1
son identificadoresdiferentes
5. Las palabras reservadas no podrán ser usados como identificadores creados por el usuario.
Ejemplo Identificadores válidos
ipitempmax_valor_auxiliarTasaDeInteres
Ejemplo Identificadores no válidos
1opcion x comienza con un dígitovalor a x contiene un caráter blanco__indice (comienza con dos subrayados)new (palabra reservada)
www.
evira.
net
Pág. 15
Area de descargas - www.cursos.evira.netLenguaje de Programación
1.7.1.1 Constantes Es un identificador cuyo valor permanece fijo,
durante el tiempo de ejecución.
Formato:
Ejemplo: i) Const int iva = 10;
1. Se puede definir constantes enteras gran-des o largas (doble precisión).
Ejemplo: 32 L, -106 L Se situa la l o L al final de la constante.
2. Constante real 0.0 3.1416 -99.05
Const <tipo> <identificador> = <valor>
www.
evira.
net
Pág. 16
Area de descargas - www.cursos.evira.netLenguaje de Programación
C++ permite especificar constantes de coma flo-tante de simple precisión sufijo f o F, o doble precisión sufijo l o L:
23.0f 3.1416l 23.0F 3.1416L
3. La letra e(o E) se utiliza para especificar el exponente de constantes de coma flotante escri-tas en notación científica.
10E4 1.0E-2 1e5
4. Constantes caracter ‘a’ ‘z’
5. Constantes cadena. “Borland C++” “FIIS_UNI” “\n\t”
(Secuencia de mas de un caracter encerrados entre doble comillas)
www.
evira.
net
Pág. 17
Area de descargas - www.cursos.evira.netLenguaje de Programación
1.7.7.2 Variables Una variable es un identificador, es un es-
pacio de memoria, tiene un nombre y un tipo de datos asociados, y cuyo valor puede cam-biar durante la ejecución del programa.
En el lenguaje C++ puede declararse una variable en cualquier lugar del programa con la única restricción que la declaración preceda a la prime-ra instrucción donde se utiliza la variable.
Formato:tipo nomb_variable
int nota, edad;int suma = 0, inicial =1;float desc;char prlm = ‘A’;
Ejemplo:
www.
evira.
net
Pág. 18
Area de descargas - www.cursos.evira.netLenguaje de Programación
int x = 5; // x del bloque 1{ int x=10; // x del bloque 2 { int x = 20; // x del bloque 3 { int x = 30; printf (“x=%d”, x); // x=30 } printf (“x=%d”, x); // x=20 } printf (“x=%d”, x); // x=10}printf (“x=%d”, x); // x=5
En C++ un bloque está formado por las instrucciones delimitadas por un par de llaves { }. Es imposible anidar una serie de bloques, y pueden de-clararse variables dentro de cada bloque.
www.
evira.
net
Pág. 19
Area de descargas - www.cursos.evira.netLenguaje de Programación
1.7.3 Procesos de Entrada/Salida En el Lenguaje C++ la Entrada/Salida se maneja de dos for-
mas: 1) La primera consiste en la utilización de prototipos, fun-
ciones cuyos prototipos vienen declarados en el archivo stdio.h y es lo que tradicionalmente ha utilizado el lenguaje C.
2) La segunda forma es propia de C++ y consiste en el ma-nejo de objetos y operadores cuyas definiciones se encuen-tran en el archivo iostream.h
- Funciones declaradas en stdio.h - Funciones declaradas en conio.h - Funciones declaradas en iostream.h
Funciones declaradas en stdio.h Requiere la inclusión de la siguiente línea al principio del
www.
evira.
net
Pág. 20
Area de descargas - www.cursos.evira.netLenguaje de Programación
programa: # include <stdio.h> En el archivo stdio.h se encuentran definidos entre otros
los prototipos de las funciones: printf() scanf() gets() puts()
Además de las macros: getc() putc()
La función printf() El formato general:
printf ( <cadena_formato>, <elem>, ... <elem>
Cadena_formato --> cadena de caracteres encerrado entre comillas dobles. Esta cadena es enviada a la pantalla.
www.
evira.
net
Pág. 21
Area de descargas - www.cursos.evira.netLenguaje de Programación
La tabla muestra los comandos de formato usuales:
Comando Sirve para % d Entero % ld Entero largo % u Entero sin signo % f Número de punto flotante % e Número de punto flotante en valor exponencial % c Carácter % s Cadena de caracteres % x Entero en formato hexadecimal % o Entero en formato octal
C++ provee una nueva forma de manejar la Entrada/Salida.
Las operaciones de entrada y salida se realiza mediante los flujos (streams) o secuencia de datos.
www.
evira.
net
Pág. 22
Area de descargas - www.cursos.evira.netLenguaje de Programación
Los flujos estándares son: cout (flujo salida) cim (flujo entrada)
Están definidos en el archivo iostream.h Formato salida:
<< : operador de inserción o “poner en” Dirige el contenido de la variable situado a su derecha
al objeto situado a su izquierda.
Ejemplo: Diseñar un programa que permita mostrar un mensaje.
cout <<[ mensaje<<] nombre_variable;
Flujo de salida
// Archivo demo_salida.cpp# include <iostream.h>void main(){ cout <<”Bienvenidos a la FIIS UNI”;}
www.
evira.
net
Pág. 23
Area de descargas - www.cursos.evira.netLenguaje de Programación
Se puede tener una salida en formato definido por el usua-rio, para lo cual C++ asocia un conjunto de manipuladores con el flujo de salida que modifica el formato por defecto de argumentos ...................
Valores simbólicos de manipuladores son dec, oct y hex que se visualizan representaciones decimales, octales y hexa-decimales de variables.
Ejemplo:
# include <iostream.h>void main(){ int n=123; cout <<”El número ingresado es = “<<dec <<n <<oct <<n <<hex <<n”;}
Salida:El número ingresado es = 123 173 76
dec octal hex
www.
evira.
net
Pág. 24
Area de descargas - www.cursos.evira.netLenguaje de Programación
Formato entrada:
cin >> nombre_variable;
Identificador que representa flujo entrada
>> : operador de extracción o de “lectura” Toma el valor del objeto flujo de su izquierda y lo situa
en la variable situada a su derecha.
www.
evira.
net
Area de descargas - www.cursos.evira.netLenguaje de Programación
FIN DE PRESENTACION