Download Guía Programación I ¿Qué es el pseudocódigo? Usos

Document related concepts

Pseudocódigo wikipedia , lookup

Algoritmo wikipedia , lookup

Programación por procedimientos wikipedia , lookup

Tipo de dato wikipedia , lookup

Lenguaje de programación wikipedia , lookup

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