Вы находитесь на странице: 1из 19

INSTITUTO TECNOLOGICO DE CHIHUAHUA

ALGORITMOS Y PROGRAMACIN
Mtro. ESQUIVEL GUERRERO JAVIER HUGO
SEMESTRE 2016 | 2

INVESTIGACION:

INTERPRETACIN Y COMPRENSIN DE
o DEFINICIN DE ALGORITMO
o INVESTIGACIN Y SELECCIN DE COMPONENTES
o DESCRIPCIN DE ALGORITMO Y EJEMPLOS

PRECENTA EL ALUMNO DE ING. MECANICA:


CANO RODRIGUEZ OSCAR DANIEL
NO. CONTROL: 16060021

CHIHUAHUA, A 01/09/2016

INDICE

Contenido
INTRODUCCION..........................................................................................................................1
ALGORITMOS..............................................................................................................................2
Definicin de algoritmos..............................................................................................................2
Caractersticas de los algoritmos.................................................................................................3
El concepto de Algoritmo.............................................................................................................5
Algoritmo cambiar rueda.............................................................................................................6
QU ES UN ALGORITMO?....................................................................................................8
Clasificacin de algoritmos:........................................................................................................8
Partes de un algoritmo:...............................................................................................................8
Tcnicas de representacin:........................................................................................................9
Representacin de un algoritmo................................................................................................10
Los algoritmos pueden ser creados de dos formas:..................................................................11
Algoritmo expresado en pseudocodigo......................................................................................12
Expresar un algoritmo con un diagrama de flujo....................................................................14
CONCLUSIN.............................................................................................................................15
BIBLIOGRAFIA..........................................................................................................................16

INTRODUCCION
En este trabajo veremos, describiremos la definicin de algoritmo, investigaremos
conceptos de software para ver de qu tipo es el Algoritmo describiremos algunos
ejemplos de tipos de representacin de los algoritmos y en clase dar a conocer uno tipo de
algoritmo.
Un algoritmo es una secuencia de pasos lgicos necesarios para llevar a cabo una tarea
especfica, como la solucin de un problema.

ALGORITMOS
Definicin de algoritmos
Un algoritmo es una secuencia de pasos lgicos necesarios para llevar a cabo una tarea
especfica, como la solucin de un problema. Los algoritmos son independientes tanto del
lenguaje de programacin en que se expresan como de la computadora que los ejecuta. En cada

problema el algoritmo se puede expresar en un lenguaje diferente de programacin y ejecutarse


en una computadora distinta; sin embargo, el algoritmo ser siempre el mismo.
Por ejemplo, en una analoga con la vida diaria, una receta de un plato de cocina se puede
expresar en espaol, ingls o francs, pero cualquiera que sea el lenguaje, los pasos para la
elaboracin del plato se realizaran sin importar el cocinero.
Los pasos a seguir en la solucin de una ecuacin de segundo grado.
Los pasos matemticos para la solucin de un nmero factorial.
Las instrucciones para la liquidacin de una nmina.
Las acciones que se deben seguir para la obtencin de una estadstica.
Para llegar a la realizacin de un programa es necesario el diseo previo de un algoritmo, de
modo que sin algoritmo no puede existir un programa.

Caractersticas de los algoritmos


Las caractersticas fundamentales que debe cumplir todo algoritmo son:

Un algoritmo debe ser preciso e indicar el orden de realizacin de cada paso.

Un algoritmo debe estar definido. Si se sigue un algoritmo dos veces, se debe obtener el
mismo resultado cada vez.

Un algoritmo debe ser finito. Si se sigue un algoritmo, se debe terminar en algn


momento; o sea debe de tener un nmero finito de pasos.

La definicin de un algoritmo debe describir tres partes: Entrada, Proceso y Salida.


En el algoritmo citado anteriormente se tendr:
Entrada ingredientes y utensilios empleados
Proceso elaboracin de la receta de cocina
Salida terminacin del plato (por ejemplo, cordero)
Un algoritmo exige que se tengan varias propiedades importantes:
Los pasos de un algoritmo deben ser simples y exentos de ambigedades (diferentes
significados), deben seguir un orden cuidadosamente prescrito, deben ser efectivos y deben de
resolver el problema en un nmero finito de pasos.
El siguiente ejemplo muestra un algoritmo para cambiar un foco quemado.
Cambiar un foco quemado podra resumirse en dos pasos:
1. Quitar el foco quemado
2. Colocar un foco nuevo

Pero, si tuviera que entrenar un robot domestico para que efecte esta tarea, tendr que ser ms
especfico y claro en los pasos a seguir, dar ms detalles (suponga que el foco se encuentra en el
techo de una habitacin):

