Algoritmos y Programación Básica
Algoritmos y Programación Básica
Algoritmos y Programación Básica
1. EL LENGUAJE C++
El lenguaje C++ se desarrolló en 1983 a través de su creador Bjarne Stroustrup y que en 1985 con
algunas mejoras adicionales e innovadoras herramientas se logró colocar a disposición del mundo de
la informática.
En la actualidad existe una diversidad de entornos de desarrollo integrados, el que utilizaremos para
este curso será el lenguaje C++ de Code::Blocks.
2. ¿QUÉ ES UN ALGORITMO?
Un algoritmo es un conjunto finito, ordenado y lógico de pasos que conducen a la solución de
un problema. Una de las formas de expresar un algoritmo es a través de un Diagrama de Flujo.
3. ¿QUÉ ES UN PROGRAMA?
Un programa es un conjunto de sentencias (instrucciones) escritas en un lenguaje de
programación que nos permite resolver un determinado problema a través de un ordenador,
generalmente un programa se escribe luego de realizar el algoritmo y por tal razón existe una
correspondencia directa entre un algoritmo y un programa.
sentencias A;
sentencias B;
sentencias C;
return 0;
}
Las bibliotecas de funciones en C++ son aquellas bibliotecas que contienen funciones que permiten
realizar ciertas tareas o cálculos en C++, deben ser declarados en la cabecera de un programa a
través de la directiva #include. Por ejemplo, cuando se utilicen flujos de entrada/salida se debe
declarar la biblioteca iostream.h a través de #include <iostream> si se utilizan funciones
matemáticas como fabs(x), sin(x), sqrt(x), pow(x, n), etc., debe declararse su propia biblioteca
#include <math.h>.
Cabe mencionar que existe algo así como una súper biblioteca bits/stdc++.h que incluye todas las
bibliotecas estándar.
TIPO RANGO
int -2147483648 a 2147483647
unsigned int 0 a 4294967295
long long -9223372036854775808 a 9223372036854775807
unsigned long long 0 a 18446744073709551615
float 3.4 E -38 a 3.4 E +38
double 1.7 E -308 a 1.7 E +308
long double 1.1 E -4932 a 1.1 E+4932
7. CONSTANTES
Para declarar constantes en C++ debe utilizarse la palabra reservada const seguido de un tipo de
dato y un identificador de la constante, el signo de igualdad y el valor que no cambiará a lo largo
del programa.
Ejemplos:
Todas las variables deben ser declaradas antes de ser utilizadas, la forma general de declararlas
es: tipo variable1, variable2, variable3, …;
Ejemplos:
int n, i, habitantes;
double salario, importe, descuento;
9. CAMBIAR EL TIPO DE DATO EN C++
(tipo) variable;
Ejemplo:
(int) pi;
tipo (expresión);
Ejemplo:
int (pi+10.25);
En C++, la entrada y salida de datos hacen uso de los flujos (streams) estándares de Entrada/Salida.
El flujo de entrada representa datos que proceden generalmente del teclado y el flujo de salida fluye
normalmente hacia la pantalla.
Para utilizar los flujos de E/S debe declararse la biblioteca “iostream” en las directivas del
preprocesador.
Para enteros:
cout <<setw(tamaño) <<expresión;
variable = expresión;
+ suma
- resta
* multiplicación
/ división
% módulo o resto de la división entera
-- decremento en la unidad
++ incremento en la unidad
if (condición)
{
sentencia A;
sentencia B;
}
else
{
sentencia C;
}
¿QUÉ ES UNA CONDICIÓN? Es una expresión lógica que al ser evaluada da como
OPERADORES DE RELACIÓN
2da FORMA: Haciendo uso de los operadores lógicos, dicha Condición se denomina Expresión
lógica.
OPERADORES LÓGICOS
a) Diagrama de flujo
switch (expresión)
{
case val1: sentencia A;
break;
case val2: sentencia B;
break;
case val3: sentencia C;
break;
case val3: sentencia D;
break;
default: sentencia E;
}
b) Programa C++
Las estructuras repetitivas llamados también ciclos repetitivos (for, while y do-while) son
estructuras de programación que permiten repetir varias veces un conjunto de pasos o acciones en un
algoritmo o un conjunto de sentencias en un programa.
Es una variable en la memoria del ordenador cuya misión es almacenar cantidades variables,
generalmente se utiliza en los ciclos repetitivos para efectuar sumas o productos sucesivos,
la principal diferencia con la variable contador es que el incremento o decremento de cada suma
es variable en lugar de una constante como es el caso de la variable de tipo contador.
Es importante resaltar que antes de ingresar al ciclo repetitivo la variable tipo acumulador debe
inicializarse en un valor conveniente, generalmente con el valor 0.
Por ejemplo:
a) Diagrama de flujo
b) Programa C++
while (Condición)
{
sentencia A;
sentencia B;
sentencia C;
}
b) Programa en C++
a) Diagrama de flujo
ENTRADA DE DATOS HASTA FIN DE ARCHIVO. En competencias de programación donde
un Juez virtual verifica la validez de los programas, para lo cual necesita hacer correr los programas
con un conjunto de datos contenidos en un archivo y verificar sus resultados para lo la entrada de
datos se realiza haciendo uso de la estructura repetitiva while de la siguiente forma:
while (cin >> variable1 >>variable2 >>variable3 ……. )
{
sentencia A
sentencia B
sentencia C
}
Lo que esto hace es ir leyendo valores del teclado hasta que el usuario presione CTRL+Z o si el Juez
virtual está leyendo de un archivo, leerá hasta que se llegue al fin del archivo.
do
{
sentencia A;
sentencia B;
sentencia C;
}
while (Condición);
NOTA: Los ciclos repetitivos pueden anidarse, es decir que algunos ciclos pueden estar
incluidos dentro de otros, donde el ciclo más interno logra su recorrido más rápidamente
que el ciclo externo, la única condición para conformar un ciclo anidado es que los ciclos
internos deben estar incluidos totalmente dentro de un ciclo externo.