Download Guía Programación I ¿Qué es el pseudocódigo? Usos
Document related concepts
Transcript
Guía Programación I ¿Qué es el pseudocódigo? En ciencias de la computación, y análisis numérico, el pseudocódigo (o falso lenguaje) es una descripción de alto nivel compacta e informal del principio operativo de un programa informático u otro algoritmo. Utiliza las convenciones estructurales de un lenguaje de programación real, 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. Usos Generalmente se utiliza pseudocódigo en los libros de texto y publicaciones científicas relacionadas con la informática y la computación numérica, para la descripción de algoritmos, de manera que todos los programadores puedan entenderlo, aunque no todos conozcan el mismo lenguaje de programación. Generalmente, en los libros de texto se adjunta una explicación que acompaña a la introducción y que explica las convenciones particulares en uso. El nivel de detalle del pseudocódigo puede, en algunos casos, acercarse a la de formalizar los idiomas de propósito general. Un programador que tiene que aplicar un algoritmo específico, sobre todo uno desfamiliarizado, generalmente comienza con una descripción en pseudocódigo, y luego "traduce" esa descripción en el lenguaje de programación meta y lo modifica para que interactúe correctamente con el resto del programa. Los programadores también pueden iniciar un proyecto describiendo la forma del código en pseudocódigo en el papel antes de escribirlo en su lenguaje de programación, como ocurre en la estructuración de un enfoque de Top-down (De la más general a lo más específico) y Bottom-up (De los más específico a lo más general) NOTA: Una particularidad del pseudocódigo, es que no tiene un lenguaje definido, ya que depende mucho de la persona que lo escribe, por lo que no obedece a reglas de sintaxis. Funciones, Operaciones y Estructuras • Definir variables, es asignar un espacio en la memoria física disponible en el sistema con un tipo de dato predefinido. o Definir variable como tipo_de_dato Ejemplo: Asignar a tres variables, “palabra”, “suma” y “normal”, un tipo de dato acorde a su descripción: 1. Definir palabra como Caracter 2. Definir suma como Numero 3. Definir normal como Logico NOTA: El tipo de dato “Caracter” define a la variable como una cadena de caracteres, la cual puede contener tanto una palabra como una frase. El tipo de dato “Numero” define que la variable almacenará un numero cualquiera. El tipo de dato “Logico” define que la variable almacenará un binario/estado, este tipo de dato almacena datos Verdaderos o Falsos dependiendo del contexto del programa. • Asignar Valores, asignar el valor o contenido de y en x o x <- y ox=y Ejemplo: Sumar dos números y mostrar el resultado: 1. 2. 3. 4. 5. Se tienen dos números, 3 y 2 Se asignan ambos números a dos variables, “x” e “y” respectivamente. x <- 3 y <- 2 Se suman ambas variables y se asignan a una variable llamada “resultado” 6. resultado <- x + y 7. Mostrar “resultado” 8. “resultado” es 5 • Estructuras secuenciales, como su nombre lo dice, son instrucciones que se realizan de manera secuencial. o Instruccion1; o Instruccion2; o Etc.. Ejemplo: Definir dos variables como números, asignar en la primera variable el número “15” y en la segunda variable el número “4”, definir una tercera variable que almacene el resultado de un operación matemática, almacenar el producto de ambas variables en la última variable creada, mostrar el resultado. 1. 2. 3. 4. 5. 6. 7. • Definir num1 como numero; //Instrucción 1 Definir num2 como numero; //Instrucción 2 num1 <- 15; //Instrucción 3 num2 <- 4; //Instrucción 4 Definir producto como numero; //Instrucción 5 producto <- num1 * num2; //Instrucción 6 Mostrar producto; //Instrucción 7 Estructuras selectivas, las instrucciones selectivas representan instrucciones que pueden o no ejecutarse, según el cumplimiento de una condición. o Si condición Entonces //Instruciones Fin Si Ejemplo: Mostrar el contenido de la variable “normal” si esta contiene el valor “Verdadero”. 1. Definir normal como Logico; 2. normal <- Verdadero 3. Si normal = Verdadero Entonces Mostrar normal; Fin Si; o //E. Selectiva alternativa Si condición Entonces //Instruciones Sino //Instruciones alternativas Fin Si Ejemplo: Mostrar el contenido de la variable “normal” si esta contiene el valor “Verdadero”, de lo contrario mostrar “No es verdadero”. 1. Definir normal como Logico; 2. normal <- Falso; 3. Si normal = Verdadero Entonces Mostrar normal; Sino Mostrar “No es verdadero”; Fin Si; • Estructuras iterativas, las instrucciones iterativas representan la ejecución de instrucciones en más de una vez.. o Mientras condición Hacer //Instrucciones Fin Mientras Ejemplo: Definir una variable que contenga el número 15, y sumar dicha variable consigo misma hasta que la suma total sea 120 y mostrar el resultado. 1. Definir num como numero; 2. num <- 15; 3. Mientras num <= 120 Hacer num <- num + num; Fin Mientras Mostrar num; Ejercicios 1. Escriba un programa que calcule el promedio de n cantidad de notas, donde n es ingresado por pantalla. 2. Escriba un programa que acepte un número por pantalla y verifique si es primo o no es primo. 3. Realice una función que reciba por parámetros una variable tipo caracter y que muestre por pantalla si es consonante o vocal. 4. Escriba un programa que reciba por pantalla n, donde n es cuantos números quiere ordenar, y un arreglo de tamaño n con números aleatorios y ordene los números de mayor a menor. 5. Escriba un programa que reciba el Rut y diga si el Rut existe o no existe. La formula se encuentra al final de la guía 6. Escriba un programa que pida por pantalla 10 edades, y diga cuantos mayores y menores de edad hay. 7. Realice la función factorial iterativa de un número n, por ejemplo 5 = 1*2*3*4*5 =120. 8. Escriba un programa en C que acepte un número por pantalla y lo invierta, ya sea decimal o entero. Por ejemplo: 56,7 =7,65. NOTA: Usar la función Subcadena() 9. La sucesión de Fibonacci es una sucesión infinita de números naturales, donde se comienza con un 0 1 1 y se van sumando los últimos 2 números, por ejemplo 0 1 1 2 3 5 8... Escriba un programa en C que calcule la sucesión de Fibonacci hasta n primeros números, donde n es ingresado por el usuario. Algoritmo para verificar si el rut es valido: 1. Multiplicar cada dígito del RUT se por 2, 3, ..., 7, 2, 3, ... de atrás hacia adelante. 2. Sumar las multiplicaciones parciales. 3. Calcular el resto de la división por 11 4. El Dígito Verificador es 11 menos el resultado anterior. Si es 10, se cambia por 'k'. EJEMPLO. RUT: 11.222.333 1. 1 1 2 2 2 3 3 3 <-- RUT * 3 2 7 6 5 4 3 2 <-- 2, 3, 4, 5, 6, 7, 2, 3, ... -------------------------------------3 2 14 12 10 12 9 6 2. SUMA: 3 + 2 + 14 + 12 + 10 + 12 + 9 + 6 = 68 3. 68 : 11 = 6 - 66 ---2 <-- RESTO 4. 11 - 2 = 9 <-- DÍGITO VERIFICADOR