1. Situar escalera bajo el foco quemado.


2. Elegir un foco de reemplazo (de la misma potencia que el anterior).
3. Subir por la escalera hasta alcanzar el foco.
4. Girar el foco contra las manecillas del reloj hasta que est suelto.
5. Ubicar el foco nuevo en el mismo lugar que el anterior.
6. Enroscar en el sentido de las manecillas del reloj hasta que quede apretado.
7. Bajar de la escalera.
(Ramrez, s.f.)

El concepto de Algoritmo

En otro artculos como el de Introduccin al Lenguaje Swift en castellano he hablado de un


lenguaje de programacin especfico, en este caso el desarrollado por Apple. Como no s si
sabis, los lenguajes de programacin sirven para construir programas de ordenador usando un
lenguaje similar al lenguaje humano.
Despus otro programa se encargar de transformarlo para que le sea comprensible a dicho
ordenador. Si queremos llegar a ser un buen programador lo primero que hemos de aprender en
facultades, escuelas tcnicas, institutos de formacin profesional o en blog como este, es a
crear algoritmos. Seguro que, si sois nuevos en la materia, os estaris preguntando qu es un
algoritmo por lo que en este artculo pretendo dar respuesta sencilla a esa pregunta.
Podramos decir que un algoritmo es una serie de operaciones detalladas y no ambiguas, a
ejecutar paso a paso, y que conducen a la resolucin de un problema. En otras palabras, un
algoritmo es un conjunto de reglas para resolver una cierta clase de problema o una forma de
describir la solucin a un problema. En nuestra vida cotidiana, los algoritmos nos rodean
constantemente sin que nos demos cuenta. Por ejemplo, si pinchamos una rueda de nuestro
coche sabis cmo sera el algoritmo para cambiarla por una nueva?
Seguro que vuestra respuesta es que si, pero antes de ver cmo realizar el algoritmo, lo primero
que hacemos es formularnos la pregunta de qu necesitamos? La respuesta es bien fcil:

Una rueda de repuesto

Una llave para los tornillos de la rueda

Un tpico gato elevador

Algoritmo cambiar rueda

Ya tenemos todo lo necesario verdad, ahora nos surgira una nueva pregunta cul es el
algoritmo o pasos para cambiar la rueda pinchada por la rueda de repuesto? Pues bien
empecemos por el principio enumerando todos los pasos para llevar a buen puerto la operacin de
reemplazo:
1.

Inicio

2.

Coger el gato

3.

Levantar el coche con el gato

4.

Aflojar tornillos de las llantas

5.

Sacar los tornillos de las llantas

6.

Quitar la rueda pinchada

7.

Poner la rueda de repuesto

8.

Poner los tornillos

9.

Apretar los tornillos

10. Bajar el gato


11. Fin
Para que os hagis una idea, todos los algoritmos tienen una serie de caractersticas
comunes inherentes a los mismos y que tienen que cumplir de forma obligatoria para que se
pueda considerar que es un algoritmo propiamente dicho. Estas son las siguientes:

Debe ser preciso. Indicar el orden de realizacin de cada paso. Esto es muy importante ya
que seguro que a nadie se le ocurre intentar quitar la rueda pinchada sin quitar antes los
tornillos que la estn sujetando.

Debe ser definido. Si se sigue un algoritmo dos veces, se debe obtener el mismo resultado
cada vez. Por mil y una veces que sustituyramos una rueda pinchada con el algoritmo
descrito, siempre obtendramos en mismo resultado: la reparacin de la rueda.

Debe ser finito. Si se sigue un algoritmo, se debe terminar en algn momento; o sea debe
tener un nmero finito de pasos. Si el algoritmo de la rueda nunca terminara no podramos
decir que es un algoritmo ya que nunca nos ayudara a resolver nuestro problema.

La definicin de un algoritmo debe describir tres partes: Entrada, Proceso y Salida. En el


algoritmo que acabamos de ver, cules son la Entrada, el Proceso y la Salida?

Entrada: Las herramientas y rueda de repuesto empleadas

Proceso: La sustitucin de la rueda pinchada por la rueda de repuesto

Salida: La rueda reparada para que podamos concluir nuestro viaje

Una vez que tenemos diseado nuestro algoritmo, en el caso de un programa informtico,
tendramos que escribirlo en un lenguaje de programacin para despus traducirlo de forma que
el ordenador se enterase de cmo procesarlo correctamente. Antes de acabar el artculo, os
propongo un ejercicio: Leer los siguientes artculos relacionados con objetos y clases:

Introduccin a la Programacin Orientada a Objetos

El concepto de clase en POO

Crear objetos usando el lenguaje Swift

Clases y estructuras en el lenguaje Swift

