Está en la página 1de 19

ALGORITMOS DE PROGRAMACIÓN

PARA INGENIERÍA
Introducción a los algoritmos y estructura de datos
Sesión N°5 y 6

MTR. ING. ALVARO E. CHÁVEZ ZUBIETA


Lenguaje C++ en la IDE DEV C++
- Primero, que es fácil de entender y de imaginar que hará cuando se ejecute.
- Segundo, se distinguen un conjunto de palabras que deben tener un significado especial para el compilador de
C/C++, como son include , void, main y cout. A este conjunto de palabras se le llaman palabras reservadas del C/C++.
- Tercero, se distinguen además un conjunto de símbolos extraños como # , /* , */ , < , > , { , } , ; , ( , ) .

Palabras reservadas
Elementos básicos del C/C++

Elemento Propósito
#include < Incluir el archivo de salida/entrada estándar (iostream.h).
iostream>
main Nombre de la función principal. Su presencia es obligatoria en cualquier
programa C y la ejecución del programa comienza dentro de ella.
() Paréntesis que acompañan a las funciones, dentro se colocan su
conjunto de argumentos
/* */ Símbolos de comienzo y final de comentario. Los comentarios son
ignorados por el compilador y se utilizan para ayudar a clarificar el
código del programa.
// Símbolo de comentario en C++. Nos indica que desde ese punto y hasta
final de línea existe un comentario.
; El punto y coma marca el final de una sentencia (una orden).
{} Agrupan un bloque de sentencias pertenecientes a una función o a una
sentencia de control
identificadores
Los identificadores son los nombres elegidos para variables, constantes, funciones,
clases y similares. Los identificadores pueden contener cualquier combinación de
letras, dígitos o subrayados ( _ ) seleccionados de acuerdo con las siguientes reglas:
 el primer carácter del nombre debe ser una letra o un subrayado.
 solo letras, dígitos o subrayados puede seguir la letra inicial
 los espacios en blanco no están permitidos.
 utilice el subrayado para separar las palabras en un nombre que conste de varias
palabras o use mayúscula para la primea letra de una o mas de las palabras.
 el nombre de una función no puede ser ninguna de las palabras reservadas (es una
palabra clave elegida por el lenguaje para un propósito especial)
 C++ es sensible al tamaño de las letras. Así pues las letras mayúsculas y minúsculas se
tratan como caracteres diferentes.
ESTRUCTURA GENERAL DE UN PROGRAMA EN C++
#include Directivas del Preprocesador #include <iostream>
#include <stdlib>
#define Macros del procesador
#define PI 3.141592
Declaraciones globales using namespace std;
 Funciones propias del C++ float y;
 Variables float area(float );
 Prototipos de funciones
int main () {
float z;
main ( ) cout << "Este programa es un ejemplo simple de lo que es un programa bien
{ estructurado";
cout << endl << "Calcula el área de un circulo"<< endl;
Declaraciones globales do
Sentencias {
} cout << "Introduce el valor del radio del circulo " << endl;
cin >> z;
} while (z<0);
Func1(……..)
y=area(z); /* Llamada a la función area */
{ cout << "El area vale " << y << endl;
… ……. system("pause");
} return 0;
Func2(.…….) }
{ float area (float x){
……… float resultado;
} resultado=PI*x*x; /* guarda en resultado el producto de Pi por x por x */
return(resultado); /* valor devuelto por la función */
}
Librerías del lenguaje
 Las librerías o archivos de cabecera en lenguaje C, son los que contienen o
almacenan funciones que realizan operaciones y cálculos de uso frecuente y
son parte de cada compilador.

#include<stdio>: contiene los prototipos de las funciones,


macros, y tipos para manipular datos de entrada y salida.
#include<stdlib.h>: contiene tipos, macros y funciones para
la conversión numérica, generación de números aleatorios,
búsquedas y ordenación, gestión de memoria y tareas
similares.
#include<string.h>: contiene los prototipos de las funciones y macros
de clasificación de caracteres

#include<ctype.h>: contiene varias funciones para comprobación de tipos


y transformación de caracteres

#include<math.h>: contiene los prototipos de las funciones y otras


definiciones para el uso y manipulación de funciones matemáticas
#include<time.h>: contiene los prototipos de las funciones, macros, y
tipos para manipular la hora y la fecha del sistema

#include<conio.h>: contiene los prototipos de las funciones, macros,


y constantes para preparar y manipular la consola en modo texto en
el entorno de MS-DOS®

Con la función system(“pause”) se utiliza para pausar un programa


