Vous êtes sur la page 1sur 21

Universidad Nacional Experimental De Guayana

Vicerrectorado Acadmico

Coordinacin General De Pregrado

Carrera Ingeniera Industrial

Unidad Curricular: Computacin I

Seccin 1

Profesor: Alumna:
Luis Lestrano Cruz Valles

Puerto Ordaz - Abril, 2017


Algoritmos:

Algoritmo

El algoritmo consiste en una lista ordenada de operaciones que tienen el propsito de buscar la

solucin a un problema en matemtica, informtica y disciplinas afines.

Para las ciencias de la matemtica y de la computacin, un algoritmo es una lista que, dado un

estado inicial y una entrada, propone pasos sucesivos para arribar a un estado final obteniendo una

solucin. Sin embargo, el algoritmo no es excluyente de las ciencias duras o matemticas.

Un algoritmo tpico tiene carcter finito, es preciso, tiene tanto una entrada como una salida y

es eficaz en la resolucin de un problema .

Representacin de Algoritmos

Los algoritmos pueden ser expresados de muchas formas, en este apartado se describirn algunas,

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.

Pseudocdigo

El pseudocdigo es una descripcin en lenguaje natural de un algoritmo que se pretende

emplear en el desarrollo de un programa, empleando en ello ciertas convenciones sintcticas

idnticas a las de los lenguajes de programacin, como asignaciones, ciclos y condicionales.

El pseudocdigo tiene como finalidad facilitar el entendimiento de un algoritmo, y por tanto

puede no incluir detalles irrelevantes que son necesarios en una implementacin.

Se utiliza comnmente en los libros de texto y publicaciones cientficas que se documentan

varios algoritmos, y tambin en la planificacin del desarrollo de programas informticos, para

esbozar la estructura del programa antes de realizar la efectiva codificacin.

El principal objetivo del pseudocdigo es el de representar la solucin a un algoritmo de la

forma ms detallada posible, y a su vez lo ms parecida posible al lenguaje que posteriormente se

utilizara para la codificacin del mismo.


Las principales caractersticas de este lenguaje son:

Se puede ejecutar en un ordenador

Es una forma de representacin sencilla de utilizar y de manipular.

Facilita el paso del programa al lenguaje de programacin.

Es independiente del lenguaje de programacin que se vaya a utilizar.

Es un mtodo que facilita la programacin y solucin al algoritmo del programa.


Organigramas:

Un organigrama es la estructura de una empresa o cualquier otra organizacin, incluyen las

estructuras departamentales y, en algunos casos, las personas que las dirigen, hacen un esquema

sobre las relaciones jerrquicas y competenciales de vigor.

El organigrama es un modelo abstracto y sistemtico que permite obtener una idea uniforme y

sinttica de la estructura formal de una organizacin:

Desempea un papel informativo.

Presenta todos los elementos de autoridad, los niveles de jerarqua y la relacin entre ellos.

En el organigrama no se tiene que encontrar toda la informacin para conocer cmo es la

estructura total de la empresa


Todo organigrama tiene el compromiso de cumplir los siguientes requisitos:

Tiene que ser fcil de entender y sencillo de utilizar.

Debe contener nicamente los elementos indispensables.

Vertical: Muestra las jerarquas segn una pirmide, de arriba abajo.

Horizontal: Muestra las jerarquas de izquierda a derecha.

Mixto: Es una combinacin entre el horizontal y el vertical.

Circular: La autoridad mxima est en el centro, y alrededor de ella se forman crculos

concntricos donde figuran las autoridades en niveles decrecientes.

Escalar: Se usan sangras para sealar la autoridad, cuanto mayor es la sangra, menor es la

autoridad de ese cargo.

Tabular: Es prcticamente escalar, solo que el tabular no lleva lneas que unen los mandos

de autoridad.

Es importante tener en cuenta que ningn organigrama puede ser fijo o invariable. Es

decir, un organigrama es una especie de fotografa de la estructura de una organizacin en

un momento determinado.