Una vez ledos, modelar los objetos que nos ayudaran a resolver el algoritmo de la rueda
pinchada usando el lenguaje de programacin Swift.
(Ramrez, s.f.)

QU ES UN ALGORITMO?
Programa:
Un programa es una serie de instrucciones ordenadas, codificadas en lenguaje de programacin
que expresa un algoritmo y que puede ser ejecutado en un computador.

Clasificacin de algoritmos:
Los algoritmos se pueden clasificar en cuatro tipos:

Algoritmo computacional: Es un algoritmo que puede ser ejecutado en una


computadora. Ejemplo: Frmula aplicada para un clculo de la raz cuadrada de un valor x.

Algoritmo no computacional: Es un algoritmo que no requiere de una computadora para


ser ejecutado. Ejemplo: Instalacin de un equipo de sonido.

Algoritmo cualitativo: Un algoritmo es cualitativo cuando en sus pasos o instrucciones


no estn involucrados clculos numricos. Ejemplos: Las instrucciones para desarrollar una
actividad fsica, encontrar un tesoro.

Algoritmo cuantitativo: Un algoritmo es cuantitativo cuando en sus pasos o


instrucciones involucran clculos numricos. Ejemplo: Solucin de una ecuacin de segundo
grado.

Partes de un algoritmo:
Todo Algoritmo debe tener las siguientes partes:
Entrada de datos, son los datos necesarios que el algoritmo necesita para ser ejecutado.
Proceso, es la secuencia de pasos para ejecutar el algoritmo.
Salida de resultados, son los datos obtenidos despus de la ejecucin del algoritmo.

10

Tcnicas de representacin:
Para la representacin de un algoritmo, antes de ser convertido a lenguaje de programacin, se
utilizan algunos mtodos de representacin escrita, grfica o matemtica. Los mtodos ms
conocidos son:

Diagramacin libre (Diagramas de flujo).


Diagramas Nassi-Shneiderman.
Pseudocdigo.
Lenguaje natural (espaol, ingls, etc.).
Frmulas matemticas.
(Frida, DE 2009)

11

Representacin de un algoritmo
Los algoritmos pueden ser expresados de muchas maneras, incluyendo al lenguaje natural,
pseudocdigo, diagramas de flujo y lenguajes de programacin entre otros. Las descripciones en
lenguaje natural tienden a ser ambiguas y extensas. El usar pseudocdigo y diagramas de flujo
evita muchas ambigedades del lenguaje natural. Dichas expresiones son formas ms
estructuradas para representar algoritmos; no obstante, se mantienen independientes de un
lenguaje de programacin especfico.
La descripcin de un algoritmo usualmente se hace en tres niveles:
1.Descripcin de alto nivel. Se establece el problema, se selecciona un modelo matemtico y se
explica el algoritmo de manera verbal, posiblemente con ilustraciones y omitiendo detalles.
2.Descripcin formal. Se usa pseudocdigo para describir la secuencia de pasos que encuentran
la solucin.
3.Implementacin. Se muestra el algoritmo expresado en un lenguaje de programacin
especfico o algn objeto capaz de llevar a cabo instrucciones.
Tambin es posible incluir un teorema que demuestre que el algoritmo es correcto, un anlisis de
complejidad o ambos.

12

Los algoritmos pueden ser creados de dos formas:


1)Seudocdigo. - Es un conjunto pequeo y claro de instrucciones; en secuencia, que permite
llevar a cabo una tarea.
2)Diagrama de flujo. - Es la representacin de la secuencia, a travs de smbolos, de la tarea que
se va a realizar.
Un ejemplo de algoritmo es el que realizamos para cambiar una llanta a un automvil:
Inicio
Aflojar tornillos de las llantas
levantar el coche con el gato
Sacar los tornillos de las llantas
Quitar la llanta
Poner la llanta de repuesto
Poner los tornillos
Bajar el gato
Apretar los tornillos
fin

13

Algoritmo expresado en pseudocodigo

Definicin
Mucho se habla del pseudocdigo en las carreras de Analista de Sistemas y Programacin. Pero
no existe mucha bibliografa al respecto.
Comencemos aclarando que no es una forma de programacin. Se trata de una herramienta que
los analistas de sistemas utilizan para comunicar a los programadores la estructura del programa
que van a realizar, de forma de tener una idea bien clara de lo que se necesita programar.
Digamos que el pseudo cdigo es una forma de diagramar un algoritmo para resolver un
determinado problema, sin atenerse a ningn lenguaje de programacin en especial.
Un algoritmo es un conjunto de procedimientos que permiten resolver un problema.
En vez de escribir el programa directamente en un lenguaje de programacin determinado (C,
Basic, etc.), crearemos un borrador entendible para todos, para luego de tener bien en claro lo que
se debe hacer, pasar a la programacin propiamente dicha.

