Algoritmos y Programación Básica

Descargar como pdf o txt
Descargar como pdf o txt
Está en la página 1de 11

PROGRAMACIÓN BÁSICA EN C++ (1ra PARTE)

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.

Algoritmo en diagrama de flujo Programa en C++ (CodeBlocks)


#include <biblioteca de funciones>
using namespace std;
int main( )
{
declaración de variables;

sentencias A;
sentencias B;
sentencias C;

return 0;
}

4. BIBLIOTECA DE FUNCIONES EN C++

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.

5. IDENTIFICADORES DE LAS VARIABLES EN C++


Son los nombres utilizados para referirse a las variables utilizadas en un algoritmo o programa.
Pueden ser letras (excepto la ñ o las vocales con acentos), dígitos del 0 al 9 y el carácter de
subrayado, la única restricción es que el primer carácter debe ser una letra o un símbolo de
subrayado, los caracteres siguientes pueden ser letras, números o símbolos de subrayado,
generalmente no se limita la longitud del identificador de una variable,

Correcto ====> contador, cuenta23, balance_total

Incorrecto ====> 2cuenta, hola!, balance...total

En C/C++ las mayúsculas y las minúsculas se tratan como distintas.

6. TIPOS DE DATOS EN C++


Existen varios tipos de datos fundamentales, en C++ que acompañados de sus modificadores de
tipos permiten el almacenamiento de datos en diversos rangos, los tipos de datos numéricos más
usuales son:

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:

const int mayor_de_edad = 18;


const double pi = 3.141592;

8. DECLARACION DE VARIABLES EN C++

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++

En las expresiones es posible cambiar el dato de una variable o de una expresión.

(tipo) variable;

Ejemplo:
(int) pi;

tipo (expresión);

Ejemplo:
int (pi+10.25);

10. ENTRADA Y SALIDA EN C++

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.

Bloque de entrada en un algoritmo Ejemplo: En CodeBlocks #include <iostream>


 FLUJO DE ENTRADA
Sintaxis: cin >> variable1 >> variable2 …;

Bloque de salida en un algoritmo


 FLUJO DE SALIDA
Sintaxis: cout <<expresión1 << expresión2 …;

En el flujo de salida para realizar salto de línea


puede utilizarse <<endl.

Manipuladores de despliegue de datos:

Para enteros:
cout <<setw(tamaño) <<expresión;

Para reales en punto flotante:


cout <<fixed <<setprecision(cantidad de decimales) <<expresión;

Para reales en notación científica:


cout <<scientific <<setprecision(cantidad de decimales) <<expresión;
11. ASIGNACIÓN

La asignación en un algoritmo o programa permite almacenar el valor de la expresión en una


variable.

Bloque de asignación en un algoritmo Asignación en C++:

variable = expresión;

12. OPERADORES ARITMETICOS

+ suma
- resta
* multiplicación
/ división
% módulo o resto de la división entera
-- decremento en la unidad
++ incremento en la unidad

13. OPERADORES DE RELACIÒN

mayor que >


menor que <
igual a ==
mayor o igual que >=
menor o igual que <=
distinto a =

14. OPERADORES LOGICOS en C++

Operador lógico y &&


Operador lógico o ||
Operador lógico no !

15. FUNCIONES MATEMATICAS ESTANDAR EN C++

Para utilizar las funciones matemáticas, declarar la biblioteca “math.h”


acos(x) Devuelve el arco coseno de x
asin(x) Devuelve el arco seno de x
atan(x) Devuelve el arco tangente de x
ceil(x) Devuelve el entero mayor a x.
cos(x) Devuelve el coseno de x
exp(x) Devuelve el valor de e elevado a x
fabs(x) Devuelve el valor absoluto real x
floor(x) Devuelve el entero menor a x.
log(x) Devuelve el logaritmo natural de x
log10(x) Devuelve el logaritmo en base 10 de x
pow(x, y) Devuelve el valor de x elevado a la potencia y
round(x) Devuelve el valor entero de redondeo
sin(x) Devuelve el seno de x
sqrt(x) Devuelve la raíz cuadrada de x
tan(x) Devuelve la tangente de x

16. ESTRUCTURA SELECTIVA DOBLE (if en C++)


La estructura selectiva doble permite elegir una de dos opciones, de acuerdo a una CONDICIÓN
lógica evaluada y cuya salida puede efectuarse por verdad o por falso realizándose en ambos casos
las acciones que correspondan.

if (condición)
{
sentencia A;
sentencia B;
}
else
{
sentencia C;
}

a) Diagrama de flujo c) Programa C++

¿QUÉ ES UNA CONDICIÓN? Es una expresión lógica que al ser evaluada da como

resultado un valor lógico (verdadero o falso).

¿CÓMO SE CONSTRUYE UNA CONDICIÓN?

Una CONDICIÓN se construye a través de operadores y operandos:

Los operadores pueden ser operadores de relación u operadores lógicos.


1ra FORMA: Haciendo uso de los operadores de relación, dicha Condición se denomina Expresión
de relación.

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

TABLAS DE VERDAD DE LOS OPERADORES LÓGICOS

17. ESTRUCTURA SELECTIVA MULTIPLE (switch en C++)


La estructura selectiva múltiple permite elegir una de múltiples opciones según el resultado de
evaluación de la expresión numérica entera, por ejemplo:

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++

18. ESTRUCTURAS REPETITIVAS EN 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.

18.1 VARIABLE CONTADOR

Es una variable en la memoria del ordenador que se inicializa generalmente en 1 y que se


incrementará en una unidad cada vez que se repite un cierto proceso, generalmente se utiliza en
los ciclos repetitivos para llevar la cuenta de determinadas acciones que se realizan durante la
resolución de un problema.
Por ejemplo:

La variable c tipo contador, se incrementa en la unidad.

18.2 VARIABLE ACUMULADOR

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:

La variable s tipo acumulador, se incrementa de acuerdo al resultado de expresión numérica.

18.3 ESTRUCTURA REPETITIVA PARA (for en C++)


El ciclo repetitivo Para/For repite un conjunto de acciones un cierto número de veces. Posee una
variable de control que adoptará todos los valores en un rango desde un valor inicial hasta un valor
final, según un cierto incremento.

a) Diagrama de flujo

for (variable=valor inicial; condición de repetición; incremento)


{
sentencia A;
sentencia B;
sentencia C;
}

b) Programa C++

18.4 ESTRUCTURA REPETITIVA MIENTRAS (while)


La estructura repetitiva Mientras repite un conjunto de instrucciones, mientras se cumple una cierta
condición. Por ejemplo:

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.

18.5. ESTRUCTURA REPETITIVA HACER-MIENTRAS (do-while)


La estructura repetitiva Hacer-Mientras realiza o ejecuta un conjunto de instrucciones y después
evalúa la condición de repetición, si es verdadera se vuelven a repetir las instrucciones nuevamente
y cuando la condición se hace falsa el ciclo termina. Por ejemplo:

do
{
sentencia A;
sentencia B;
sentencia C;
}
while (Condición);

a) Diagrama de flujo b) Programa en C++

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.

También podría gustarte