6 escritura de algoritmos programas
DESCRIPTION
Presentación en la que podemos aprender sobre como realizar un programa mediante el uso de la técnica de pseudocódigoTRANSCRIPT
![Page 1: 6 Escritura De Algoritmos Programas](https://reader036.vdocuments.site/reader036/viewer/2022082416/548805d7b4af9f870d8b553b/html5/thumbnails/1.jpg)
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](https://reader036.vdocuments.site/reader036/viewer/2022082416/548805d7b4af9f870d8b553b/html5/thumbnails/2.jpg)
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](https://reader036.vdocuments.site/reader036/viewer/2022082416/548805d7b4af9f870d8b553b/html5/thumbnails/3.jpg)
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](https://reader036.vdocuments.site/reader036/viewer/2022082416/548805d7b4af9f870d8b553b/html5/thumbnails/4.jpg)
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](https://reader036.vdocuments.site/reader036/viewer/2022082416/548805d7b4af9f870d8b553b/html5/thumbnails/5.jpg)
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](https://reader036.vdocuments.site/reader036/viewer/2022082416/548805d7b4af9f870d8b553b/html5/thumbnails/6.jpg)
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](https://reader036.vdocuments.site/reader036/viewer/2022082416/548805d7b4af9f870d8b553b/html5/thumbnails/7.jpg)
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](https://reader036.vdocuments.site/reader036/viewer/2022082416/548805d7b4af9f870d8b553b/html5/thumbnails/8.jpg)
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](https://reader036.vdocuments.site/reader036/viewer/2022082416/548805d7b4af9f870d8b553b/html5/thumbnails/9.jpg)
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](https://reader036.vdocuments.site/reader036/viewer/2022082416/548805d7b4af9f870d8b553b/html5/thumbnails/10.jpg)
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](https://reader036.vdocuments.site/reader036/viewer/2022082416/548805d7b4af9f870d8b553b/html5/thumbnails/11.jpg)
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](https://reader036.vdocuments.site/reader036/viewer/2022082416/548805d7b4af9f870d8b553b/html5/thumbnails/12.jpg)
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](https://reader036.vdocuments.site/reader036/viewer/2022082416/548805d7b4af9f870d8b553b/html5/thumbnails/13.jpg)
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](https://reader036.vdocuments.site/reader036/viewer/2022082416/548805d7b4af9f870d8b553b/html5/thumbnails/14.jpg)
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](https://reader036.vdocuments.site/reader036/viewer/2022082416/548805d7b4af9f870d8b553b/html5/thumbnails/15.jpg)
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](https://reader036.vdocuments.site/reader036/viewer/2022082416/548805d7b4af9f870d8b553b/html5/thumbnails/16.jpg)
Estructura Repetitiva paraLas acciones del cuerpo del bucle se
realizan un número deveces especificado de antemano.
![Page 17: 6 Escritura De Algoritmos Programas](https://reader036.vdocuments.site/reader036/viewer/2022082416/548805d7b4af9f870d8b553b/html5/thumbnails/17.jpg)
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](https://reader036.vdocuments.site/reader036/viewer/2022082416/548805d7b4af9f870d8b553b/html5/thumbnails/18.jpg)
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