Está en la página 1de 20

1República Bolivariana de Venezuela

Ministerio del Poder Popular para la Educación

Escuela Técnica Comercial “Colegio Madre Rafols”

Valera, Trujillo

ALGORITMOS (TEORÍA)

Lizmar Sarai Suarez Castrillón # 21


6to Informática Sección “B”.

Docente: Néstor Araujo.


Programación II

Octubre 2020.
ii
Tabla de Contenidos

Capítulo 1 Introducción e información general...................................................................1


Título 2.............................................................................................................................1
Título 2.............................................................................................................................1
Título 3.........................................................................................................................1
Título 3.........................................................................................................................1
Capítulo 2 Figuras y tablas.................................................................................................2
Título 2.............................................................................................................................2
Título 3.........................................................................................................................2
Título 3.........................................................................................................................2
Capítulo 4 Resultados y discussion....................................................................................5
Lista de referencias..............................................................................................................6
Introducción

Un algoritmo nos permite realizar una tarea o encontrar la solución a un problema

en particular mediante una serie de instrucciones claramente definidas y estructuradas

que también deben estar en orden, es decir, deben ser secuenciales y finitas, es decir,

tener una posible solución. De esta forma, en cuanto se define un estado inicial y un

input, si seguimos las instrucciones formuladas, llegamos al estado final y encontramos la

solución al problema o logramos la meta definida.

Este informe está destinado a mostrar mediante especificaciones de un problema

real, diseñar una solución para el mismo utilizando un algoritmo y diagramas de flujo, se

pueden codificar en un lenguaje de programación. Con este objetivo en mente, presentaré

las propiedades básicas de cada algoritmo, los diferentes tipos de algoritmos que se

pueden utilizar, reconoceremos las diferencias entre variables, constantes, acumuladores,

contadores, entender que son los datos y los tipos de datos, luego de investigar

definiremos el uso de las expresiones aritméticas, relacionales y lógicas, como una serie

de aspectos básicos que componen la construcción de algoritmos y las diversas formas de

representación de algoritmos.
¿Qué es un Algoritmo?

El algoritmo es una serie ordenada de procesos o pasos que se deben realizar para

lograr la solución a un problema en particular. Hay varios tipos de algoritmos que

corresponden a la vida diaria, por ejemplo, seguir las instrucciones para cepillarse los

dientes, poner en marcha una lavadora y algoritmos utilizados para resolver o realizar

procesos más complicados como operar un programa informático.

Partes de un Algoritmo

Todo algoritmo debe constar de las siguientes partes:

 Input o entrada. El ingreso de los datos que el algoritmo necesita para operar.

 Proceso. Se trata de la operación lógica formal que el algoritmo emprenderá con lo

recibido del input.

 Output o salida. Los resultados obtenidos del proceso sobre el input, una vez

terminada la ejecución del algoritmo.

Tipos de Algoritmos

Existen cuatro tipos de algoritmos en informática:

1. Algoritmos computacionales. Un algoritmo cuya resolución depende del cálculo, y

que puede ser desarrollado por una calculadora o computadora sin dificultades.

2. Algoritmos no computacionales. Aquellos que no requieren de los procesos de un

computador para resolverse, o cuyos pasos son exclusivos para la resolución por

parte de un ser humano.

3. Algoritmos cualitativos. Se trata de un algoritmo en cuya resolución no intervienen

cálculos numéricos, sino secuencias lógicas y/o formales.


4. Algoritmos cuantitativos. Todo lo contrario, es un algoritmo que depende de

cálculos matemáticos para dar con su resolución.

Etapas para La Solución de un Problema.

1. Identifique el problema. La resolución de problemas y la toma de decisiones

comienzan con darse cuenta de que hay una situación que debe solucionarse. A

menudo, un problema crece hasta que nos sorprende.

2. Describe el problema. En esta etapa es necesario recopilar información para poder

describir el problema de la manera más correcta y veraz, ayudado por técnicas como

análisis de datos, lluvia de ideas, análisis de campo de fuerza o análisis de palabras

clave.

3. Analice la causa. Aquí es donde buscamos la causa raíz del problema, identificamos

las fuerzas que contribuyen al agravamiento del problema, las clasificamos entre las

posibles causas y eliminamos los efectos derivados de ellas.

4. Soluciones opcionales. Tu objetivo es hacer una lista de posibles alternativas. Se

buscan estrategias que aborden la causa raíz y resuelvan el problema de una vez por

todas.

5. Toma de decisiones. Elimina las peores alternativas y compara el resto entre sí. El

objetivo es encontrar una solución correcta mediante un proceso práctico y científico.

Puede que haya una decisión correcta, pero no funcionará a menos que todos los

