0% encontró este documento útil (0 votos)
29 vistas8 páginas

Cap 2 Algoritmos y Programació C 1-2023

El documento describe los conceptos básicos de algoritmos, incluyendo formas de expresar algoritmos como diagramas de flujo y pseudocódigo, y el lenguaje de programación C++, incluyendo estructuras, tipos de datos, operadores y funciones.
Derechos de autor
© © All Rights Reserved
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como PDF, TXT o lee en línea desde Scribd
0% encontró este documento útil (0 votos)
29 vistas8 páginas

Cap 2 Algoritmos y Programació C 1-2023

El documento describe los conceptos básicos de algoritmos, incluyendo formas de expresar algoritmos como diagramas de flujo y pseudocódigo, y el lenguaje de programación C++, incluyendo estructuras, tipos de datos, operadores y funciones.
Derechos de autor
© © All Rights Reserved
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como PDF, TXT o lee en línea desde Scribd
Está en la página 1/ 8

2.1 ¿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.

2.2 FORMAS DE EXPRESAR UN ALGORITMO


Existen básicamente dos formas de expresar un algoritmo, a través de un Diagrama de flujo o a través del
Pseudocódigo.

2.2.1 DIAGRAMA DE FLUJO


Un diagrama de flujo es un diagrama que utiliza diversos bloques con un significado particular con la
finalidad de describir los pasos de un algoritmo.

Existe una aplicación denominada Clickcharts que permite crear fácilmente representaciones visuales de
procesos, organización, modelado, mapas conceptuales, pero especialmente diagramas de flujo para
expresar de forma gráfica los algoritmos.
2.2.2 PSEUDOCÓDIGO
El pseudocódigo es una forma de expresar los distintos pasos de un algoritmo, de una manera textual y
con las instrucciones muy concretas y precisas que conducen a la solución de un determinado problema y
su lenguaje natural es muy cercano a un lenguaje de programación.
2.3 ALGORITMOS EN PSeInt y PROGRAMACIÓN EN C++

2.3.1 ¿QUÉ ES PSeInt?


PSeInt es un pseudolenguaje de especificación de algoritmos, cuyo objetivo principal es facilitar la tarea
de diseñar y estructurar los algoritmos expresados en pseudocódigo y/o diagrama de flujo.

2.3.2 ¿QUÉ ES UN LENGUAJE DE PROGRAMACIÓN?


Un lenguaje de programación es un lenguaje formal, diseñado para expresar procesos a través de un
programa, lo cual permite al ordenador realizar operaciones y resolver problemas en cualquier campo de
la actividad humana.

Un lenguaje de programación está formado por un conjunto de símbolos, palabras reservadas, reglas
sintácticas y semánticas para la correcta escritura de los programas.

Al proceso de escribir, compilar, verificar, depurar y mantener el programa fuente se le denomina


programación.

Algunos lenguajes de programación son el ada, basic, c/c++, clipper, delphi, fénix, forth, haskell, java,
modula-2, pascal, perl, php, prolog, simula, visual basic, etc.

2.3.3 ORÍGENES DE C/C++

El lenguaje C fue creado en 1972 por Kenneth L. Thompson y Dennis M. Ritchie en AT&T Bell
Laboratories y es un lenguaje estructurado y de nivel medio ya que incorpora las estructuras de los
lenguajes de alto nivel con la funcionalidad del ensamblador para acceder directamente a la memoria y a
los dispositivos del ordenador, posteriormente en 1989 se creó C++ por el científico danés Bjarne
Stroustrup, cuya característica adicional fue la programación orientada a objetos.

En la actualidad existe una diversidad de entornos de desarrollo integrados para escribir programas en
C++ como Borland C++, Codeblocks, C++ Builder, Visual C++, etc., cuya característica principal de
estos dos últimos es la programación orientada a objetos y un entorno visual de desarrollo.
2.3.4 ESTRUCTURA DE UN ALGORITMO Y UN PROGRAMA EN C++
La estructura de todo algoritmo expresado en pseudocódigo (PSeInt) y todo programa en C++
(CodeBlocks) se muestra a continuación:

Algoritmo en PSeInt Programa en C++ (CodeBlocks)

Proceso Nombre_del_algoritmo #include <Biblioteca de


funciones>
Acción 1 o paso 1
using namespace std;
Acción 2 o paso 2
int main( )
Acción 3 o paso 3
{
……….
declaración de variables
……….
sentencias del programa
Acción N o paso N
return 0;
FinProceso
}

2.3.5 BIBLIOTECAS DE FUNCIONES EN C++


En C++ existen ciertos archivos que se denominan: Bibliotecas o Librerías de funciones que contienen el
código de programas que permiten realizar diversas tareas o cálculos a realizar como, por ejemplo: leer
datos del teclado, escribir en la pantalla, manejar números, usar funciones matemáticas, etc.
Una Biblioteca de funciones se declara al principio de todo el código escrito en C++a través de:
#include <nombre de la Biblioteca>
Ejemplos de algunas Bibliotecas de funciones:
iostream: Permite utilizar las funciones de entrada y salida de datos a través de cin y cout.
math: Las funciones contenidas en esta Biblioteca permiten la manipulación de funciones matemáticas
como por ejemplo raíz cuadrada, funciones trigonométricas, logarítmicas, etc.
stdlib: Las funciones contenidas en esta Biblioteca permiten la manipulación de funciones de uso general
como por ejemplo funciones para generar números aleatorios.
string: Las funciones contenidas en esta Biblioteca permiten la manipulación de cadenas alfanuméricas.

