Está en la página 1de 15

UNIVERSIDAD ANDINA DEL CUSCO

FACULTAD DE INGENIERIA Y ARQUITECTURA

ESCUELA PROFESIONAL DE INGENIERIA DE SISTEMAS

ACTIVIDAD DE INVESTIGACIÓN
FORMATIVA

CURSO: ALGORITMICA Y LABORATORIO DE PROGRAMACION

DOCENTE: ACURIO GUTIERREZ MARIA ISABEL

INTEGRANTES:

HUAMAN AMACHE ZARETH GISELL


RAMOS MAMANI DAMARIS RAISEL
TUPAYACHI ALAGON LUIS
YAÑAC MACEDO DIEGO ROBERTO

CUSCO – PERU
2019

1
INDICE
ALGORITMO SEGÚN TRES AUTORES: ............................................................................................................3
Características de los algoritmos ..........................................................................................................................3
Etapas para la solución de un problema por medio del computador ....................................................................3
Algoritmos cualitativos y algoritmos cuantitativos ..............................................................................................4
Técnicas de representación ...................................................................................................................................4
Diagramas Nassi-Schneiderman o Chapin ...........................................................................................................5
Pseudocódigo........................................................................................................................................................6
Técnicas de diagramación ....................................................................................................................................6
Estructuras: ...........................................................................................................................................................7
DEFINICIÓN SOBRE ALGORITMO SEGÚN EL GRUPO .................................................................................7
ELEMENTOS DE UN ALGORITMO ...................................................................................................................7
Caracteristicas de un algoritmo ............................................................................................................................9
ETAPAS DE UN ALOGORITMO .........................................................................................................................9
CONCLUSIONES ............................................................................................................................................. 12
BIBLIOGRAFIAS ............................................................................................................................................. 13
ALGORITMO SEGÚN TRES AUTORES:
Fernando J. Lage.
Zulma Cataldi.
Fernando A. Salgueiro.

INTRODUCCION:

Un algoritmo se puede definir como una secuencia de instrucciones que representan un modelo de
solución para determinado tipo de problemas. O bien como un conjunto de instrucciones que
realizadas en orden conducen a obtener la solución de un problema.

Para realizar un programa es conveniente el diseño o definición previa del algoritmo. El diseño de
algoritmos requiere creatividad y conocimientos profundos de la técnica de programación. Luis
Joyanes, programador experto y autor de muchos libros acerca de lógica y programación nos dice
“en la ciencia de la computación y en la programación, los algoritmos son más importantes que
los lenguajes de programación o las computadoras. Un lenguaje de programación es sólo un medio
para expresar un algoritmo y una computadora es sólo un procesador para ejecutarlo”.

Loa algoritmos son independientes de los lenguajes de programación. En cada problema el


algoritmo puede escribirse y luego ejecutarse en un lenguaje diferente de programación. El
algoritmo es la infraestructura de cualquier solución, escrita luego en cualquier lenguaje de
programación.

Características de los algoritmos

 Preciso. Definirse de manerarigurosa, sin dar lugar a ambigüedades.


 Definido. Sise sigue un algoritmo dos veces, se obtendrá el mismo resultado.
 Finito. Debe terminar en algún momento.
 Puede tener cero o más elementos deentrada.
 Debe producir un resultado. Los datos de salida serán los resultados de efectuar las
instrucciones.

Se concluye que un algoritmo debe ser suficiente para resolver el problema. Entre dos
algoritmos que lleven a un mismo objetivo, siempre será preferible el más corto (se deberá
analizar la optimización de tiempos y / o recursos).

Etapas para la solución de un problema por medio del computador


1. Análisis del problema, definición y delimitación (macro algoritmo). Considerar los datos
de entrada, el proceso que debe realizar el computador y los datos de salida.
2. Diseño y desarrollo del algoritmo (se utiliza pseudocódigo, escritura natural del
algoritmo, diagramas de flujo, etc.)
3. Prueba de escritorio. Seguimiento manual de los pasos descritos en el algoritmo. Se hace
con valores bajos y tiene como fin detectar errores.
Codificación. Selección de un lenguaje de programación y digitación del pseudocódigo haciendo uso
de la sintaxis y estructura gramatical del lenguaje seleccionado.
Compilación o interpretación del programa. El software elegido convierte las instrucciones escritas
en el lenguaje a las comprendidas por el computador.

