Monografias.com > Sin categoría
Descargar Imprimir Comentar Ver trabajos relacionados

Conceptos de algoritmos (página 2)




Enviado por Santiago Conti



Partes: 1, 2

Metodología para la
resolución de problemas

Hay cinco etapas para resolver problemas
algorítmicos, estas son:

  1. Definición del sistema: definir que va a hacer
    el programa y que
    solución obtendremos.
  2. Diseño del
    sistema
    :
    Establecer que tipo de metodología usaremos para solucionar el
    problema (Ej. Top down o Botton up).

    Cuando se compila el algoritmo, hay un "antes" y un
    "después"

    • Antes > Programa Fuente (lenguaje
      de programación).
    • Después > Programa ejecutable (lenguaje
      de maquina).
  3. Codificación:
    Es la etapa en donde se escribe el algoritmo en
    un lenguaje de
    programación.
  4. Prueba y
    depuración:
    Se realizan pruebas para
    verificar el funcionamiento del programa, se prueba con
    valores
    válidos y con no válidos para ver como se
    comporta y corregir si es necesario.
  5. Documentación y Mantenimiento: Se basa en la
    instalación, funcionamiento y características del
    programa. Permite corregir errores o modificar el programa
    (estos cambios son el mantenimiento del
    programa
    ).

Hay dos tipos de documentación, estas son:

  • Interna > viene dentro del programa (Ej. Readme,
    características operativas)
  • Externa > Viene fuera del programa, diagramas de
    flujo, manuales de
    usuario, consejos de uso, etc.

UNIDAD III

Técnicas
de diseño

Hay tres tipos de técnicas,
estas son:

  1. TOP DOWN (Diseño descendente): Consiste en tomar el
    problema inicial y descomponerlo en problemas más
    pequeños, de solución sencilla.
  2. BOTTON UP: Consiste en
    partir de los detalles más precisos del algoritmo
    completando módulos de mayor complejidad – es
    inverso al anterior – .
  3. WARNIER ORR: Utiliza una
    representación semejante a cuadros sinópticos
    para Mostar el funcionamiento y organización del algoritmo.

UNIDAD IV

Técnicas para la formulación de
algoritmos

Hay dos tipos, estas son:

*Estos no pueden ser ejecutados por una
computadora

  1. Diagramas de
    Flujo
    > se basan en la
    utilización de símbolos para representar las acciones.
  2. Pseudo
    código
    > Es un 1er borrador al
    igual que el diagrama de
    flujo.

El pseudo código siempre utiliza
"programación estructurada"(conjunto de
técnicas y métodos
para diseñar y escribir programas)

La programación estructurada se basa en el
teorema de la programación estructurada, propuesto por
Bohny y Jacopini, ellos dicen que "todo algoritmo puede ser escrito usando tres tipos
de estructuras:
Secuencial, Condicional o Repetitiva".

Las especificaciones de la programación
estructurada son tres:

  • Un solo punto de Entrada y Salida
    (E/S).
  • Todas las acciones deben ser
    accesibles.
  • No posee ciclos o bucles infinitos.

Para diseñar un algoritmo utilizando pseudo
código se emplean instrucciones en nuestro
idioma.

Además para escribir este programa en pseudo
código se deben conocer un conjunto de instrucciones
reglas que DEFINEN como COMBINAR las instrucciones.

Algunas sentencias tienen equivalencia directa con los
símbolos de los diagramas de
flujo.

Todo algoritmo necesita de un DATO (Expresión
general que describe objetos con los cuales opera una computadora)

Hay diferentes Tipos de Datos,
estos son:

  • Numérico >
    Representan una cantidad ó un valor
    determinado, pueden ser enteros o reales.
  • Alfanumérico >
    Representan información textual ( no tiene valor) ,
    pueden ser caracteres de tipo

*Numérico (0, 1, 2,3…)

*Alfabéticos (A, B, C, a, b, c)

*Especiales (+,-,*, /, < >, $)

  • Lógicos ó
    Booleano > pueden tomar dos valores, Verdadero
    o Falso, Sirve para representar alternativas a determinadas
    condiciones.

Estructuras de Datos

Es una colección de datos organizados
particularmente que se utilizan para la resolución de
problemas.