Diagramas Nassi_Scheiderman

Un diagrama Nassi_Scheiderman es una representacin grfica que muestra el algoritmo

diseado de un programa.

Los diagramas Nassi_Scheiderman son una variante al diagrama de flujo y se usan raramente

en las tareas de programacin formal, teniendo como principal inconveniente que ciertas

modificaciones en el algoritmo requieren que todo el diagrama sea redibujado.


Los diagramas Nassi-Shneiderman son (la mayora de las veces) isomrficos con

los diagramas de flujo. Todo lo que se puede representar con un diagrama Nassi-Shneiderman se

puede representar con un diagrama de flujo.

Las nicas excepciones se dan en las instrucciones GOTO.

Diagramas de Flujo

Es una descripcin grfica de un algoritmo para resolver un problema. Los diagramas de flujos

estn compuestos por figuras conectadas con flechas.

El diagrama comienza en un inicio establecido y termina en un final tambin establecido, las

diferentes figuras de las que se vale este diagrama tienen un significado propio.

Este tipo de diagrama puede ayudar a la mejor interpretacin y definicin de un algoritmo de

solucin a un problema a nivel general, pero tiene el inconveniente de que si se aumenta el nivel

de detalle en el mismo se dificulta en gran medida su lectura e interpretacin.


Acciones y estructuras de control.

Las estructuras de control permiten alterar el flujo secuencial de los algoritmos. Ya que en

ocasiones es necesario repetir una misma accin un nmero determinado de veces o evaluar una

expresin y realizar acciones diferentes en base al resultado de dicha evaluacin.

Para resolver estas situaciones existen las denominadas estructuras de control que poseen las

siguientes caractersticas:

Una estructura de control tiene un nico punto de entrada y un nico punto de salida.

Una estructura de control se compone de sentencias o de otras estructuras de control.

Tales caractersticas permiten desarrollar de forma muy flexible todo tipo de algoritmos aun

cuando slo existen tres tipos fundamentales de estructuras de control:

Secuencial.

Alternativa.

Repetitiva.
Estructura secuencial

La estructura secuencial es la ms sencilla de todas, simplemente indica al procesador que

debe ejecutar de forma consecutiva una lista de acciones (que pueden ser, a su vez, otras

estructuras de control); para construir una secuencia de acciones basta con escribir cada accin en

una lnea diferente.

A continuacin, se muestra una composicin secuencial de acciones en notacin algortmica y su

equivalente FORTRAN.

leer a read *, a

leer b read *, b

c!a+b c=a+b

escribir c print *, c

Existe una forma alternativa de expresar una estructura secuencial escribiendo varias acciones

en la misma lnea pero utilizando el punto y coma, ;, como separador.

leer a; leer b read *, a; read *, b

c ! a + b; escribir c c = a + b; print *, c
Estructura alternativa

La estructura alternativa permite bifurcar el flujo del programa en funcin de una expresin

lgica; disponemos de tres estructuras alternativas diferentes: alternativa simple, alternativa doble

y alternativa mltiple.

Estructura alternativa simple

Esta estructura permite evaluar una expresin lgica y en funcin de dicha evaluacin ejecutar

una accin (o composicin de acciones) o no ejecutarla; tambin se la suele denominar SI-

ENTONCES.

A continuacin, se muestra la notacin algortmica y FORTRAN para la estructura alternativa

simple.

si expresin lgica entonces acciones fin_si.

if (expresin lgica) then acciones end if.


Estructura alternativa doble

La estructura alternativa doble es similar a la anterior con la salvedad de que en este tipo de

estructura se indican acciones no slo para la rama verdadera sino tambin para la falsa; es

decir, en caso de la expresin lgica evaluada sea cierta se ejecutan una accin o grupo de

acciones y en caso de que sea falsa se ejecuta un grupo diferente.

La sintaxis en la notacin algortmica y en FORTRAN son las que se muestran a

continuacin:

Si expresin lgica entonces acciones.

Si no acciones fin_si.