Por ejemplo, para flujos de entrada/salida: #include <iostream>


Si se utilizan funciones matemáticas: #include <math.h>

2.3.6 IDENTIFICADORES DE LAS VARIABLES EN PSeInt Y EN C++


Los identificadores son los nombres utilizados para referirse a las variables utilizadas en un algoritmo o
programa.
La longitud de un identificador puede variar entre 1 y 32 caracteres o inclusive hasta 255 caracteres
dependiendo del compilador, 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.

Correcto ====> cont, cuenta23, balance_total


Incorrecto ====> 1cont, hola!, balance...total
En C/C++ las mayúsculas y las minúsculas se tratan como distintas.

2.3.7 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 los siguientes rangos:

En Codeblocks:

TIPO BYTES BITS RANGO


bool 1 8 false, true
char 1 8 -128 a 127
unsigned char 1 8 0 a 255
short 2 16 -32768 a 32768
unsigned short 2 16 0 a 65535
int 4 32 -2147483648 a 2147483647
unsigned int 4 32 0 a 4294967295
long long 8 64 -9223372036854775808 a 9223372036854775807
unsigned long long 8 64 0 a 18446744073709551615
float 4 32 3.4 E -38 a 3.4 E +38
double 8 64 1.7 E -308 a 1.7 E +308
long double 12 96 1.1 E -4932 a 1.1 E+4932
void 0 0 sin valor
Nota: El tipo void se usa para declarar funciones que no devuelven ningún valor.
2.3.8 OPERADORES ARITMETICOS

En PSeInt y en C++

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

Adicionalmente en C++
-- decremento en la unidad
++ incremento en la unidad

Adicionalmente en PSeInt
^ potencia

2.3.9 OPERADORES DE RELACIÓN


PSeInt En C++
mayor que > >
menor que < <
igual a = ==
mayor o igual que >= >=
menor o igual que <= <=
distinto a <> =

2.3.10 OPERADORES LÓGICOS EN PSeInt y en C++


PSeInt C++
Operador lógico y Y& &&
Operador lógico o O | ||
Operador lógico no NO ~ !
2.3.11 FUNCIONES MATEMATICAS ESTANDAR

FUNCIONES en PSeInt
rc(x) o raiz(x) Raíz Cuadrada de X
abs(x) Valor Absoluto de X
ln(x) Logaritmo Natural de X
exp(x) Función Exponencial de X
sen(x) Seno de X
cos(x) Coseno de X
tan(x) Tangente de X
asen(x) Arcoseno de X
acos(x) Arcocoseno de X
atan(x) Arcotangente de X
trunc(x) Parte entera de X
redon(x) Redondeo al entero más cercano a X
azar(x) Entero aleatorio entre 0 y x-1

FUNCIONES 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 redondeo al entero más cercano a x
sin(x) Devuelve el seno de x
sqrt(x) Devuelve la raíz cuadrada de x
tan(x) Devuelve la tangente de x

2.3.12 DECLARACION DE CONSTANTES EN C++


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.1416;

2.3.13 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;
2.3.14 CAMBIAR EL TIPO DE DATO EN C++
En las expresiones es posible cambiar el dato de una variable o de una expresión.

Para cambiar el tipo de dato del contenido de una variable: (tipo) variable;
Ejemplo: (int) pi;

Para cambiar el tipo de dato del resultado de una expresión: tipo (expresión);

Ejemplo: int (pi+10.25);

2.3.15 ENTRADA Y SALIDA EN PSeInt y C++


En un algoritmo escrito en PSeInt la entrada de datos utiliza la instrucción Leer y la salida utiliza la
instrucción Escribir, como se muestra en el siguiente ejemplo:

Escribir “Ingrese su edad :”


Leer edad

En C++, la entrada y salida de datos hacen uso de los flujos (streams) estándares de Entrada/Salida que
son implementados a partir de la versión 2.0 de C++ con la finalidad de mejorar la eficiencia en la entrada
y salida de datos. Los flujos estándares son el cin(flujo de entrada) y el cout(flujo de 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.

Ejemplo: En CodeBlocks #include <iostream>


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

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

En expresión1 o expresión2 puede utilizarse “\n” salto de línea o el manipulador de salto de línea endl.

Ejemplos: cout <<”El resultado es=” <<res <<”\n”;


cout <<”El resultado es=” <<res <<endl;
2.3.16 ASIGNACIÓN
La asignación en un algoritmo o programa permite almacenar el valor de la expresión en
una variable.

EN PSeInt

Variable  Expresión
o
Variable = Expresión

EN C++

variable = expresión;

También podría gustarte