UTIL_COLORES_1.c



/* 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");
}