involucrados la acepten.
6. Plan de acción. La mejor solución posible en la que todos estén de acuerdo no

resolverá un problema si no se implementa. Un plan de acción define quién hará qué

y cuándo. Organice las tareas que implementarán la decisión.

La Resolución de un Problema mediante un Ordenador.

Consiste en, partiendo de una especificación del problema, construir un programa

que lo resuelva. Los procesos necesarios para la creación de un programa son:

1. Especificación y análisis del problema en cuestión.

2. Diseño de un algoritmo que resuelva el problema.

3. Codificación del algoritmo en un lenguaje de programación.

4. Validación del programa.

Elementos de un Algoritmo

 Variable: Es un elemento del algoritmo cuyo valor se conoce por un nombre o un

identificador y que pertenece a un tipo de dato que se definió al inicio del algoritmo.

Una variable es un nombre que se le asigna a un elemento de datos que se encuentra

en posiciones contiguas en la memoria principal y cuyo valor puede cambiar durante

la ejecución de un programa.

 Constante: Son los elementos del algoritmo que no cambian su valor en todo el

algoritmo. Las constantes deben inicializarse según el tipo de datos al que pertenecen.

Una constante son datos cuyo valor no puede cambiar durante la ejecución del

programa. Se le da un valor en tiempo de compilación y permanece sin cambios a lo

largo del programa.


 Expresión: Es una combinación de variables, constantes, valores constantes,

operadores y funciones especiales que tienen un valor determinado cuando se evalúan.

Las expresiones más representativas son numéricas y lógicas.

Datos

Los datos son los hechos que describen eventos y entidades. "datos" es una

palabra en plural que se refiere a más de un hecho. Son algo abstracto que por sí solo no

dice nada.

Tipos de datos

 Numéricos

 Enteros. Este tipo de datos corresponde a aquellas variables que solo pueden

recibir valores sin parte decimal. Suelen utilizarse en variables que contienen la

cantidad de elementos que no se pueden dividir, como la cantidad de personas, la

cantidad de edificios, entre otros.

 Reales. Por otro lado, este tipo de datos corresponde a aquellas variables cuyo

valor tiene una parte fraccionaria, aunque al mismo tiempo puede contener

valores enteros.

 Texto

 Caracteres. En este tipo de datos, todos los caracteres, letras, números y símbolos

especiales conocidos. Por lo tanto, consta de números: '0', '1', '2',..., '9'; letras: "a",

"b", "c",..., "z"; mayúsculas: 'A', 'B', 'C',..., 'Z'; y caracteres especiales: "%", "*",

"?",..., "/". En algunos lenguajes de programación, como Java y C #, se utilizan


comillas simples ('') para identificar caracteres, pero esto puede cambiar según el

lenguaje de programación.

 Cadenas. Forman un conjunto de caracteres, una unión de varios caracteres, que

pueden ser palabras o frases. El valor de este tipo de datos suele ir entre comillas

("").

 Lógicos

 Boolean. Los tipos de datos lógicos o booleanos solo aceptan dos valores:

verdadero o falso. Suelen utilizarse como banderas para identificar si el proceso

se ha ejecutado. Más tarde, puede aplicarlos a los ejemplos y comprender cómo

funcionan. Ahora es importante saber que solo pueden tomar dos valores:

Verdadero o Falso

Operadores aritméticos

Los operadores aritméticos toman valores numéricos (inmediatos o variables)

como sus operandos y devuelven valores numéricos únicos. Los operadores aritméticos

estándar son suma o suma (+), resta o resta (-), multiplicación (*) y división (/)

Orden de los operadores aritméticos

La mayoría de las operaciones de datos en la parte de instrucciones de un

programa o subprogramas son realizadas por operadores. Los operadores en Pascal se

dividen en tres categorías: operadores aritméticos, operadores lógicos y operadores

racionales, que determinan el orden de evaluación de las declaraciones.


Cuando se combinan varios operadores en una expresión, se evaluarán en un

orden muy preciso. Primero, están las operaciones aritméticas, luego las operaciones de

comparación y luego los operadores lógico

Los propios operadores aritméticos también tienen un orden de evaluación en las

expresiones. La secuencia de evaluación es la siguiente:

1. negativo(-)

2. Multiplicación y división (*, /)

3. Módulo (%)

4. Suma y resta (+, -), concatenación de cadenas (+)

Si necesita un orden de evaluación diferente en su código, coloque la parte a

evaluar en la prioridad primero encerrándola entre paréntesis, como se muestra en la

siguiente expresión:

X = (z * 4) + (y * (a + 2));

Tipos de expresiones

