/* SE MUESTRAS UNA GRAFICA DE BARRAS A COLORES */
#include <stdio.h>
#include <stdlib.h>
/*
La sintáxis sería: "\033[x;xx;xxm" dónde cada 'x' representa un dígito.
El primer dígito especifica el estilo:
0 -> Normal
1 -> Claro (el color se diluye, permite hacer dos tonos de cada color: azul/azulclaro, rojo/rojoclaro...)
4 -> Subrayado
5 -> Parpadeante
7 -> Inverso
8 -> Oculto (Pensado para pedir contraseñas al usuario)
códigos para el texto, para el fondo serían los mismos sumando 10 (fondo verde: 42, fondo marrón: 43 ...).
Lista de colores de texto utilizando combinaciones con el atributo claro:
30 -> Negro
1;30 -> Gris oscuro
31 -> Rojo
1;31 -> Rojo claro
32 -> Verde
1;32 -> Verde claro
33 -> Marrón
1;33 -> Marrón claro
34 -> Azul
1;34 -> Azul claro
35 -> Púrpura
1;35 -> Púrpura claro
36 -> Cyan
1;36 -> Cyan claro
37 -> Gris claro
1;37 -> Blanco
const char *const normal = "\033[x;xx;xxm" --- x=atributo xx=frente o fondo(frente+10)
*/
int main( )
{
int NBarras=0, k=0;
int Largo1, Largo2, Largo3, Largo4, Largo5;
const char *const Normal = "\033[0m";
const char *const Color1 = "\033[0;30;41m";
const char *const Color2 = "\033[0;47;31m";
const char *const Color3 = "\033[0;1;47;30m";
const char *const Color4 = "\033[0;40;37m";
const char *const Color5 = "\033[0;47;35m";
Largo1=0;Largo2=0;Largo3=0;Largo4=0;Largo5=0;
printf("Cuantas barras deseas? (max 5): ");
scanf("%d", &NBarras);
printf("Introduce el largo de cada barra:\n");
scanf("%d,%d,%d,%d,%d", &Largo1, &Largo2, &Largo3, &Largo4, &Largo5);
system("clear");
while(Largo1) { printf("%s*%s", Color1, Normal); Largo1--; }
printf("\n");
while(Largo2) { printf("%s*%s", Color2, Normal); Largo2--; }
printf("\n");
while(Largo3) { printf("%s*%s", Color3, Normal); Largo3--; }
printf("\n");
while(Largo4) { printf("%s*%s", Color4, Normal); Largo4--; }
printf("\n");
for(k=1; k<=Largo5; k++) { printf("%s*%s", Color5, Normal); }
printf("\n");
}