Una introducción a los diagramas de flujo

¿Qué es un diagrama de flujo?  
El diagrama de flujo es una representación gráfica de un algoritmo. Los programadores a menudo lo usan como una herramienta de planificación de programas para resolver un problema. Hace uso de símbolos que están conectados entre sí para indicar el flujo de información y procesamiento. 
El proceso de dibujar un diagrama de flujo para un algoritmo se conoce como «diagrama de flujo». 

Símbolos básicos utilizados en diseños de diagramas de flujo

  1. Terminal: El símbolo ovalado indica Inicio, Detención y Detención en el flujo lógico de un programa. Una pausa/detención se usa generalmente en la lógica de un programa bajo algunas condiciones de error. Terminal es el primer y último símbolo en el diagrama de flujo. 
     

  • Entrada/Salida: Un paralelogramo denota cualquier función de tipo entrada/salida. Las instrucciones del programa que toman la entrada de los dispositivos de entrada y muestran la salida en los dispositivos de salida se indican con un paralelogramo en un diagrama de flujo. 
     

  • Procesamiento: Un cuadro representa instrucciones aritméticas. Todos los procesos aritméticos como sumas, restas, multiplicaciones y divisiones se indican mediante un símbolo de acción o proceso. 
     

  • El símbolo del rombo de decisión representa un punto de decisión . Las operaciones basadas en decisiones como sí/no pregunta o verdadero/falso se indican mediante un rombo en el diagrama de flujo. 
     

  • Conectores: siempre que el diagrama de flujo se vuelva complejo o se extienda a más de una página, es útil usar conectores para evitar confusiones. Está representado por un círculo. 
     

  • Líneas de flujo: Las líneas de flujo indican la secuencia exacta en la que se ejecutan las instrucciones. Las flechas representan la dirección del flujo de control y la relación entre los diferentes símbolos del diagrama de flujo. 

Reglas para crear diagramas de flujo:

Un diagrama de flujo es una representación gráfica de un algoritmo. Debe seguir algunas reglas al crear un diagrama de flujo
Regla 1: la declaración de apertura del diagrama de flujo debe ser la palabra clave ‘inicio’.
Regla 2: la declaración final del diagrama de flujo debe ser la palabra clave ‘fin’.
Regla 3: Todos los símbolos en el diagrama de flujo deben estar conectados con una línea de flecha.
Regla 4: El símbolo de decisión en el diagrama de flujo no se puede asociar con la línea de flecha.
 

Ventajas del diagrama de flujo:

  • Los diagramas de flujo son una mejor manera de comunicar la lógica del sistema.
  • Los diagramas de flujo actúan como una guía para el modelo durante el diseño del programa.
  • Los diagramas de flujo ayudan en el proceso de depuración.
  • Con la ayuda de diagramas de flujo, los programas se pueden analizar fácilmente.
  • Proporciona una mejor documentación.
  • Los diagramas de flujo sirven como una buena documentación adecuada.
  • Fácil de rastrear errores en el software.
  • Fácil de entender.
  • El diagrama de flujo se puede reutilizar por inconvenientes en el futuro.
  • Ayuda a proporcionar la lógica correcta.
     

Desventajas del diagrama de flujo:

  • Es difícil dibujar diagramas de flujo para programas grandes y complejos.
  • No existe un estándar para determinar la cantidad de detalle.
  • Difícil reproducir los diagramas de flujo.
  • Es muy difícil modificar el diagrama de flujo.
  • Hacer un diagrama de flujo es costoso.
  • Algún desarrollador piensa que es una pérdida de tiempo.
  • Hace que los procesos de software sean bajos.
  • Si se realizan cambios en el software, entonces se debe volver a dibujar el diagrama de flujo
     

Ejemplo: Dibuje un diagrama de flujo para ingresar dos números del usuario y muestre el mayor de dos números 
 

C

// C program to find largest of two numbers
 
#include <stdio.h>
 
int main()
{
    int num1, num2, largest;
 
    /*Input two numbers*/
    printf("Enter two numbers:\n");
    scanf("%d%d", &num1, &num2);
 
    /*check if a is greater than b*/
    if (num1 > num2)
        largest = num1;
    else
        largest = num2;
 
    /*Print the largest number*/
    printf("%d", largest);
 
    return 0;
}

C++

// C++ program to find largest of two numbers
#include <iostream>
using namespace std;
int main()
{
    int num1, num2, largest;
 
    /*Input two numbers*/
    cout << "Enter two numbers:\n";
    cin >> num1;
    cin >> num2;
 
    /*check if a is greater than b*/
    if (num1 > num2)
        largest = num1;
    else
        largest = num2;
 
    /*Print the largest number*/
    cout << largest;
 
    return 0;
}

Java

// Java program to find largest of two numbers
import java.util.Scanner;
public class largest {
    public static void main(String args[])
    {
        int num1, num2, max;
 
        /*Input two numbers*/
        Scanner sc = new Scanner(System.in);
        System.out.println("Enter two numbers:");
 
        num1 = sc.nextInt();
        num2 = sc.nextInt();
 
        /*check whether a is greater than b or not*/
        if (num1 > num2)
            max = num1;
        else
            max = num2;
 
        /*Print the largest number*/
        System.out.println(max);
    }
}

C#

// C# program to find largest of two numbers
using System;
using System.IO;
 
class GFG
{
    static public void Main ()
    {
         
        int num1, num2, max;
 
        /*Input two numbers*/
        Console.WriteLine("Enter two numbers:");
 
        num1 = Convert.ToInt32(Console.ReadLine());
        num2 = Convert.ToInt32(Console.ReadLine());
 
        /*check whether a is greater than b or not*/
        if (num1 > num2)
            max = num1;
        else
            max = num2;
 
        /*Print the largest number*/
        Console.WriteLine(max);
    }
}
 
// This code is contributed by NamrataSrivastava1

Producción

Enter two numbers:
10 30
30

Referencias: 
Fundamentos de la computadora por Pradeep K. Sinha y Priti Sinha
 

Publicación traducida automáticamente

Artículo escrito por NishuAggarwal y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *