Algoritmos

Page 1

ALGORITMOS Eder Angeles baltazar Diana Karen Cort茅s Romero Sergio Alexander Flores Castellanos Secci贸n 102


Clasificación de algoritmos Algoritmo computacional:

Algoritmo no computacional:

Es un algoritmo que puede ser ejecutado en una computadora.

Es un algoritmo que no requiere de una computadora para ser ejecutado.

Ejemplo: Fórmula aplicada para un cálculo de la raíz cuadrada de un valor x.

Ejemplo: Instalación de un equipo de sonido.


Algoritmo cualitativo:

Algoritmo cuantitativo:

Un algoritmo es cualitativo cuando en sus pasos o instrucciones no están involucrados cálculos numéricos.

Una algoritmo es cuantitativo cuando en sus pasos o instrucciones involucran cálculos numéricos.

Ejemplo: Las instrucciones para desarrollar una actividad física.

Ejemplo: Solución de una ecuación de segundo grado.


CaracterĂ­sticas de un algoritmo 1. Debe ser Preciso, porque cada uno de sus pasos debe indicar de manera precisa e inequĂ­voca que se debe hacer. 2. Debe ser Finito, porque un algoritmo debe tener un nĂşmero limitado de pasos. 3. Debe ser Definido, porque debe producir los mismos resultados para las mismas condiciones de entrada.


Partes de un algoritmo 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: datos obtenidos despu茅s de la ejecuci贸n del algoritmo.


Diagrama 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


4. Puede tener cero o mรกs elementos de entrada. 5. Debe producir un resultado. Los datos de salida serรกn los resultados de efectuar las instrucciones.


Simbologí a INICIO y FIN

LECTURA

OPERACIONES

LECTURA

TOMA DE DECISIÓN

ESCRITURA

CONECTORES


Beneficios del Diagrama de Flujo

Facilita la obtención de una visión transparente del proceso, mejorando su comprensión. La diagramación hace posible comprender el conjunto de actividades, relaciones e incidencias de un proceso e ir más allá, centrándose en aspectos específicos del mismo, apreciando las interrelaciones que forman parte del proceso así como las que se dan con otros procesos y subprocesos.


•. Permiten definir los límites de un proceso. A veces estos límites no son tan evidentes, no estando definidos los distintos proveedores y clientes (internos y externos) involucrados.


•. E l d i a g r a m a d e f l u j o f a c i l i t a l a identificación de los clientes, es más sencillo determinar sus necesidades y ajustar el proceso hacia la satisfacción de sus necesidades y expectativas . 1. E s t i m u l a e l p e n s a m i e n t o analítico en el momento de estudiar un proceso, haciendo más factible generar alternativas útiles.


Pseudoc贸digo Una de las mayores dificultades con las que se encuentran los hispanoparlantes que empiezan a programar es el idioma.


Una herramienta habitual para ayudar a los que empiezan es el Pseudocódigo, algo así como un falso lenguaje de programación en español, que ayuda a asimilar con más facilidad las ideas básicas.


El pseudocódigo soluciona el primer problema: no hace falta aprender inglés para entender los conceptos básicos. Existen varios de estos "intérpretes de pseudocódigo", que permiten teclear nuestro programa y ver cual sería el resultado, como: PSEINT.


El principal objetivo del pseudocódigo es el de representar la solución a un algoritmo de la forma más detallada posible, y a su vez lo más parecida posible al lenguaje que posteriormente se utilizara para la codificación del mismo.


Las principales características de este lenguaje son: – Se puede ejecutar en un ordenador – Es una forma de representación sencilla de utilizar y de manipular. – Facilita el paso del programa al lenguaje de programación. – Es independiente del lenguaje de programación que se vaya a utilizar. – Es un método que facilita la programación y solución al algoritmo del programa


