Cómo crear una barra de progreso de línea de comandos en C/C++

La tarea es escribir un programa C/C++ para dibujar una barra de progreso de línea de comandos.

Enfoque: para crear una barra de progreso, la idea es usar la función system() que dará una salida coloreada. A continuación se muestra la ilustración de cómo usar la función system() .

La función del sistema acepta los siguientes parámetros para colorear la pantalla de salida:

  1. palabra clave: color
  2. Color de fondo
  3. Color de primer plano

Códigos de colores: 

Color Codigo de color
NEGRO                    0
AZUL 1
VERDE 2
CIAN 3
ROJO 4
MAGENTA 5
MARRÓN 6
GRIS CLARO 7
GRIS OSCURO 8
AZUL CLARO 9
VERDE CLARO 10
CIAN CLARO 11
LUZ ROJA 12
MAGENTA CLARO 13
AMARILLO 14
BLANCO 15
VERDE BRILLANTE A
CIAN BRILLANTE B
ROJO BRILLANTE C
MAGENTA BRILLANTE D
AMARILLO BRILLANTE mi
BLANCO F

Sintaxis:         

sistema («color 9F»); 
El código anterior dará una salida de color blanco con un color azul brillante en el fondo. 

A continuación se muestra el programa para dibujar la barra de progreso en la línea de comando en C/C++: 

C

// C program to create loading bar
#include <stdio.h>
#include <windows.h>
  
// Function to creating loading bar
void loadingBar()
{
    // 0 - black background,
    // A - Green Foreground
    system("color 0A");
  
    // Initialize char for printing
    // loading bar
    char a = 177, b = 219;
  
    printf("\n\n\n\n");
    printf("\n\n\n\n\t\t\t\t\t"
           + "Loading...\n\n");
    printf("\t\t\t\t\t");
  
    // Print initial loading bar
    for (int i = 0; i < 26; i++)
        printf("%c", a);
  
    // Set the cursor again starting
    // point of loading bar
    printf("\r");
    printf("\t\t\t\t\t");
  
    // Print loading bar progress
    for (int i = 0; i < 26; i++) {
        printf("%c", b);
  
        // Sleep for 1 second
        Sleep(1000);
    }
}
  
// Driver Code
int main()
{
    // Function Call
    loadingBar();
    return 0;
}

C++

// C++ program to create loading bar
#include <iostream>
#include <windows.h>
using namespace std;
  
// Function to creating loading bar
void loadingBar()
{
    // 0 - black background,
    // A - Green Foreground
    system("color 0A");
  
    // Initialize char for printing
    // loading bar
    char a = 177, b = 219;
  
    printf("\n\n\n\n");
    printf("\n\n\n\n\t\t\t\t\t"
           + "Loading...\n\n");
    printf("\t\t\t\t\t");
  
    // Print initial loading bar
    for (int i = 0; i < 26; i++)
        printf("%c", a);
  
    // Set the cursor again starting
    // point of loading bar
    printf("\r");
    printf("\t\t\t\t\t");
  
    // Print loading bar progress
    for (int i = 0; i < 26; i++) {
        printf("%c", b);
  
        // Sleep for 1 second
        Sleep(1000);
    }
}
  
// Driver Code
int main()
{
    // Function Call
    loadingBar();
    return 0;
}

Salida:
A continuación se muestra la salida del programa anterior:

Publicación traducida automáticamente

Artículo escrito por helloajaysingh1 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 *