Dependiendo de los tipos de operadores que incluyen, las expresiones pueden ser

de cinco tipos: aritméticas, lógicas, relacionales, alfanuméricas y de asignación. A

continuación puedes ver algunos ejemplos de cada uno de ellos:

1. Expresiones Aritméticas: son aquellas que utilizan operadores aritméticos y como

operandos tienen datos numéricos.

En esta tabla agrupamos los operadores aritméticos que usaremos para construir

nuestras expresiones así como algunos ejemplos de su uso:

OPERADOR OPERACION EJEMPLO RESULTADO


^ Potencia 4^3 64
* Multiplicación 8.25*7 57.75
/ División 15/4 3.75
Mod Modulo(residuo) 15mod 2 1
Div División entera 17 div 3 5
+,- Suma y resta 125.78 * 62.5 188.28
- resta 65.3 -32.33 32.97

2. Expresiones Relacionales: Son las expresiones en las que aparecen los operadores

relacionales. El resultado de expresiones relacionales siempre será uno de dos

valores posibles, o verdadero o falso. Ejemplos:

SIMBOLO DESCRIPCION ESTRUCTURA EJEMPLO/RESULTADO


< Menor que (a < b) 5<6 =V
> Mayor que (a > b) 5>6 =F
<= Menor o igual que (a < = b) 5<=6 =V
>= Mayor o igual que (a > = b) 5>=6 =F
== Igual que (a = = b) 5==6 =F
=! Distinto que (a =! b) 5 =! 6 =V

3. Expresiones Lógicas: son aquellas que usan exclusivamente operadores lógicos. El

resultado de una expresión lógica siempre es verdadero o falso. El operador Y hará

que la expresión sea verdadera sólo y exclusivamente cuando los dos operandos sean

verdaderos. Una expresión con el operador O será verdadera cuando alguno de los

dos operandos, o los dos, sean verdaderos. El operador NO negará la expresión, es

decir, que el resultado final será verdadero cuando el operando sea falso, o viceversa.

Ejemplos:

SIMBOLO DESCRIPCION COMPARACIONES RESULTADO EJEMPLO


&& Y (AND) V && V V 7 > 2 && 3 < 7
F && F F 7 > 2 && 3 > 7
V && F F 2 > 7 && 7 > 3
F && V F 2 > 7 && 3 > 7
II O (OR) V II V V 8 = = pow(2,3) II 4 > 2
F II F V 9 = = pow(3,2) II 2 > 4
V II F V 3 > 9 II 8 = = pow(2,3)
F II V F 4 ==pow(2,3) II 5 >7
! NEGACION(NOT) !F V ! (3 > 6)
!V F ! (6 > 3)

Estructuras

1. Estructuras Secuenciales. Una estructura en la que una acción (instrucción) sigue a otra

acción (instrucción) sucesivamente. Las tareas se suceden de tal manera que el resultado

de una tarea es la entrada de la siguiente, y así sucesivamente, hasta el final del proceso.

La estructura de la secuencia se expresa de la siguiente manera:

Inicio

Acción 1

Acción 2

Acción N

Fin

2. Estructura de Decisión. es llamada así precisamente porque tiene la funcionalidad de

tomar acciones en base al resultado lógico de una decisión. Para construir estructuras de

control utilizamos la palabra reservada “If” o si, lo cual indica condición.

Las estructuras de decisión se dividen en:

a. Estructura de decisión simple: Es la que se ejecuta cuando la condición

propuesta es verdadera, ejemplo de ello tenemos

INICIO

1
2

<?php

If (2 > 1)

//si 2 es mayor que 1 entonces:

hecho "La condición se cumple";

hecho "<br />";

hecho "El mensaje anterior se muestra si y solo si, la condición es

verdadera";

FIN

b. Estructura de decisión doble: Es la estructura que nos permite tomar un camino

diferente si la condición establecida no es verdadera, para esto haremos uso de

la palabra clave “else”, que sería como decir sino (o de lo contrario)

INICIO

<?php
If(1 > 1)

//si 1 es mayor que 1 entonces:

