ALGORITMOS

 

Definicion:

 es un conjunto prescrito 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. Dados un estado inicial y una entrada, siguiendo los pasos sucesivos se llega a un estado final y se obtiene una solución. Los algoritmos son el objeto de estudio de la algoritmia.

 

Caracteristicas:

§  Un algoritmo debe ser preciso e indicar el orden de realización 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. el algoritmo se debe terminar en algún momento; o sea, debe tener un número finito de pasos. 

§  Un algoritmo debe ser legibles: El texto que lo describe debe ser claro, tal que permita entenderlo y leerlo fácilmente.

Un algoritmo debe definir tres partes: Entrada, Proceso y Salida. Ejemplo: el algoritmo de receta de cocina se tendrá:

§  Entrada: ingrediente y utensilios.

§  Proceso: elaboración de la receta en la cocina.

§  Salida: terminación del plato (por ejemplo, Pollo al horno)

Metodos que se pueden utilizer para representar un algoritmo:

SEUDOCÓDIGO: es una forma de diagramar o representar un algoritmo para resolver un determinado problema, independiente de cualquier lenguaje de programación en especial.

DIAGRAMA DE FLUJO: es la esquematización gráfica de un algoritmo, el cual muestra gráficamente los pasos o procesos a seguir para alcanzar la solución de un problema. Es la representación de la solución utilizando figuras geométricas como circunferencias, flechas, rectángulos, rombos, etc.

DIAGRAMA N - S (Nassi-Shneiderman): también conocido como diagrama de Chapin es una técnica de especificación de algoritmos que combina la descripción textual, propia del seudocódigo, con la representación gráfica del diagrama de flujo.

El diagrama N-S cuenta con un conjunto limitado de símbolos para representar los pasos del algoritmo, por ello se apoya en expresiones del lenguaje natural; sin embargo, dado que el lenguaje natural es muy extenso y se presta para la ambigüedad, solo se utiliza un conjunto de palabras

 

Que es un diagram de flujo:

 

Un diagrama de flujo es una representación gráfica de un proceso. Cada paso del proceso es representado por un símbolo diferente que contiene una breve descripción de la etapa de proceso. Los símbolos gráficos del flujo del proceso están unidos entre sí con flechas que indican la dirección de flujo del proceso.

 El diagrama de flujo ofrece una descripción visual de las actividades implicadas en un proceso mostrando la relación secuencial ente ellas, facilitando la rápida comprensión de cada actividad y su relación con las demás, el flujo de la información y los materiales, las ramas en el proceso, la existencia de bucles repetitivos, el número de pasos del proceso, las operaciones de interdepartamentales… Facilita también la selección de indicadores de proceso

Descripción: https://www.aiteco.com/web/wp-content/uploads/2012/05/figuras_.gif

Clases de algoritmos:

·                     Algoritmo computacional: Es un algoritmo que puede ser ejecutado en una computadora. Ejemplo: Fórmula aplicada para un cálculo de la raíz cuadrada de un valor x.

·                    
Descripción: https://correo.uan.edu.mx/~iavalos/FP/style/eje2.jpg

·                     Algoritmo no computacional: Es un algoritmo que no requiere de una computadora para ser ejecutado. Ejemplo: Instalación de un equipo de sonido.

·                     Descripción: https://correo.uan.edu.mx/~iavalos/FP/style/eje4.jpg

·                     Algoritmo cualitativo: Un algoritmo es cualitativo cuando en sus pasos o instrucciones no están involucrados cálculos numéricos. Ejemplos: Las instrucciones para desarrollar una actividad física, encontrar un tesoro.

·                     Descripción: https://1.bp.blogspot.com/_isYsgzVu564/S8iHYrIcU5I/AAAAAAAAAAk/LD9HD8RC_TM/s1600/diagramaf.png

·                     Algoritmo cuantitativo: Una algoritmo es cuantitativo cuando en sus pasos o instrucciones involucran cálculos numéricos. Ejemplo: Solución de una ecuación de segundo grado.

Descripción: https://4.bp.blogspot.com/_ooSmbWJ2llg/SZDz6pxrv4I/AAAAAAAAABw/NhPmDzqf_wo/s320/fuiiiii.jpg

Que son variables: Son atributos, cualidades, características observables que poseen las personas, objetos, instituciones que expresan magnitudes que varían discretamente o en forma continua. Ejemplo: son variables de las personas: la edad, sexo, talla, peso, contextura, color del cabello, color de ojos, grado de atención, conocimientos previos, confesión religiosa, procedencia, clase social, etc.  

valor de una variable:

 un valor. El nombre de la variable es la forma usual de referirse al valor almacenado: esta separación entre nombre y contenido permite que el nombre sea usado independientemente de la información exacta que representa. El identificador, en el codigo fuente de la computadora puede estar ligado a un valor durante el tiempo de ejecución y el valor de la variable puede por lo tanto cambiar durante el curso de la ejecución del programa. El concepto de variables en computación puede no corresponder directamente al concepto de variables en matemática. El valor de una variable en computación no es necesariamente parte de una ecuación o fórmula como en matemáticas