1. Ejecución. El programa es ejecutado por la máquina para llegar a los resultados


esperados.
2. Depuración (debug). Operación de detectar, localizar y eliminar errores de mal
funcionamiento del programa.
3. Evaluación de resultados. Obtenidos los resultados se los evalúa para verificar si son
correctos. (Un programa puede arrojar resultados incorrectos aún cuando su ejecución no
muestra errores).

Algoritmos cualitativos y algoritmos cuantitativos


Un algoritmo es cualitativo cuando en sus pasos o instrucciones no están involucrados cálculos
numéricos. Las instrucciones para armar un aeromodelo, para desarrollar una actividad física o
encontrar un tesoro, son ejemplos de algoritmos cualitativos.

Trate de diseñar el algoritmo para estos casos

Tomar mate
 Utilizar una guía telefónica
Cocinar siguiendo una receta
 Cambiar una llanta de automóvil
Buscar una palabra en el diccionario

Los algoritmos cuantitativos involucran cálculos numéricos. Ejemplos:

 Solución de un factorial
 Solución de una ecuación de segundo grado
 Encontrar el mínimo común multiplicador.

Técnicas de representación
Para la representación de un algoritmo, antes de ser convertido a lenguaje de programación, se
utilizan algunos métodos de representación escrita, gráfica o matemática. Los métodos más
conocidos son:

 Diagramación libre (Diagramas de flujo)


Diagramas Nassi-Shneiderman
 Pseudocódigo
 Lenguaje natural (español, inglés, etc.)
 Fórmulas matemáticas

El lenguaje natural puede no ser suficientemente preciso, permitiendo ambigüedades, obteniendo


una descripción no del todo satisfactoria. Las fórmulas, propias del lenguaje matemático, son un
buen sistema
INTRODUCTION

An algorithm can be defined as a sequence of instructions that represent a solution model for certain
types of problems. Or as a set of instructions that performed in order lead to the solution of a problem.

To design a program it is convenient to design or define the algorithm beforehand. Algorithm design
requires creativity and deep knowledge of programming technique. Luis Joyanes, expert programmer
and author of many books about logic and programming tells us “in the science of computing and
programming, algorithms are more important than programming languages or computers. A
programming language is just a means to express an algorithm and a computer is just a processor to
execute it. ”

The algorithms are independent of the programming languages. In each problem the algorithm can be
written and then executed in a different programming language. The algorithm is the infrastructure of
any solution, then written in any programming language.

INTRODUCCION

Un algoritmo se puede definir como una secuencia de instrucciones que representan un modelo de
solución para determinado tipo de problemas. O bien como un conjunto de instrucciones que realizadas
en orden conducen a obtener la solución de un problema.

Para realizar un programa es conveniente el diseño o definición previa del algoritmo. El diseño de
algoritmos requiere creatividad y conocimientos profundos de la técnica de programación. Luis Joyanes,
programador experto y autor de muchos libros acerca de lógica y programación nos dice “en la ciencia
de la computación y en la programación, los algoritmos son más importantes que los lenguajes de
programación o las computadoras. Un lenguaje de programación es sólo un medio para expresar un
algoritmo y una computadora es sólo un procesador para ejecutarlo”.

Loa algoritmos son independientes de los lenguajes de programación. En cada problema el algoritmo
puede escribirse y luego ejecutarse en un lenguaje diferente de programación. El algoritmo es la
infraestructura de cualquier solución, escrita luego en cualquier lenguaje de programación.
representación, pero no suelen ser fáciles de convertir en
programas. Por lo tanto, trataremos en este curso los tres
primeros modelos.
Diagramas de flujo.
Es quizás la forma de representación más antigua. Algunos autores suelen llamarlos también como
diagramas de lógica o flujogramas.
Un diagrama de flujo utiliza cajas estándar tales como las que se muestran en las figuras 1, 23:

Diagramas Nassi-Schneiderman o Chapin