If (expresin lgica) then acciones.

Else acciones end if.


Estructura multi alternativa

Esta estructura evala una expresin que pueda tomar N valores (enteros, caracteres y lgicos

pero nunca reales) y ejecuta una accin o grupo de acciones diferente en funcin del valor tomado

por la expresin selectora. La sintaxis de esta estructura es la siguiente:

Segn expresin caso valor1:

accin 1 caso valor2: accin 2

caso valor N: accin n otro caso:

accin fin segn.

Select case (expresin)

case (valor1)

accin 1

case (valor2)

accin 2 ...

Case (valorn)

accin n

case default

accin

end select
Estructura repetitiva

La estructura repetitiva o iterativa permite, como su propio nombre indica, repetir una accin

(o grupo de acciones); dicha repeticin puede llevarse a cabo un nmero prefijado de veces o

depender de la evaluacin de una expresin lgica. Existen tres tipos de estructuras repetitivas:

desde-hasta, mientras y repetir-hasta.

Estructura desde-hasta:

Esta estructura permite repetir la ejecucin de una accin o de un grupo de acciones un nmero

determinado de veces.

El funcionamiento de la estructura es el siguiente:

En primer lugar, se asigna a la variable ndice el valor de inicio.

El bucle se ejecuta mientras ndice no alcance el valor de fin.

En cada iteracin el valor de ndice es incrementado segn el paso indicado y se ejecuta la

accin o grupo de acciones encerrados en el bucle.

En caso de que no se indique ningn paso el que se emplear ser +1.

Estructura mientras:

Esta estructura repite una accin o grupo de acciones mientras una expresin lgica sea cierta.
Un aspecto muy importante de la presente estructura de control es que si la expresin lgica es

inicialmente falsa el bucle no se ejecuta ni una sola vez; es decir, la estructura mientras supone

que el bucle iterar 0 ms veces.

Estructura repetir-hasta:

Esta estructura repite una accin o grupo de acciones hasta que una expresin lgica sea cierta;

la sintaxis en la notacin algortmica es la siguiente (no existe equivalente en FORTRAN pero s

en otros lenguajes de programacin):

Repetir.

Accin.

Hasta expresin lgica.

Un aspecto muy importante de la presente estructura de control es que la expresin lgica no

se evala hasta el final con lo cual el bucle se ejecuta al menos una vez por contraposicin a la

estructura anterior que poda no ejecutarse ninguna.


Asignacin:

La operacin de asignacin es el modo de darle valores a una variable. La operacin de

asignacin se representa con el smbolo u operador. La operacin de asignacin se conoce como

instrucciones o sentencia de asignacin cuando se refiere a un lenguaje de programacin.

El formato general de una operacin de asignacin es:

Nombre de la variable expresin.

La flecha (operador de asignacin) se sustituye en otros lenguajes por = (BASIC, FORTRAN

o = Pascal). Sin embargo, es preferible el uso de la flecha en la redaccin del algoritmo, para

evitar ambigedades dejando el uso del smbolo = exclusivamente para el operador de igualdad.

La operacin de asignacin:

A 5;

Significa que a la variable A se le ha asignado el valor 5.

Las operaciones de asignacin se clasifican en:

Asignacin aritmtica.

Asignacin lgica.

Asignacin de caracteres.

Entrada y salida de un algoritmo:

Todo algoritmo debe obedecer a la estructura bsica de un sistema, es decir: entrada, proceso y

salida.

Dnde:
Entrada:

Corresponde al insumo, a los datos necesarios que requiere el proceso para ofrecer los

resultados esperados.

Proceso:

Pasos necesarios para obtener la solucin del problema o la situacin planteada.

Salida:

Resultados arrojados por el proceso como solucin.


Decisiones de algoritmos:

Para que el algoritmo sea flexible y general se deben tener en cuenta todas las posibilidades o

alternativas que puedan presentarse en un momento dado. De aqu la necesidad de hacer

comparaciones y tomar decisiones. Bsicamente los enunciados de decisin se utilizan para tomar

