SI
SI
FAREM – Matagalpa
Asignatura: Fundamento de SI
Docente: Helen Mairena Molina
Diagramas de flujo
Pseudocódigo
Un algoritmo puede ser escrito en castellano narrativo, pero esta descripción suele ser
demasiado confusa para poder codificarlo. Para representar un algoritmo se debe utilizar
algún método que permita independizar dicho algoritmo de los lenguajes de programación y,
al mismo tiempo, conseguir que sea fácilmente codificable.
1. Diagramas de Flujo.
1
Etapas que se deben seguir para construir un diagrama de flujo.
2
Debemos recordar que un diagrama de flujo debe ilustrar gráficamente los pasos o procesos
a seguir para alcanzar la solución de un problema. Los símbolos presentados, colocados
adecuadamente, permiten crear una estructura gráfica flexible que ilustra los pasos a seguir
para alcanzar un resultado específico. El diagrama de flujo facilitará más tarde la escritura
del programa en algún lenguaje de programación.
Todas las líneas utilizadas para indicar la dirección del flujo del diagrama deben estar
conectadas. La conexión puede ser a un símbolo que exprese lectura, proceso,
decisión, impresión, conexión o fin de diagrama.
3
El diagrama de flujo debe ser construido de arriba hacia abajo (top-down) y de
izquierda a derecha (right to left).
La notación utilizada en el diagrama de flujo debe ser independiente del lenguaje de
programación. La solución presentada en el diagrama puede escribirse posteriormente
y fácilmente en diferentes lenguajes de programación.
Es conveniente cuando realizamos una tarea compleja poner comentarios que
expresen o ayuden a entender lo que hicimos.
Si el diagrama de flujo requiriera más de una hoja para su construcción, debemos
utilizar los conectores adecuados y enumerar las páginas convenientemente.
No puede llegar más de una línea a un símbolo.
4
Ejemplo de un problema resuelto en diagrama de flujo
Problema: Calcular el salario bruto y el salario neto de un trabajador “por horas” conociendo
el nombre, número de horas trabajadas, el impuesto a pagar (25%) y el salario neto.
Bruto horas*precio
Tasas 0.25*bruto
Neto bruto - tasas
Las dos anteriores representaciones son válidas, se puede escribir más de un paso del
algoritmo en una sola caja rectangular.
Para crear diagramas de flujo por medio de software pueden utilizar aplicaciones online
o descargar un programa para instalar en su computadora. Algunas herramientas
online que pueden utilizar son:
DRAW: https://www.draw.io/
Lucidchart: https://www.lucidchart.com/es
5
2. Pseudocódigos.
Las palabras reservadas son palabras que tienen un significado especial, como: inicio y fin,
que marcan el principio y fin del algoritmo.
Identificadores son los nombres que se dan a las constantes simbólicas, variables.
6
Ejemplos de programas escritos en Pseudocódigo.
Ejemplo 1: Escribir un algoritmo que lea un valor entero, lo doble, se multiplique por 25 y
visualice el resultado.
Análisis de problema
Inicio
Var entero: numero, resultado
Mostrar (“Ingrese un número entero”)
Leer (numero)
numero=numero*2
resultado=número*25
Mostrar (“El resultado es”)
Mostrar (resultado)
Fin
Fin
7
Ejemplo 2: Diseñar un algoritmo que lea cuatro variables numéricas y calcule e imprima su
producto, su suma y su media aritmética.
Después de leer los cuatro datos, asignamos a la variable producto la multiplicación de las
cuatro variables de entrada. A la variable suma le asignamos su suma y a la variable media
le asignamos el resultado de sumar las cuatro variables y dividirlas entre cuatro. Como el
operador suma tiene menos prioridad que el operador división, será necesario encerrar la
suma entre paréntesis. También podríamos haber dividido directamente la variable suma
entre cuatro. La variables a,b,c,d, producto y suma podrán ser enteras, pero no así la variable
media, ya que la división produce siempre resultados de tipo real.
Inicio
Var
entero: a,b,c,d, producto, suma
real: media
Mostrar (“Ingrese el primer número”)
Leer (a)
Mostrar (“Ingrese el segundo número”)
Leer (b)
Mostrar (“Ingrese el tercer número”)
Leer (c)
Mostrar (“Ingrese el cuarto número”)
leer (d)
producto=a*b*c*d
suma=a+b+c+d
media=(a+b+c+d)/4
Mostrar (“La suma es:”)
Mostrar (suma)
Mostrar (“El producto es:”)
Mostrar (producto)
Mostar (“La media es:”)
Mostrar (media)
Fin
8
Ejemplo 3: Diseñar un programa que lea el peso de un hombre en libras y nos devuelva su
peso en kilogramos y gramos
El dato auxiliar libra lo vamos a considerar como una constante, pues no variará a lo largo
del programa. Primero leemos el peso. Para hallar su equivalencia en kilogramos
multiplicamos éste por la constante libra. Para hallar el peso en gramos multiplicamos los
kilogramos entre mil. Como es posible que el dato de entrada no sea exacto, consideraremos
todas las variables como reales.
Inicio
Var
entero: peso, kg, gr
Mostrar (“Ingrese el peso de la persona”)
Leer (peso)
producto=a*b*c*d
kg=peso*libra
gr=kg*1000
Mostrar (“La suma es:”)
Mostrar (suma)
Mostrar (“El peso en kg es:”)
Mostrar (kg)
Mostar (“El peso en gramos es:”)
Mostrar (gr)
Fin
9
Estructuras condicionales
No todos los problemas pueden resolverse empleando estructuras secuenciales. Cuando hay
que tomar una decisión aparecen las estructuras condicionales. (una instrucción después de
la otra).
Podemos observar: El rombo representa la condición. Hay dos opciones que se pueden
tomar. Si la condición da verdadera se sigue el camino del verdadero, o sea el de la
derecha, si la condición da falsa se sigue el camino de la izquierda.
10
Ejemplo:
Ingresar el sueldo de una persona, si supera los 3000 pesos mostrar un mensaje en pantalla
indicando que debe abonar impuestos.
Inicio
Var
Real: sueldo
Mostrar (“Ingrese el sueldo de la persona”)
Leer (sueldo)
Si (sueldo>3000)
Mostrar (“Esta persona debe abonar impuestos”)
Fin
11
EJERCICIOS
Diagrama de flujo
Pseudocódigo
Prueba de escritorio
12
9. En una librería se venden artículos con lassiguientes condiciones:
a. Sí el cliente es de tipo 1 se le descuenta 30%
b. Sí el cliente es de tipo 2 se le descuenta 20%
c. Sí el cliente es de tipo 3 se le descuenta 10%
10. Calcular el salario neto de un trabajador que trabaja 8 hrs al día y 24 días al
mes. También se le pagará un mes de vacaciones que corresponde al
8.33% de su salario y se le realizará una deducción del 6.25%
correspondiente al seguro social (INSS).
12. Una empresa importadora desea determinar cuántos dólares puede adquirir
con equis cantidad de dinero nicaragüense.
13. Una empresa que contrata personal requiere determinar la edad de las
personas que solicitan trabajo, pero cuando se les realiza la entrevista sólo
se les pregunta el año en que nacieron.
15. Pinturas “La brocha gorda” requiere determinar cuánto cobrar por trabajos de
pintura. Considere que se cobra por m2. Realice un algoritmo que permita
generar un presupuesto para cada cliente.
16. Hacer un algoritmo que lea los nombres y edades de dos personas e imprima
cuál de ellas tiene más edad.
13