También conocidos como Diagramas de Chapin, corresponden a uno de los tipos de diagramación
estructurada. Las acciones se escriben en rectángulos o cajas sucesivas. Se pueden escribir diferentes
acciones en una caja. La simbología utilizada es como vemos en las figuras siguientes
Pseudocódigo
Es la técnica que permite expresar la solución de un problema mediante un algoritmo escrito en palabras
normales de un idioma (por ejemplo, el español), utilizando palabras imperativas. Es común encontrar en
pseudocódigo palabras como: Inicie, lea, imprima, sume, divida, calcule, finalice.

Inicie

{Calcule el salario neto y deducción de 6% } {Esto es un

comentario} Lea nombre, horas, valor_hora

Salario_bruto=horas*valor_hora

Deducción=Salario_bruto*6%

Técnicas de diagramación
En nuestra asignatura, por su facilidad y adecuada representación de los problemas a resolver,
utilizaremos para representar los algoritmos, a la técnica de diagramas de flujo.
A su vez, para un mejor ordenamiento en la realización de esos diagramas, se han elaborado
técnicas de diseño de los mismos.

Nosotros utilizaremos las denominadas top-Down y estructurada.

La primera de ellas, la top-Down, persigue la descomposición de un problema en partes, tomando


en primer lugar la dimensión total, para luego ir identificando sus partes componentes e ir
tratándolas en forma particular y con mayor grado de detalle cada vez, hasta llegar a una expresión
final de resolución simple, trivial o ya conocida.

La diagramación estructurada no indica la forma en que se pueden utilizar y vincular los símbolos
gráficos entre sí.

De esta manera se distinguen las siguientes estructuras elementales, que luego al combinarse entre
sí, dan lugar al diagrama total.
Estructuras:

 Secuencia
 Decisión simple
 Decisión múltiple
 Repetición con condición
inicial
 Repetición con condición final

DEFINICIÓN SOBRE ALGORITMO SEGÚN EL GRUPO


En el contexto matemático, los algoritmos son una serie de normas o leyes específicas que hace
posible la ejecución de actividades, cumpliendo una serie de pasos continuos que no le originen
dudas a la persona que realice dicha actividad. Los algoritmos se pueden expresar de diversas
formas: lenguaje natural, lenguaje de programación, pseudocódigo y diagramas de flujo.

Sabemos que para que un ordenador pueda llevar adelante una tarea cualquiera, se
tiene que contar con un algoritmo que le indique, a través de un programa, que es lo que
debe hacer con la mayor precisión posible. Quizás esta afirmación debería ser revisada
desde la óptica de la Inteligencia Artificial, pero por el momento la mantendremos como
válida dentro del carácter introductorio de este curso. Consecuencia de lo anterior es la
importancia del estudio de los algoritmos dentro de las Ciencias de la Computación.
Recordemos que un algoritmo es “una sucesión finita de pasos no ambiguos que se pueden
ejecutar en un tiempo finito”, cuya razón de ser es la de resolver problemas; por tanto
“problema” para nosotros, serán aquellas cuestiones, conceptuales o prácticas, cuya
solución es expresable mediante un algoritmo.

ELEMENTOS DE UN ALGORITMO
Dado que un algoritmo es un conjunto de instrucciones elaboradas con la finalidad de resolver un
problema, los elementos que se utilizan en la construcción de algoritmos son los siguientes:
Comandos
Datos
Variables y contantes
Operadores

Comandos o Palabras reservadas


Todos los lenguajes, naturales o computacionales, tienen palabras que denotan una acción. Los
comandos no son más que acciones que debe interpretar y ejecutar el computador. Cada comando
conserva una sintaxis determinada, es decir la forma de utilizarlo.

Los lenguajes computacionales tienen en su repertorio comandos dirigidos al procesamiento de


archivos y datos, entre ellos: Inicio, Leer, Imprimir.

Datos
Un dato es un campo que puede convertirse en información. Un dato puede significar un número, una
letra, un signo ortográfico o cualquier símbolo que represente una cantidad, una medida, una palabra
o una descripción. La importancia de los datos está en su capacidad de asociarse dentro de un contexto
para convertirse en información. Es decir, por si mismos los datos no tienen capacidad de comunicar
un significado y por tanto no pueden afectar el comportamiento de quien los recibe. Para ser útiles, los
datos deben convertirse en información que ofrezca un significado, conocimiento, ideas o
conclusiones.