una accin o conocer el estado de alguna situacin en especial.

Composicin de un enunciado de decisin:

Enunciado:

S (VARIABLE VS VARIABLE)

ENTONCES

Enunciados

SINO

Enunciados

FIN S

Cmo funciona el enunciado de decisin:

Inicio.

S (condicin).

Entonces.

Enunciado (s).

Sino.

Enunciado (s).

Fin s.
Ciclos de algoritmos:

Qu son los ciclos en programacin y para qu sirven?

Los ciclos o bucles son un grupo de instrucciones iterativas, en el que el objetivo es crear un

set de estas para que se repitan determinadas o indeterminadas veces. Ya que permiten ahorrar

tiempo en el momento en que debas realizar instrucciones un algoritmo, se trata de una estructura

reiterativa.

Ciclo para (For):

Utilizamos este tipo de ciclo cuando tenemos conocimiento del nmero de veces en que

utilizaremos en el ciclo, por esto siempre tiene un lmite (conocido como fin). Para este ciclo

necesitamos:

X, inicio, fin, incremento, o decremento.

Ciclo mientras (While):

La diferencia con l es que este pueda ejecutar necesitamos que se cumpla una condicin,

mientras sta lo haga l siempre se va a repetir.

La nica manera de que deje de funcionar es que la condicin no se cumpla, por tanto, este no

tiene lmites.

Ciclo de repetir (Do while):

Este ciclo es similar al While, sin embargo, un poco opuesto. Nos referimos que en este ciclo

la accin de instrucciones se realizar slo cuando la condicin no se cumpla, se va a ejecutar, por

lo tanto, es contrario al mientras.


Procedimiento de algoritmos:

La resolucin de problemas complejos se facilita considerablemente si se dividen en problemas

ms pequeos; y la resolucin de estos subproblemas se realiza mediante subalgoritmos.

Los subalgoritmos son unidades de programa o mdulos que estn diseados para ejecutar

laguna tarea especfica. stos, constituidos por funciones o procedimientos, se escriben solamente

una vez, pero pueden ser referenciados en diferentes puntos del programa, de modo que se puede

evitar la duplicacin innecesaria del cdigo.

El mdulo principal se ejecuta en una primera instancia, que da la orden de inicio de ejecucin

de los subprogramas. Puede ser ejecutado n veces. Es importante saber que datos se van a

compartir entre los programas.


El subprograma es un programa en s mismo, ejecutado por la solicitud del programa principal

o de otro subprograma, una n cantidad de veces. Cuando realiza la solicitud, el programa se

detiene hasta que el subprograma deja de realizar su tarea, luego contina; esto se conoce como

control de ejecucin.
Referencias Bibliogrficas

http://www.definicionabc.com/ciencia/algoritmo.php
http://cidecame.uaeh.edu.mx/lcc/mapa/PROYECTO/libro4/144_pseudocdigo.html
https://es.wikipedia.org/wiki/Organigrama
https://es.wikipedia.org/wiki/Diagrama_Nassi-Shneiderman
https://es.wikipedia.org/wiki/Pseudoc%C3%B3digo
http://cidecame.uaeh.edu.mx/lcc/mapa/PROYECTO/libro4/143_diagramas_nassi_scheiderman.ht
ml
http://cidecame.uaeh.edu.mx/lcc/mapa/PROYECTO/libro4/142_diagramas_de_flujo.html
http://di002.edv.uniovi.es/~dani/asignaturas/apuntes-leccion4.PDF
https://es.slideshare.net/Lokedeleo/algoritmos-de-entrada-proceso-y-salida
https://es.slideshare.net/BorisSalleg/algoritmo-variables-constantes-tipos-de-datos-y-asignacion
http://algoritmo-programado.blogspot.com/2012/10/algoritmo-de-decision.html
https://prezi.com/wnxflhkdts0b/los-ciclos-en-los-algoritmos/
https://structurepamh.wordpress.com/procedimientos-y-funciones/