una vez esté ejecutando y reemplaza a la función getch() de la
librería #include<conio.h>. Ambas hacen lo mismo y se colocan la
final antes de cerrar el programa principal.
#include<iostream.h>: en esta librería residen los flujos stream (cin y cout)
acompañados del operador de inserción (<>) respectivamente y se utiliza
para datos de entrada y salida como printf y scanf de la librería <stdio.h>.
Las { } en ambos ejemplos indican el comienzo y el final del programa
principal o función principal. Se puede escribir el mismo código con la librería <iostream>
Ejemplo comparativo utilizando la librería <stdio.h>
#include<conio>
#include<stdio.h> #include<iostream>
#include<conio.h>
main() using namespace std;
{
main ()
float x, cuadrado;
{
printf("ingrese un numero: "); float x, cuadrado;
scanf("%f",&x); cout<<"ingrese un numero: ";
cuadrado=x*x; cin>>x;
printf("el cuadrado del numero es cuadrado=x*x;
%f:",cuadrado); cout<<"el cuadrado del numero es:
getch(); "<<cuadrado;
} getch();
}
Secuencias de escape: las secuencias de escape son constantes especiales que se diferencian por
llevar adelante una barra invertida (\) y cumplen una función específica, Las más usadas son:

cout << "Usted gano definitivamente\n"


cout << "uno de los siguientes premios:\n";
cout << "Usted gano definitivamente" << endl;
cout << "uno de los siguientes premios:" << endl;

Indique la línea de código que muestre la siguiente salida:


Entrada y salidas
Cout  consola de salida estandar #include<conio.h>
Sintaxis: #include<iostream>
cout << “Ingrese el valor de la variable”;
using namespace std;
insertar
main ()
Cin  consola de entrada estandar {
Sintaxis: float x, cuadrado;
Cin >> variable_1; cout<<"ingrese un numero: ";
cin>>x;
extraer cuadrado=x*x;
cout<<"el cuadrado del numero
Todos los datos se envían como
caracteres. La interpretación depende es: "<<cuadrado;
del programa. getch();
}
Tipo de datos
https://www.youtube.com/watch?v=xBOpQN8jR54

Tipo Tamaño Rango


alfanumérico en bytes
y numérico
Char 1 -128…255
Unsigned char 1 0 … 255
int 4 –2,147,483,647 … 2,147,483,647
Short (short int) 2 -32768 … 32767
Long (Long int) 4 -2147483648 … 2147483647
Float 4 -3.4*(10 -38) … 3.4*(10 +38)
double 8 -1.7*(10 -308) … 1.7*(10 +308)
Long double 10 -3.4*(10 -4932) … 1.1*(10 +4932)

Número
tipo de
Descripción de bytes Rango
Dato
https://www.youtube.com/watch?v=fLc2oJJRXqc típico
Dato de tipo
bool 1 0(false), 1(true)
lógico
Operadores relacionales y lógicos

https://www.youtube.com/watch?v=v3Md7UlZSzw
Operadores unarios
Operadores unarios: los operadores unarios
admiten un único argumento y cuentan con
operador de cambio de signo (-) y también con
los de incremento (++) y decremento (- -) y son
una forma fácil de sumar o restar 1 a una
variable.
Operadores aritméticos
Operadores combinados
Sintaxis
variable OP=expresión  variable = variable OP (expresión)

operador ejemplo Equivalencia


+= i+=1; i++; o
i=i+1;
-= f-=4; f= f – 4;
*= n*=2; n=n*2;
/= n/=2; n=n/2;
%= n%=2; n=n%2;
^= k^=3; k=k^2;
Evaluación de expresiones
Preceden Operadores Asociatividad
cia
0 () []  Izq a derecha
1 * / % Izq a derecha
2 + - Izq a derecha
3 > >= < <= Izq a derecha
4 == != Izq a derecha
5 & ^ | (manipulación de Izq a derecha
bits)
6 && || Izq a derecha
7 = += -= *= ….. (asignacion) Derecha a izq
3*4+2  el operador * es de mayor precedencia  (3*4)+2
a – b + c – d  existen 2 operadores del mismo nivel de precedencia, se asocia de izq a derecha
(a – b)+ (c – d )
a = b + =c = 5  para los operadores de asignación son asociados derecha a izq  a = (b + =(c = 5))
expresiones
A tener en cuenta al realizar expresiones:
• El compilador dividirá la expresión en una secuencia de
operaciones, por orden de prioridad (similar a nuestro lenguaje
matemático):
z = 3*y + (2*cos(PI/4)); // Incluir <math> para usar cos()
• Los cálculos internos (secuencia de instrucciones de máquina
generada por el compilador) se ejecutarán por este orden:

• 3.1416 / 4  r1
• cos(r1)  r2
• 2*r2  r3
• 3*y  r4
• r4+r3  r5
• z=r5  r6 siendo el resultado de la expresion