Los datos simples pueden ser:

 Numéricos (Reales, Enteros)


 Lógicos
 Carácter (Char, String)

Variables y Constantes
Son espacios de memoria creados para contener valores que de acuerdo a su naturaleza deseen mante
nerse (Constantes) o que puedan variar (Variables).

Constante
Es un dato que permanece con un valor, sin cambios, es decir constante, a lo largo del desarrollo del
algoritmo o a lo largo de la ejecución del programa. Se utiliza cuando necesitamos que el valor de
determinada variable se mantenga durante la ejecución del programa o hasta tanto se requiera su
cambio.

Variable
Es un dato cuyo valor puede variar a lo largo del desarrollo del algoritmo o en el transcurso de la
ejecución del programa.

Una variable descrita o declarada de un tipo determinado solo podrá contener,


valores de ese tipo. Una variable declarada numérica entera, no podrá contener números reales. Se
utiliza cuando el dato que contiene sufrirá cambios o variará en la medida que cambien los valores que
maneje.

Operadores aritméticos

Son utilizadas para construir fórmulas matemáticas. Las variables y constantes utilizadas son de natu
raleza numérica, es decir números enteros o reales, y las operaciones a efectuar son de orden
aritmético.

Operadores relacionales

Los operadores relacionales sirven para expresar las condiciones en los algoritmos.
Las variables y constantes utilizadas son de distinta naturaleza, el resultado de una expresión lógica y
relacional es de tipo lógico.

Operadores lógicos
Se utilizan en los programas cuando se requiere conocer o evaluar si las variables o constantes
determinadas cumplen con ciertas condiciones. De cumplirse o no, permiten un conjunto de
instrucciones que pueden o no ejecutarse. Una expresión lógica puede ser verdadera o falsa.

Caracteristicas de un algoritmo
Las características fundamentales que debe cumplir todo algoritmo son:

 Debe ser preciso: tiene que indicar el orden de realización de cada paso.
Debe estar definido: Si se sigue un algoritmo dos veces, se debe obtener el mismo resultado
cada vez.
 Debe ser finito: el algoritmo se debe terminar en algún momento; o sea, debe tener un número
finito de pasos.
 Debe ser legible: El texto que lo describe debe ser claro, tal que permita entenderlo y leerlo
fácilmente.
Debe definir tres partes: Entrada, Proceso y Salida.

ETAPAS DE UN ALOGORITMO
A los algoritmos que pueden ser ejecutados por un computador se denominan algoritmos
computacionales. Todo algoritmo computacional puede dividirse en cuatro etapas:

 Declaración de variables.
Entrada de datos.
 Proceso de cálculo.
Salida de resultados.
Declaración de variables. - En esta etapa se declaran las variables que serán utilizadas en el
algoritmo. La forma de declarar variables del lenguaje Java usando los tipos de datos algorítmicos
mostrados en la siguiente tabla

Datos de Entrada. - La entrada consiste en obtener un dato desde algún dispositivo de entrada y
trasladarlo a la memoria para ser almacenada en una variable. En general, la entrada de una variable
se escribe en el pseudocódigo como la siguiente forma:

Proceso de cálculo. - Consiste en realizar las operaciones necesarias para prever el resultado de
una acción previamente concebida (entrada), o conocer las consecuencias que se pueden derivar de
unos datos previamente conocidos (salida).
En algunos algoritmos se pude omitir.

Salida de Resultados. - La salida consiste en trasladar a algún dispositivo de salida el valor de


una variable. En general, la salida de una variable a la pantalla se escribe en el pseudocódigo de la
siguiente forma:

TÉCNICAS DE REPRESENTACIÓN DEL ALGORITMO: Diagramas de flujo o


flujogramas: En la siguiente imagen se muestra uno símbolos que nos serán útiles para llevar a cabo
el tipo de representaciones.
Fuente: AITECO CONSULTORES, SL.

