lunes, 24 de septiembre de 2012

ALGORITMOS



ALGORITMO
En matemáticasciencias de la computación y disciplinas relacionadas, un algoritmo (del griego y latín, dixit algorithmus y este a su vez del matemático persa Al-Juarismi ) es un conjunto preescrito de instrucciones o reglas bien definidas, ordenadas y finitas que permite realizar una actividad mediante pasos sucesivos que no generen dudas a quien deba realizar dicha actividad.

CLASES DE ALGORITMOS


Existen dos clases de algoritmos, las cuales son:






  • Algoritmos Cualitativos: Son todos aquellos pasos o instrucciones descritos por medio de palabras que sirven para llegar a la obtención de una respuesta o solución de un problema cualquiera.

  • Como ejemplo podemos decir que la utilización de un directorio (Búsqueda de un teléfono). Para poder buscar un teléfono en un directorio, se debe conocer el algoritmo que se va a utilizar, es decir la forma en que están codificados los nombres de las personas, para así lograr encontrarlos y localizar el número telefónico correspondiente.






  • Algoritmos Cuantitativos: Son aquellos pasos o instrucciones que involucran cálculos numéricos para llegar a un resultado satisfactorio.

  • Como ejemplo podemos citar los pasos para resolver una ecuación de segundo grado, los pasos lógicos y secuenciales para obtener una nomina.


    VARIABLES Y CONSTANTES 
    Variables: Son todos aquellos valores que pueden o no cambiar en el transcurso de un algoritmo. Usualmente son introducidas como datos. Existen variables simples y variables suscritas (arreglos). Todas las variables se componen de dos partes esenciales: Nombre y Valor.
    El nombre es quien identifica la variable en todo el transcurso del algoritmo, y son un conjunto de caracteres, letras y números. Dicho nombre debe ser nemotécnico, es decir, que con solo leer el nombre de la variable se pueda entender o determinar con facilidad lo que ella significa o contiene. Como ejemplo podemos decir la Variable VrHr significa a simple vista Valor de la Hora; pero si fuese X o HH, estos nombres pueden significar muchas cosas o, a la vez, no significar nada.
    El valor es la cantidad que una variable representa o tiene asociada en un momento determinado. Se debe tener en cuenta que una variable también puede tener asociado un valor lógico como falso o verdadero.
    Constantes: Son todos aquellos valores que no cambian en el transcurso de un algoritmo y son introducidos en el momento de utilizarse.
    En determinados casos se puede presentar que el valor de una variable no cambie en el transcurso de un algoritmo; pero por este hecho no se considera constante, sigue siendo una variable, porque su valor puede cambiar y las constantes no lo pueden hacer.conjunto de caracteres numéricos que no cambian durante la ejecución del programa. Pueden estar precedidos de un signo o un carácter + o - y pueden contener el carácter . (punto). Las hay enteras, reales, caracteres, cadena de caracteres y booleanas.
    PSEUDOCODIGO
    En ciencias de la computación, y análisis numérico el pseudocódigo (o falso lenguaje) es una descripción de un algoritmo informático de programación de alto nivel compacto e informal que utiliza las convenciones estructurales de un lenguaje de programación verdadero, pero que está diseñado para la lectura humana en lugar de la lectura en máquina, y con independencia de cualquier otro lenguaje de programación. Normalmente, el pseudocódigo omite detalles que no son esenciales para la comprensión humana del algoritmo, tales como declaraciones de variables, código específico del sistema y algunas subrutinas

    DIAGRAMA DE FLUJO
    El diagrama de flujo es la representación gráfica del algoritmo o proceso. Se utiliza en disciplinas como programacióneconomía, procesos industriales y psicología cognitiva. Estos diagramas utilizan símbolos con significados definidos que representan los pasos del algoritmo, y representan el flujo de ejecución mediante flechas que conectan los puntos de inicio y de fin de proceso.













    Ciclos repetitivos

    los ciclos repetitivos también llamados lazos o bucles permiten repetir una operación o secuencia de operaciones en función de ciertas condiciones. 

    es un segmento de un algoritmo o programa cuyas instrucciones se repiten un número determinado de veces mientras se cumpla una determinada condición. 

    Dentro de los ciclos se utilizan contadores y acumuladores, que regulan que el ciclo llegue a su fin. 

    Hay 3 tipos de ciclos: 

    mientras: while - el ciclo mientras es la estructura básica que permite repetir varias veces una secuencia de operaciones, mientras se cumpla una determina condición. 
    Estructura: en el programa se pone: 
    while <condición> do 
    aquí pones las instrucciones q se repetirán... 
    endwhile 

    repetir (repeat) las operaciones de lazo repetir son ejecutadas hasta que la condición sea cierta. 
    Estructura: 
    repeat 
    aquí va las instrucciones 
    until <condición> 

    para (for) se utiliza cuando se puede determinar el número de veces que hay que ejecutar las instrucciones. 
    Estructura> 
    for cont= (aquí pones numero) to (otro numero de fin

    • EJERCICIOS CON ALGORITMOS DE DECISIÓN 
    Elabore un algoritmo que lea el nombre y el sexo de una persona e imprima su edad si es una mujer casada.



    -inicio
    lea nombre,sexo

    -si  (sex=femenino)  Λ  (E.c=casada) entonces 

               Esc (EDAD)

    --Fsi


    -PARE
















    • Elabore un algoritmo que lea dos números, calcule la suma, imprima los números leídos y solo si la suma es positiva imprimalos también.

    Inicio
     --lea N1,N2

    Suma←(N1,N2)

      --SI←(Suma ˃ 0 ) entonces 
                 Esc N1,N2
      --FSI

    Esc N1,N2

    --PARE


















    • escriba un algoritmo que lea el nombre,edad y estado civil e imprima su nombre, si es hombre,casado, mayor de 40 años si no  si es una mujer, soltera, menor de 50 años entonces imprima-lo también. 

    Inicio
    ---lea nombre, edad, estado civil.

    --si←(sex=masculino) Λ (ec=casado)  Λ (edad ˃ 40 ) entonces
             Esc Nombre

           si  no 

    -Si←(sex=femenino) Λ (ec=soltera) Λ (edad < 50 ) entonces       
             Esc Nombre
    -Fsi

    --FSI


    ---PARE