El pseudo cdigo se refiere a crear un cdigo para orientar a los programadores, pero sin la
sintaxis ni la estructura propia de ningn lenguaje.

Utilizacin en la prctica

14

En el trabajo de un analista de sistemas, una de las partes ms trabajosas es la de determinar qu


es lo que necesitan de un sistema los usuarios finales. Se dedican muchas horas a hacer un
relevamiento de los datos que sern necesarios, los tipos de procesamientos, las salidas, etc. Y
debe existir una realimentacin entre el diseo y el usuario, para garantizar que el sistema cumpla
con los requisitos del usuario.

Supongamos que tenemos un sistema para una empresa que utiliza una interfaz grfica en Visual
Basic, algunas aplicaciones especficas en C, y pginas PHP para trabajo va Internet.
Seguramente que crear un diagrama especfico para cada lenguaje sera una tarea tediosa.
Gracias a esta herramienta, podemos reunir a todos los programadores, dar las pautas de trabajo,
y mediante el pseudo cdigo, cada programador sabr lo que hace el sistema, y podr escribir el
cdigo correspondiente.
Incluso dos programadores que dominen el mismo lenguaje pueden tener metodologas de trabajo
distintas. Un problema puede ser resuelto de muchas maneras, cada una ms o menos eficiente
que la otra, pero todas cumplen con el objetivo.

Expresar un algoritmo con un diagrama de flujo

15

Diagrama de flujo
Es un esquema para representar grficamente un algoritmo. Se basan en la utilizacin de diversos
smbolos para representar operaciones especficas, es decir, es la representacin grfica de las
distintas operaciones que se tienen que realizar para resolver un problema, con indicacin expresa
el orden lgico en que deben realizarse.
Se les llama diagramas de flujo porque los smbolos utilizados se conectan por medio de flechas
para indicar la secuencia de operacin. Para hacer comprensibles los diagramas a todas las
personas, los smbolos se someten a una normalizacin; es decir, se hicieron smbolos casi
universales, ya que, en un principio cada usuario podra tener sus propios smbolos para
representar sus procesos en forma de Diagrama de flujo. Esto trajo como consecuencia que slo
aquel que conoca sus smbolos, los poda interpretar. La simbologa utilizada para la elaboracin
de diagramas de flujo es variable y debe ajustarse a un patrn definido previamente.
El diagrama de flujo representa la forma ms tradicional y duradera para especificar los detalles
algortmicos de un proceso. Se utiliza principalmente en programacin, economa y procesos
industriales.
Para realizar los diagramas de flujo utilizamos distintas figuras geomtricas en forma de caja de
texto, que sirven para distinguir el tipo de tareas que se ejecutan, las flechas indican el flujo del
proceso y se valen de determinada simbologa especfica para facilitar su comprensin
Por otra parte, un algoritmo consta de tres partes, secciones o mdulos principales, en la siguiente
figura podemos observar las secciones que constituyen un algoritmo.
(ALGORITMO, DE 2012)

16

CONCLUSIN

En este documento aprendimos la definicin de los logaritmos sus caractersticas el concepto, si


es un programa una aplicacin o si es un carro o un perro o si no lo es.
Su clasificacin sus partes y tambin como son y como estn constituidos tcnicas de
representacin y la representacin del algoritmo las formas y como se expresan los algoritmos en
s.
En conclusin, diramos que el algoritmo es de carcter general y puede aplicarse a cualquier
operacin matemtica o a cualquier problema.
La formulacin de algoritmos fue uno de los ms grandes adelantos dentro de la ciencia
matemtica ya que a partir de ellos se pudieron resolver infinidad de problemas.

17

BIBLIOGRAFIA
o ALGORITMO. (JUEVES, 19 de DE ABRIL de DE 2012). Blog de uso exclusivamente
Educativo Fe y Alegria San Ignacio Informatica. Obtenido de ALGORITMOS:
http://algoritmos021415.blogspot.mx/2012/04/representacion-de-un-algoritmo.html
o Flores, I. I. (s.f.). Algoritmos Computacionales. Obtenido de Introduccin a la
programacin: http://correo.uan.edu.mx/~iavalos/introprog.htm#Introduccin
o Frida, P. (MARTES, 24 de DE MARZO de DE 2009). Apuntes de Informtica. Obtenido
de ALGORITMOS: http://informaticafrida.blogspot.mx/2009/03/algoritmo.html
o Ramrez, J. M. (s.f.). jmramirez.pro. Obtenido de jmramirez.pro:
https://www.jmramirez.pro/articulo/el-concepto-de-algoritmo/

Вам также может понравиться