6 escritura de algoritmos programas

18
ESCRITURA DE ALGORITMOS Y PROGRAMAS ING. PAULO GUERRA ESCUELA POLITÉCNICA DEL EJÉRCITO INGENIERIA GEOGRÁFICA Y MESIO AMBIENTE

Upload: paulo-guerra-teran

Post on 05-Dec-2014

14.896 views

Category:

Education


3 download

DESCRIPTION

Presentación en la que podemos aprender sobre como realizar un programa mediante el uso de la técnica de pseudocódigo

TRANSCRIPT

Page 1: 6 Escritura De Algoritmos Programas

ESCRITURA DE ALGORITMOS Y PROGRAMAS

ING. PAULO GUERRAESCUELA POLITÉCNICA DEL EJÉRCITO

INGENIERIA GEOGRÁFICA Y MESIO AMBIENTE

Page 2: 6 Escritura De Algoritmos Programas

Programación del algoritmo Una vez determinado el algoritmo hay que

escribirlo en un lenguaje de alto nivel. Por eso lo mejor es escribir el algoritmo en un lenguaje restringido que sea fácil de traducir a un lenguaje de alto nivel.

El pseudocódigo es una manera de escribir algoritmos de forma poco estricta (con una sintaxis relajada) o estructuras de datos poco detalladas, pero intentando acercar las ideas del algoritmos a estructuras y sintaxis parecidas a las de los lenguajes de alto nivel en los que vamos a programar el algoritmo.

Page 3: 6 Escritura De Algoritmos Programas

Estructura de un programa en pseudocódigo Algoritmo nombre_de_algoritmo Constantes constante = valor Tipos tipo nombre_tipo tipo campo1 tipo campo2 fin_tipo Variables tipo variable1, variable2Inicio Sentencias Fin

Page 4: 6 Escritura De Algoritmos Programas

Las sentencias serán únicamente de tres tipo: 1. Instrucciones de entrada/salida Leer(variable). Pide un valor al usuario y lo almacena

en la variable.

2.Asignaciones Instrucción simple compuesta por una variable, el

símbolo de la asignación (←) y una expresión o literal. Tras ejecutar la instrucción a la variable se le asignará el resultado de la expresión. Variable ← expresión Ejemplo: a ← 2 + 4 * (8+a)

3Estructuras de control. descritas a continuación.

Page 5: 6 Escritura De Algoritmos Programas

Estructuras de control Llamaremos estructuras de control a las

acciones que tienen como objeto marcar el orden de ejecución de las instrucciones y que van a servirnos para escribir concisamente y sin ambigüedades los algoritmos.

Todas las estructuras de control que estudiaremos estarán compuestas de unos elementos básicos (léxico) y una estructura (sintaxis.)

Page 6: 6 Escritura De Algoritmos Programas

Estructuras secuenciales En una estructura secuencial una instrucción

sigue a otra en una secuencia lineal. Pseudocódigo

Inicio tarea1 tarea2 ... tarea n Fin

Ejemplo: Calcular la nota media de un alumno . nota_teoria * 0.7 + nota_practica *0.3

Pseudocódigo Algoritmo calcula_nota variables real: nota_teoria, nota_practica, nota_final Inicio Leer (nota_teoria) Leer (nota_practica) nota_final ← nota_teoria * 0.7 + nota_practica * 0.3 Escribir (nota_final) Fin

Page 7: 6 Escritura De Algoritmos Programas

Estructuras selectivas Son las que toman una cierta dirección dentro del

flujo del programa en función de una condición o el valor de una variable.

Tenemos alternativas simples, dobles o multiples

Alternativas simples Se realiza una acción o conjunto de acciones si se

cumple una determinada condición. Pseudocódigo ... Si ( expresion ) entonces acciones Fin_si

Page 8: 6 Escritura De Algoritmos Programas

Ejemplo: Ordenar dos números (Leídos dos números escribir por pantalla primero el menor y luego el mayor) Pseudocódigo