hecho "La condición se cumple";

}else{

hecho "La condición no se cumple";

hecho "<br />";

hecho "El mensaje anterior se muestra si y solo si, la condición es

verdadera";

FIN

c. Estructuras de decisión anidadas: Este tipo de estructuras nos permite tomar más

de un camino para una condición y esta estructura puede ser expresada de dos

formas, anidando estructuras, o con el uso de la palabra “else if”, lo que podría

traducirse como, sino, si…Bueno veamos un ejemplo de cada uno, primero

usando las anidadas:

INICIO

<?php

if(1 > 1){


//si 1 es mayor que 1 entonces:

hecho "La condición se cumple";

}else{

if(1 < 1){

hecho "La condición se cumple";

}else{

hecho "un else anidado";

hecho "<br />";

hecho "El mensaje anterior se muestra si y solo si, la condición es

verdadera";

FIN

Y ahora veremos las estructuras de decisión con esta nueva palabra else if

INICIO

<?php

if(1 > 1){

//si 1 es mayor que 1 entonces:

echo "La condición se cumple";


}elseif(1 < 1){

//de lo contrario 1 es menor que 1 entonces:

echo "La condición se cumple";

}else{

//si nada de lo anterior se cumple entonces:

echo "un else anidado";

echo "<br />";

echo "El mensaje anterior se muestra si y solo si, la condición es

verdadera";

FIN

d. Estructura de repetición o bucle. Hace posible la ejecución repetida de una o más

instrucciones

i. Repita para

Se utiliza para repetir una sentencia o grupo de sentencias un número fijo

de veces.

REPITA PARA

variable_de_control:= valor_inicial HASTA valor_final

Sentencia 1;

Sentencia 2;

FIN RP

ii. Repetir hasta


Se utiliza para repetir una sentencia o grupo de sentencias hasta que una

condición especificada sea verdadera.

REPETIR HASTA

Sentencia 1;

Sentencia 2;

........

Sentencia n;

HASTA CONDICIÓN;

iii. Repita mientras

Se utiliza para repetir una sentencia o grupo de sentencias mientras una

condición especificada sea verdadera.

REPITA MIENTRAS

Condición se cumpla haga

Sentencia 1;

Sentencia 2;

........

Sentencia n;

Diagrama de flujo

Un diagrama de flujo o diagrama de actividades es una forma de representar

gráficamente un algoritmo o proceso de cierta naturaleza a través de una serie de pasos

estructurados y vinculados que se pueden verificar en su conjunto.


La representación gráfica de estos procesos utiliza un determinado conjunto de

figuras geométricas en el diagrama de flujo, que representan cada paso específico del

proceso a evaluar.

Estas formas predefinidas están conectadas entre sí mediante flechas y líneas,

estas flechas y líneas marcan la dirección del flujo y determinan el recorrido del proceso,

como si fuera un gráfico. Según la representación del diagrama de flujo, existen cuatro

tipos de diagramas de flujo:

1. Según el orden de lectura, va de derecha a izquierda.

2. vertical. Va de arriba a abajo, como una lista ordenada.

3. panorámico. Le permiten ver todo el proceso en una hoja de papel utilizando

modelos verticales y horizontales.

4. arquitectónico. Representa un horario de trabajo o un área de trabajo.

Los diagramas de flujo son un mecanismo de control y descripción de procesos

que, debido a su versatilidad y sencillez, permiten organizar, evaluar o repensar mejor la

secuencia de diversas actividades y procesos. Suelen emplearse en disciplinas como

programación, informática, economía, finanzas, procesos industriales e incluso

psicología cognitiva.

Simbología de un diagrama de flujo

Los principales símbolos convencionales que se emplean en los diagramas de

flujo son los siguientes:


SIMBOLO NOMBRE FUNCION

Inicio/ Final Representa el inicio y el final

de un proceso

Línea de Flujo Indica el orden de la ejecución

de las operaciones. La flecha

indica a siguiente instrucción

Entrada/Salida Representa la lectura de datos

en la entrada y la impresión de

datos en la salida

Proceso Representa cualquier tipo de

operación

Decisión Nos permite analizar una

situación, con base en los

valores verdadero y falso

Reglas para elaborar un diagrama de flujo:

1. Se debe de escribir de arriba hacia abajo y de izquierda a derecha.

2. Los símbolos se unen con líneas.

3. Se usan flechas para indicar el flujo de información.

4. Los círculos de decisión pueden y deben tener más de una línea de flujo.
5. Todos los símbolos pueden tener más de una línea de entrada.
Lista de referencias

 https://sites.google.com/site/siteskarla/diagrama-de-flujo

 https://sites.google.com/site/siteskarla/diagrama-de-flujo

 https://concepto.de/wp-content/uploads/2018/02/simbologia.jpg

 https://sites.google.com/site/algoritmicai/estructuras-de-repeticion

 https://sites.google.com/site/portafoliodeacarlosmolina/estructuras-de-decision

 https://sites.google.com/site/portafoliodealgyprogdejgii/estructuras-de-

decision-conceptos-tipos-y-sintaxis-condicionales-simples-dobles-multiples-

anidadas-y-selectivas

 https://sites.google.com/site/geomatematicasyalgoritmos/estructuras/1-

estructuras-secuenciales

También podría gustarte