LIBERTY SCHOOL MANUAL DE PROGRAMACIÓN 9th 1
PRIMERA UNIDAD Qué es PSeInt PSeInt está pensado para asistir a los estudiantes que se inician en la construcción de programas o algoritmos computacionales. El pseudocódigo se suele utilizar como primer contacto para introducir conceptos básicos como el uso de estructuras de control, expresiones, variables, estructuras de datos, etc, sin tener que lidiar con las particularidades de la sintaxis de un lenguaje real. Este software pretende facilitarle al principiante la tarea de escribir algoritmos en este pseudolenguaje presentando un conjunto de ayudas y asistencias, y brindarle además algunas herramientas adicionales que le ayuden a encontrar errores y comprender la lógica de los algoritmos. Cuando se formula un algoritmo el objetivo es ejecutar este en una computadora, sin embargo, para que este entienda los pasos para llevar a cabo nuestro algoritmo debemos indicárselo siguiendo un conjunto de instrucciones y reglas que este entienda, y estas instrucciones son abstraídas en lo que conocemos como lenguaje de programación y luego son traducidas (compiladas) por el compilador del programa Por otro lado, el pseudocódigo es un lenguaje de especificación (descripción) de algoritmos. El uso de tal lenguaje hace el paso de codificación final (traducción al lenguaje de programación) relativamente fácil, por lo que este es considerado un primer borrador de la solución del programa. Proceso pseudocodigo Escribir "Digite la edad"; Leer edad; Si edad > 18 Entonces Escribir "Ud es mayor de edad"; Sino Escribir "Ud es menor de edad"; Fin Si FinProceso Pseudocódigo en pocas palabras Como habíamos dicho antes, el pseudocódigo es un lenguaje de descripción de algoritmos por lo que un primer paso consiste en familiarizarnos con este lenguaje. Como punto de partida tenemos que tener en cuenta lo siguiente: Anatomía de un algoritmo: Un algoritmo es finito por lo que tiene un principio y un fin. La siguiente plantilla muestra la forma básica de un algoritmo: 2
Algoritmo(nombre_algoritmo) Declaracion_de_variables Inicio Instrucción_1 Instrucción_2 Instrucción_N Fin_inicio Fin(nombre_algoritmo) Las variables: Cuando nos referimos a variables nos referimos a lugares de memoria en los cuales se almacena algún tipo de información, por ejemplo el número de gallinas, la altura, la edad, el nombre y el peso. VARIABLE: Es un espacio en memoria reservado para almacenar un valor, al cual se le reconoce con una etiqueta o nombre para de este modo tener acceso a la información que contiene. Existen diferentes tipos de datos tal por NUMERICO: Este tipo de variable contiene números decimales o enteros CARÁCTER: Contiene cadenas de caracteres. Como se muestra en la siguiente tabla Tipo de dato Descripción Ejemplo entero Tipo de dato asociado a cantidades enteras. No poseen parte decimal. Ejemplo: 5, 6, -15, 199, real lógicos alfanuméricos Tipo de dato asociado a cantidades con parte decimal. Por ejemplo: 0.06, -3.4, 2.16, 1000.345, Numero de vacas, edad. Estatura, peso, volumen. Se refiere a aquellos datos que pueden tomar solo dos posibles valores falso (F) o verdadero (T) Asociado a aquellos datos que contienen Nombre, cedula, caracteres alfanuméricos (letras, número, teléfono signos de puntuación, etc). Instrucción de asignación: Escribe sobre una variable el valor de una expresión. En Pseint el operador de asignación es una flecha variable expresión (en pseint) Donde, una expresión es una combinación de valores, variables y operadores, los siguientes son algunos ejemplos de expresiones: a 5 b c*d+(c-f)*m z (x+y)/(w+s) s (a/b)^3 3
Existen diferentes tipos de operadores. La siguiente tabla muestra los operadores aritméticos.g Operador Significado ^ Potenciación + Suma - Resta * Multiplicación / División Instrucciones de entrada y salida: Para que un programa pueda interactuar con el usuario deben haber un conjunto de instrucciones que permitan especificar tal interacción, y estas son las instrucciones de entrada y salida. ü Instrucciones de entrada: Permite tomar uno o más datos de un medio externo (comúnmente el teclado) y asignarlos a una o más variables, su representación en pseudocódigo es: Leer(var1, var2,, varn) ü Instrucciones de salida: Permite mostrar de variables y constante en un medio externo (comúnmente la pantalla). En pseudocódigo la instrucción asociada a la salida tiene la siguiente forma: Escribir(var1,var2,, varn) Ejemplo 1: v Codifique un algoritmo que solicite el nombre y devuelva como salida el mensaje: Hola nombre_ingresado. Por ejemplo, si el usuario digita ramón, el mensaje desplegado será: Hola ramón. En lenguaje natural seria: Pedir el nombre Mostrar el nombre En pseudocódigo seria: Algoritmo(nombre) Variables: alfanumerica: nom INICIO ESCRIBA( Digite el nombre ) LEA(nom) ESCRIBA( Hola,nom) FIN_INICIO Fin(nombre) En PseInt 4
Proceso nombre Definir nom Como Caracter; Escribir "Digite el nombre"; Leer nom; Escribir "Hola " nom; FinProceso Ejemplo 2: v Realice un algoritmo que pida dos números enteros, realice su suma y muestre el resultado. En lenguaje natural seria: Pedir los dos números Sumar ambos números Mostrar la suma En pseudocódigo seria: Algoritmo(suma) Variables: entero: a, b, c INICIO ESCRIBA( Digite el primer numero (entero) ) LEA(a) ESCRIBA( Digite el segundo numero (entero) ) LEA(b) c = a + b ESCRIBA( La suma es:,c) FIN_INICIO Fin(sumar) En PseInt Proceso suma Definir a,b,c Como Entero; Escribir "Digite el primer número"; Leer a; Escribir "Digite el segundo número"; Leer b; c<-a+b; Escribir "Suma es: " c; FinProceso 5
Ejemplo3 Realizar un algoritmo que calcule el perímetro y el área de un rectángulo dado la base y la altura del mismo. En pseudocódigo seria: Pedir la base Pedir la altura Calcular el area como base*altura/2 Mostrar el area Codificación en PSEINT En PseInt Proceso area Definir base, altura, area Como Real; Escribir "De la base"; Leer base; Escribir "De la altura"; Leer altura; area<-(base * altura)/2; Escribir "Area es " area; FinProceso Ya se tiene el pseudocódigo del programa codificado en nuestro pseudocódigo por convención sin embargo la idea es probarlo para ver cómo funciona. La asignación en PSeInt no es con igual (=) sino con flecha (<-) y al final va punto y coma (;). Entrada de datos Leer a,b,c; La instrucción de entrada en PSeInt se llama Leer no hace uso de paréntesis y termina con signo de punto y coma (;). Salida de datos Escribir Hola, nombre; La instrucción de entrada en PSeInt se llama Escribir no hace uso de paréntesis y termina con signo de punto y coma (;). Y se utiliza comillas dobles para los carteles. Ejecución del PSeInt Abra el programa PSEINT (Inicio > todos los Programas > PSeInt). Una vez ejecutado, se debe abrir una ventana como la mostrada en la figura 1: 6
Guía de Ejercicios 1. Calcule y escriba el cuadrado de un número 2. Convertir una temperatura dada en grados Celsius a grados Farenheit (F=(9/5)C+32) 3. Calcular el área de un triángulo en función de la base y la altura 4. Calcular el salario de un trabajador conociendo la cantidad de días trabajados y el monto por día 5. Calcular la equivalencia de lempiras a dólares 6. Calcular la equivalencia de dólares a euros 7
Condicional Si-Entonces SEGUNDA UNIDAD La secuencia de instrucciones ejecutadas por la instrucción Si-Entonces-Sino depende del valor de una condición lógica. Si <condición> Entonces <instrucciones> Sino <instrucciones> FinSi Al ejecutarse esta instrucción, se evalúa la condición y se ejecutan las instrucciones que correspondan: las instrucciones que le siguen al Entonces si la condición es verdadera, o las instrucciones que le siguen al Sino si la condición es falsa. La condición debe ser una expresión lógica, que al ser evaluada retorna Verdadero o Falso. La cláusula Entonces debe aparecer siempre, pero la cláusula Sino puede no estar. En ese caso, si la condición es falsa no se ejecuta ninguna instrucción y la ejecución del programa continúa con la instrucción siguiente. 8
Ejercicio 1 Una persona es apta para prestar el servicio militar obligatorio cuando: es mayor de 18 años, menor de 25 años, y género masculino. Realizar un algoritmo que permita determinar si una persona es apta o no para prestar el servicio militar Ejercicio 2 Una empresa quiere hacer una compra de varias piezas de la misma clase a una fábrica. La empresa, dependiendo del monto total de la compra, decidirá qué hacer para pagar al fabricante. Si el monto total de la compra excede de $500.000 la empresa tendrá la capacidad de invertir de su propio dinero un 55% del monto de la compra, pedir prestado al banco un 30% y el resto lo pagará solicitando un crédito al fabricante. Si el monto total de la compra no excede de $500 000 la empresa tendrá capacidad de invertir de su propio dinero un 70% y el restante 30% lo pagará solicitando crédito al fabricante. El fabricante cobra por concepto de intereses un 20% sobre la cantidad que se le pague a crédito. Hacer un algoritmo que determine cómo se pagaría una compra determinada. 9
Ejercicio 3 Se ha establecido un programa para estimular a los alumnos, el cual consiste en lo siguiente: si el promedio global obtenido por un alumno en el último periodo es mayor o igual que 4, se le hará un descuento del 30% sobre la matrícula y no se le cobrará IVA; si el promedio obtenido es menor que 4 deberá pagar la matrícula completa, la cual debe incluir el 10% de IVA. Hacer un algoritmo que calcule el valor a pagar si se conocen las notas finales de las 6 materias que cursaron 10
Ejercicio 4 Una tienda ha puesto en oferta la venta al por mayor de cierto producto, ofreciendo un descuento del 15% por la compra de más de 3 docenas y 10% en caso contrario. Diseñe un algoritmo que determine el monto de la compra, el monto del descuento y el monto a pagar. Ejercicio 5 En un supermercado se hace una promoción, mediante la cual el cliente obtiene un descuento dependiendo de un número que se escoge al azar. Si el número escogido es menor que 74 el descuento es del 15% sobre el total de la compra, si es mayor o igual a 74 el descuento es del 20%. Obtener cuánto dinero se le descuenta. 11
Ejercicio 6 Determinar si un alumno aprueba o reprueba un curso, sabiendo que aprobará si su promedio de tres calificaciones es mayor o igual a 3.0; reprueba en caso contrario. Ejercicio 7 En una playa de estacionamiento cobran $1500 la primera hora y $1000 a partir de la segunda hora. Diseñe un algoritmo que determine cuánto debe pagar un cliente por el estacionamiento de su vehículo, conociendo el tiempo de estacionamiento en horas. 12
Ejercicio 8 Hacer un algoritmo que permita emitir la factura correspondiente a una compra de un artículo del cual se adquieren una o varias unidades y se conoce su precio antes de IVA. El IVA es del 15% y si el precio bruto (precio venta mas IVA) es mayor de $50.00 se debe realizar un descuento del 5%. Ejercicio 9 Haga un algoritmo que permita determinar el precio de un pasaje en avión sabiendo: la distancia a recorrer, valor por kilómetro recorrido ($47), sobre los 1000 km de vuelo el valor del kilómetro es de $25. 13
Ejercicio 10 Obtener el iva de una venta, si esta es superior a $ 150.000 aplicar un descuento del 25 %, en caso contrario no se le aplica el impuesto. 14