Pseudocódigo que calcula el área de un triángulo recibiendo como entrada el valor de base y altura. Inicio Variables Altura, Base, Area. Escribir ("Introduce la base y la altura: “) Leer base y altura area<= (base*altura)/2. Escribir ("El area es: ", base) Fin.


Estructuras Secuenciales

La estructura secuencial es aquella en la que una acci贸n (instrucci贸n) sigue a otra en secuencia. Las tareas suceden de tal modo que la salida de una es la entrada de la siguiente y as铆 sucesivamente hasta el fin del proceso.


En Pseudocódigo una Estructura Secuencial se representa de la siguiente forma: 1. PSEUDOCÓDIGO Nombre 2. VARIABLES

INICIO

3. Nombre: Tipo de dato 4. CONSTANTES

Accion

5. Nombre = Valor 6. INICIO

Accion2

– Acción – Acción2 – . – .

AccionN

– . – acciónN

7. FIN

FIN


Algoritmo que pregunte por dos números y muestre como resultado la suma de estos.

PSEUDOCÓDIGO SUMAR VARIABLES Num1,Num2,Suma: Entero INICIO Escribir (“Introduzca dos números‘”) Leer (Num1, Num2) Suma=Num1 + Num2 Escribir (“La suma es:‘”, Suma) FIN


ESTRUCTURAS DE DECISIÓN

Las estructuras de decisión se utilizan para tomar decisiones lógicas, también se les llama estructuras de selección o alternativas.


En las estructuras de decisión se evalúa una condición y en función del resultado de la misma se realiza una serie de instrucciones u otra. Las condiciones se especifican utilizando expresiones lógicas. Las estructuras de selección pueden ser simples, dobles o múltiples.


Estructura de decisión:

SIMPLE La estructura de selección simple evalúa una condición, si ésta es verdadera ejecuta una o varias instrucciones, si es falsa continua la ejecución normal del programa.

INICIO Si <condición> entonces <acción 1> <acción 2> Fin_Si FIN


Leer de teclado 2 numeros y mostrar en pantalla cual es el mayor.

INICIO Leer (a, b) Si (a>b) entonces Escribir (“El mayor es:”, a) FIN


Estructura Doble Si la condición es verdadera , se ejecuta una acción y, si es falsa otra acción.

Si <condición> entonces Acción 1 si_no Acción 2 Fin_Si


Lee un numero de teclado e indica si es par o impar

Inicio Leer (numero) Si ((numero MOD 2) = 0) entonces Escribir (“Par”) Si_no Escribir (“Impar”) Fin


Estructura de decisi贸n:

ANIDADA Decimos que una estructura es anidada cuando por la rama del verdadero o el falso de una estructura condicional hay otra estructura condicional.


Si <condici贸n> entonces

La principal se trata de una estructura condicional compuesta y la segunda es una estructura condicional simple y est谩 contenida por la rama del falso de la primer estructura.

Si < condici贸n2> entonces Si <condici贸n3> entonces . . . <acciones> Fin_si Fin_si Fin_si


Estructura de decisión:

MULTIPLE La estructura de decisión múltiple evaluará una expresión que podrá tomar n valores distintos. El algoritmo seguirá un determinado camino de los n posibles. En caso de <expresión 1> Acción 1 <expresión 2> Acción 2 <expresión 3> Acción 3 <expresión 4> Acción 4 Fin_en caso de


Permiten evaluar una variable con distintos posibles resultados, ejecutando para cada caso una serie de instrucciones especificas. La estructura de selección nos permite elegir una ruta de entre varias rutas posibles, en base al valor de una variable que actúa como selector. En el momento en que se encuentre una coincidencia, se ejecuta la acción correspondiente a dicha constante y se abandona la estructura.


Ejemplo: Dados como datos la categorĂ­a y el sueldo de un trabajador, calcule el aumento correspondiente teniendo en cuenta la siguiente tabla. Imprimir la categorĂ­a del trabajador y el nuevo sueldo.

Inicio Leer (cate, sue) En caso que cate sea 1: hacer nsue <-- sue * 1.15 2: hacer nsue <-- sue * 1.10 3: hacer nsue <-- sue * 1.08 4: hacer nsue <-- sue * 1.07 Fin_caso_que Escribir (cate, nsue) Fin


ESTRUCTURAS DE REPETICIÓN

La estructura de repetición o bucle nos permiten ejecutar varias veces unas mismas líneas de código. Estas estructuras describen procesos que se repiten varias veces en la solución del problema.


Estructuras de Repeticion:

PARA Se utiliza para repetir una sentencia o grupo de sentencias un nĂşmero fijo de veces. Se utiliza mayormente cuando se conoce de antemano el nĂşmero de veces que se va a ejecutar el lazo.

REPITA PARA variable_de_control:= valor_inicial HASTA valor_final Sentencia 1; Sentencia 2; FIN RP


La estructura REPITA PARA requiere:

1. Iniciar el contador . Es evaluada una sola vez, cuando se ejecuta por primera vez el lazo. Normalmente es una sentencia de asignación. 2. Condición de terminación del lazo. Es evaluada cada vez que se ejecuta el repita para. 3. Modificación del contador. Se ejecuta luego de la última instrucción del lazo.



Mostrar en pantalla el promedio de edades de los estudiantes de un sal贸n de 50 alumnos.

Inicio suma = 0 Para contador =1, 50 Paso 1 hacer Leer (edad) suma= suma + edad Fin_para Promedio= Suma/(contador-1) Escribir (Promedio) Fin



Estructuras de Repetición:

Hacer Mientras Es una estructura de repetición que evalúa una expresión lógica, y mientras el resultado sea “cierto” el bloque de instrucciones, enmarcado entre las llaves de la estructura, es ejecutado. ➲ Es del tipo Repita Mientras pero la expresión lógica es evaluada al final del bloque de instrucciones


Si el resultado de la expresión es “falso” la primera vez, entonces el bloque de instrucciones se ejecuta cero veces. Si la condición nunca se hace falsa, entonces el lazo se ejecuta de forma infinita. El bloque de instrucciones es ejecutado al menos una vez ya que la expresión lógica esta ubicada al final del lazo


Hacer S1 ... Sn mientras (<condici贸n>)


Estructuras de Repeticion:

Mientras Hacer Se utiliza para repetir una sentencia o grupo de sentencias hasta que una condici贸n especificada sea verdadera. Repita Mientras Condici贸n se cumpla haga Sentencia 1; Sentencia 2; ........ Sentencia n; fin rm


Las sentencias (una o más) del cuerpo del lazo se ejecutan mientras la condición (expresión lógica) es cierta. Cuando la condición es falsa, termina la ejecución del lazo. Se pregunta al principio por la condición, por tanto el lazo se ejecuta cero (si la primera vez la condición es falsa) o mas veces


Turn static files into dynamic content formats.

Create a flipbook
Issuu converts static files into: digital portfolios, online yearbooks, online catalogs, digital photo albums and more. Sign up and create your flipbook.