constante:

una constante es un valor que no puede ser alterado durante la ejecución de un programa. Corresponde a una longitud fija de un área reservada en la memoria principal del ordenador, donde el programa almacena valores fijos. El nombre de las constantes suele escribirse en mayúsculas en la mayoría de lenguajes.

Ejemplo de una constante en C/C++

En C o C++ las constantes se declaran con la directiva #define, esto significa que esa constante tendrá el mismo valor a lo largo de todo el programa. Elidentificador de una constante así definida será una cadena de caracteres que deberá cumplir los mismos requisitos que el de una variable (sin espacios en blanco, no empezar por un dígito numérico, etc). Ejemplo:

  #include <stdio.h> 
  #define PI 3.1415926 
  int main()
  {
  printf("Pi vale %f", PI);
  return 0;
  }

Lo cual mostrará por pantalla:

  Pi vale 3.1415926

Es decir, PI es una constante a la que le hemos asignado el valor 3.1415926 mediante la directiva #define. La directiva #define también se puede utilizar para definir expresiones más elaboradas con operadores (suma, resta, multiplicación etc) y otras constantes que hayan sido definidas previamente, por ejemplo:

  #define X 2.4 
  #define Y 9.2
  #define Z X + Y </div> 

pseudocodigo

Utiliza las convenciones estructurales de un lenguaje de programación real,2 pero está diseñado para la lectura humana en lugar de la lectura mediante 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. El lenguaje de programación se complementa, donde sea conveniente, con descripciones detalladas en lenguaje natural, o con notación matemática compacta. Se utiliza pseudocódigo pues este es más fácil de entender para las personas que el código del lenguaje de programación convencional, ya que es una descripción eficiente y con un entorno independiente de los principios fundamentales de un algoritmo. Se utiliza comúnmente en los libros de texto y publicaciones científicas que se documentan varios algoritmos, y también en la planificación del desarrollo de programas informáticos, para esbozar la estructura del programa antes de realizar la efectiva codificación.

 

Caracteristicas:

Las principales características de este lenguaje son:

1.  Se puede ejecutar en un ordenador (con un IDE como por ejemplo SLE, LPP, PilatoX, Maruga Script, Seudocódigo o PSeInt. Otros Ides de consideración son Inter-P y Algor)

2.  Es una forma de representación sencilla de utilizar y de manipular.

3.  Facilita el paso del programa al lenguaje de programación.

4.  Es independiente del lenguaje de programación que se vaya a utilizar.

5.  Es un método que facilita la programación y solución al algoritmo del programa.

Operadores

Significado

+

Suma

-

Resta

*

Multiplicacion

/

Division

DIV

Division entera

MOD

Modulo (resto de la division entera)

^

Potencia

 

 

La actividad del día 8 de mayo de 2015 consiste en la elaboración de un ALGORITMO que le dé solución al problema CONSEGUIR TRABAJO, para ello debe tener en cuenta:

1. Al algoritmo le deben enumerar cada paso

2. Todo algoritmo tiene un inicio y un final y entre estas dos se desarrollan todos los pasos requeridos

3. Utilizar frases concretas

4. Hágalo en WORD

5. Responda éste correo para enviármelo

6. Al RESPONDER no puede cambiar el ASUNTO del correo inicial

7. En la página WEB debe quedar dentro de la carpeta INFORMÁTICA, subcarpeta ALGORITMOS

8. En mi correo debe ingresar máximo hasta las 8 pm del día 9  de mayo de 2015

 

NOTA: PARA LA PRÓXIMA CLASE DEBEN TENER LA PÁGINA WEB terminada en todas sus pestañas

 

EJEMPLO DE UN ALGORITMO ELABORADO PARA LEER UN LIBRO:

PLANTEAMIENTO DEL PROBLEMA: Leer un libro:

1. Inicio.

2. Abrir el libro en la 1ª página.

3. Leer la página.

4. ¿Es la última que deseo leer?

Sí: Ve al paso 7.

No: Ve al paso 5

5. Pasar a la siguiente página.

6. Ve al paso 3.

7. Cerrar el libro.

8. Fin

DEPENDIENDO DEL PROBLEMA PLANTEADO, SE PUEDE PRESENTAR DE 1 hasta n ENUNCIADOS

1 INICIO

2 COMPRAR HOJA DE VIDA

3 LLENAR LOS DATOS

4 PEGAR LA FOTO

5 LLEVARLA  A LA TEMPORAL

6 ESPERAR LA LLAMADA

7 PRUEBAS SICOTECNICAS

8 ENTREVISTA

9 EXAMENES MEDICOS

10 RESULTADOS

11 FIRMAR CONTRATO

12 EMPEZAR A LABORAR

13 FIN