Algoritmo Ordenar Variables entero a, b, aux Inicio Leer (a) Leer (b) Si (a > b) Entonces aux ← a a ← b b ← aux Fin_si Escribir (a) Escribir (b) Fin

Page 9: 6 Escritura De Algoritmos Programas

Alternativas dobles

Si una condición se cumple se realizan unas acciones, si no se cumple la condición se realizan otras. Pseudocódigo

... Si ( expresión ) entonces acciones1 sino acciones2 Fin_si

Page 10: 6 Escritura De Algoritmos Programas

Ejemplo sencillo: Dado un número, decir si es positivo o negativo. Pseudocódigo

Algoritmo Positivo_Negativo Variables Entero xInicio Leer (x) Si (x<0) entonces Escribir (‘Numero negativo’) sino Escribir (‘Numero positivo’) Fin_si Fin

Page 11: 6 Escritura De Algoritmos Programas

Estructura Condicional MúltipleSe evalúan en orden una serie de

condiciones.Se ejecuta la serie de acciones asociada a

la primera condición que se cumpla. Si ninguna de las condiciones se cumple, se ejecuta una serie de acciones alternativas.

Page 12: 6 Escritura De Algoritmos Programas

Alternativas múltiples por casos Dependiendo del valor de una variable se

realizan unas acciones u otras. Pseudocódigo ... Según_sea (variable) hacer Caso valor1: acciones1 Caso valor2: acciones2 … Caso valorn: accionesn Default: accionesx Fin_según_sea

Page 13: 6 Escritura De Algoritmos Programas

Algoritmo Calculadora Variables Entero num1, num2, opcion Real respuestaInicio Escribir ( ‘Ingrese los números’)

Leer (num1) Leer (num2) Escribir (‘Seleccione la operación:’) Escribir (‘(1-Suma/2-Resta’) Escribir (‘(3-Multiplic./4-División’) Leer (opcion) Según_sea (opcion) hacer

Caso 1: respuesta <- num1 + num2 Escribir (respuesta) Caso 2: respuesta <- num1 - num2 Escribir (respuesta) Caso 3: respuesta <- num1 * num2 Escribir (respuesta) Caso 4: si(num2==0) entonces Escribir (‘Error… no existe división para 0’)

sino respuesta <- num1 /num2

Escribir (respuesta) fin siDefault: Escribir (‘Operación no válida’)

Fin_según_sea Fin

Page 14: 6 Escritura De Algoritmos Programas

Estructura Repetitiva mientrasLas acciones del cuerpo del bucle se realizan mientras lacondición sea verdadera.Se pregunta por la condición al principio. Se deduce

entoncesque el cuerpo del bucle puede no ejecutarse.

Page 15: 6 Escritura De Algoritmos Programas

Ejemplo mientrasEscribir un algoritmo que muestre la tabla de multiplicar del

numero 7. Para ello emplee la Estructura Repetitiva Mientras.Algoritmo Calculadora Variables Entero M, CInicio M ← 0

C ← 1 mientras ( C <= 12 ) hacer M ← C * 7

C ← C + 1 Escribir (M) Fin mientrasFIN

Page 16: 6 Escritura De Algoritmos Programas

Estructura Repetitiva paraLas acciones del cuerpo del bucle se

realizan un número deveces especificado de antemano.

Page 17: 6 Escritura De Algoritmos Programas

Ejemplo paraalgoritmo Numeros_del_1_al_10

 variables    entero contador

 inicio    para contador ← 1 hasta 10 hacer       escribir( contador )    fin_para fin

Page 18: 6 Escritura De Algoritmos Programas

Fuentes ConsultadasInternet http://mural.uv.es/pausan5/Tema4.pdfhttp://

www.carlospes.com/curso_de_algoritmos/10_03_repetitiva_para.php

FUNDAMENTOS DE PROGRAMACION. LIBRO DE PROBLEMAS. Autor: JOYANES AGUILAR, LUIS. Editora: MCGRAW-HILL / INTERAMERICANA. DE ESPAÑA, S.A.. ISBN: 8448107004