Hay dos tipos de estructuras de datos:

  1. Se divide en dos tipos:

    • Simples

    *Constantes: Representa
    una zona de memoria en la cual se almacena un dato. El dato
    no puede ser modificado. Su forma:

    Definición: nombre/tipo de dato. Estas
    simplifican la programación.

    *Variables: Representa una zona de
    memoria en donde podemos hacer que el contenido
    "varíe". Su forma:

    Definición: nombre/tipo de dato

    • Compuestas:
      se utilizan en

    *Registros

    *Arreglos

    *Estructuras de Archivos

    1. Dinámicas
      > Utilizan una cantidad variable de memoria, esta
      puede aumentar o disminuir mientras se ejecute el
      algoritmo. Se utilizan en

    *Punteros

    *Variable de Cadena de caracteres de longitud
    variable

    UNIDAD V

    OPERADORES > Símbolo que
    determina qué tipo de operación se va a
    realizar entre los "operandos"

    Se clasifican en:

    • Aritméticos
      > Permiten cálculos aritméticos,
      utilizan operandos y resultados numéricos {+,-,*, /,
      DIV, MOD, ^, ABS ( ), TRUNC ( ), REDOND ( )}.
    • Relacionales >
      Permiten realizar comparaciones de valores de tipo
      numérico ó carácter. Los resultados son
      lógicos {<, >, =, <=, >=, <
      >}.
    • Lógicos >
      Permiten la combinación de condiciones para formar
      una sola expresión lógica. Utilizan operandos y
      resultados lógicos {-, ^, v}.

    ASIGNACIÓN
    > Permite darle valores a una
    variable.

    Se representa por el símbolo
    :=’

    *No podemos usar
    variables/constantes que no estén definidas

    El formato de la Asignación es:
    VARIABLE:=EXPRESIÓN

    Donde Expresión es la
    Combinación de variables, constantes y operadores que
    representan una o un conjunto de operaciones
    que devuelven un resultado.

    EJ. Z:= X*Pi + 2*(X-Y)

    Entrada/Salida de
    información (E/S)

    La mayoría de los programas requiere de un
    cierto grado de interacción con los usuarios. Si un
    algoritmo no interactúa con el usuario (no permite que
    ingrese o vea datos), su utilidad es
    muy poca.

    Operaciones de E/S > Nos permiten ingresar o leer
    datos.

    • Datos de Entrada:
      Dispositivos
      de entrada. Teclado,
      unidades de disco, etc.
    • Datos de Salida:
      Dispositivos de Salida. Pantalla, impresora, etc.

    Hay dos tipos de sentencias, una nos permite la
    entrada de datos y la otra es la salida de datos. Estas
    son:

    • Sentencia Leer ( )
      – Entrada de Datos > Dentro del ( ) se
      coloca el nombre de las variables que almacenaran los datos
      de entrada. También se la conoce como
      "Asignación Externa" ya que modifica el valor de las
      variables involucradas.
    • Sentencia Escribir ( )
      – Salida de Datos > Dentro de ( ) se
      escriben los datos de salida, pueden ser

    *Cadenas de Texto
    (T)

    *Nombres de Variables (V)

    *Nombres de Constantes (C)

    Cada elemento de salida debe estar separado por
    comas

    Ej. ("T", V, C)

    UNIDAD VI

    La Estructura
    del algoritmo es la siguiente:

    Acción
    (nombre de la acción) es

    – Ambiente

    (Declaración de variables)

    (Declaración de constantes)

    – Algoritmo

    (Sentencias del
    programa)

    Fin Acción

    Dentro del algoritmo hay dos secciones, estas
    son:

    1. Ambiente >
      Sección declarativa. Se declaran todas las
      estructuras de datos que utilizaremos en el
      algoritmo.
    2. Algoritmo
      >
      Incluiremos aquí todas
      las "acciones" tendientes a resolver problemas. Solamente
      se usaran aquí las estructuras de datos DECLARADAS
      en el ambiente.

    Teorema de la Programación
    Estructurada

    "Todo algoritmo
    estructurado puede ser escrito por tres tipos de estructuras
    de control"

    Estructuras de Control

    • Secuencial > Las
      acciones se suceden una a continuación de la
      siguiente. Tiene una entrada y una salida. Nunca se ejecuta
      más de una acción por vez.
    • Condicional > Se
      evalúa una condición y en función del resultado de la misma se
      realiza una operación u otra

    *Simples
    (SI-Entonces)
    > Ejecuta una acción
    cuando se cumple la condición.

    *Alternativas (Si-
    Entonces-sino)
    > Ejecuta una/s
    acción/es cuando se cumple la condición. Caso
    contrario (condición falsa) ejecuta otra/s
    acción/es.

    *Múltiples
    (SEGÚN)
    > Permite ejecutar una
    sentencia según el valor de una variable.

    • Repetitivas
      > Repiten una secuencia un
      Número de veces (Bucles) y al hecho de repetir la
      ejecución de una secuencia de acciones
      (Iteración).

    Estas son:

    *Estructura
    MIENTRAS
    > Permite ejecutar una sentencia
    "mientras" se cumpla la condición (booleana o
    lógica). Es importante que la condición sea
    falsa en algún momento para que no se genere un
    "ciclo infinito".

    *Estructura
    REPETIR
    > Permite ejecutar la sentencia
    "hasta que" cumpla la condición (booleana o
    lógica). Es importante que la condición sea
    verdadera en algún momento para que no se genere un
    "ciclo infinito".

    *Estructura
    PARA
    > Permite ejecutar una sentencia un
    número especifico de veces. Las sentencias se ejecutan
    dentro del "bucle". Comienza con un Valor inicial hasta
    llegar a un valor final.

     

     

     

    Autor:

    Santiago Conti

  2. Estáticas
    > Utilizan una cantidad fija de memoria para
    almacenar datos. Esta capacidad no puede variar mientras se
    ejecuta el algoritmo.
Partes: 1, 2
 Página anterior Volver al principio del trabajoPágina siguiente 

Nota al lector: es posible que esta página no contenga todos los componentes del trabajo original (pies de página, avanzadas formulas matemáticas, esquemas o tablas complejas, etc.). Recuerde que para ver el trabajo en su versión original completa, puede descargarlo desde el menú superior.

Todos los documentos disponibles en este sitio expresan los puntos de vista de sus respectivos autores y no de Monografias.com. El objetivo de Monografias.com es poner el conocimiento a disposición de toda su comunidad. Queda bajo la responsabilidad de cada lector el eventual uso que se le de a esta información. Asimismo, es obligatoria la cita del autor del contenido y de Monografias.com como fuentes de información.

Categorias
Newsletter