En Internet existen numerosas herramientas que pueden ayudarte a crear diagramas de flujo. Aquí te
proponemos dos gratuitas:

draw.io: Permite guardar los diagramas en el disco duro de tu ordenador, Drive, OneDrive o
Dropbox.
 Diagramly: Posibilita crear diagramas de flujo o mapas mentales.
Reglas para la construcción de diagramas de flujos
1. Todo diagrama debe de tener un inicio y fin
2. Las líneas utilizadas para indicar la dirección del flujo del diagrama deben ser rectas,
verticales y horizontales
3. Todas las líneas

Pseudocodigo:
El Pseudocódigo es sin duda de las representaciones más utilizadas. Es una forma de expresar el
algoritmo utilizando el lenguaje natural, comprensible para cualquier persona, pero añadiendo ciertas
instrucciones típicas de los lenguajes de programación.

No existe una sintaxis estándar para el pseudocódigo, pero como hemos comentado, en el
pseudocódigo se reflejan las instrucciones típicas de los lenguajes de programación, como las
instrucciones condicionales:

SI condición ENTONCES
instrucciones/pasos a realizar si se cumple la condición
SI NO
instrucciones/pasos a realizar si NO se cumple la condición
FIN SI

Y las instrucciones repetitivas:


REPETIR n veces
instrucciones/pasos a realizar
FIN REPETIR

CONCLUSIONES

 Un algoritmo tiene como partes fundamentales la ENTRADA (se describe la


información que va a ser leída), PROCESO (se describen los cálculos y
operaciones) y SALIDA (se describen la información que se va a imprimir).

 Saber determinar sus características como ser finito, definido, general, neutral de
material.

 Un algoritmo es un procedimiento seguro y en cierta forma mecánica, de lograr un


resultado MIENTRAS que la LOGICA hace relación el pensamiento o la razón o
también, a la forma en el cual el ser humano puede llegar a actuar usando su raciocinio a
través de ciertos principios básicos.
CONCLUSIONES

• An algorithm has as its fundamental parts the INPUT (the information to be read is described),
PROCESS (the calculations and operations are described) and OUTPUT (the information to be printed
is described).

• Know how to determine its characteristics as being finite, defined, general, neutral material.

• An algorithm is a safe and in a certain mechanical way, to achieve a result WHILE LOGIC relates
thought or reason or also, to the way in which human beings can act using their reasoning through
Certain basic principles.

CONCLUSIONES

• Un algoritmo tiene como partes fundamentales la ENTRADA (se describe la información que va a ser
leída), PROCESO (se describen los cálculos y operaciones) y SALIDA (se describen la información que se
va a imprimir).

• Saber determinar sus características como ser finito, definido, general, neutral de material.

• Un algoritmo es un procedimiento seguro y en cierta forma mecánica, de lograr un resultado MIENTRAS


que la LOGICA hace relación el pensamiento o la razón o también, a la forma en el cual el ser humano
puede llegar a actuar usando su raciocinio a través de ciertos principios básicos.
BIBLIOGRAFIAS

[1] JOYANES, Luis. Fundamentos de Programación. Cuarta, Tercera y Segunda


edición. Editorial McGraw Hill, México. 2008.

[2] JOYANES, Luis. Fundamentos de Programación: Libro de Problemas. Editorial


McGraw Hill, México,1996.

[3] ALCALDE, Eduardo. Informática Básica. Editorial Mc Graw Hill. Tercera edición.
1998.

[4] BECERRA SANTAMARIA, Cesar. Algoritmos: Conceptos Básicos. Editora


Kimpres Ltda. Bogotá,1998.

[5] PETZOLD Charles. Programación en Windows con Visual Basic .Net. Editorial
McGraw Hill. 2003

[6] ORREGO VILLA, Gildardo A. Fundamentos de Lógica de Programación. Diseño


de algoritmos. Editor Ovigan, Medellín, 2000

WEB GRAFIA:

https://conceptodefinicion.de/algoritmo/file:///C:/Users/EPIS/Downloads/Capitulo%203
%20(1).pdf
http://formacion.intef.es/pluginfile.php/43820/mod_imscp/content/8/representacin_de_u
n_algoritmo.html

También podría gustarte