Backup proyecto Joyfe - Borland

This commit is contained in:
2025-06-16 22:54:10 +02:00
commit d61829a1a7
130 changed files with 11881 additions and 0 deletions

177
CPP/PROG6.CPP Normal file
View File

@ -0,0 +1,177 @@
// Prog6
//
// Programadores:
//
// Juan L<>pez Fern<72>ndez
// Mois<69>s Virumbrales Cuenca
// DAI 1<>A
//
// Imprime una pir<69>mide de asteriscos seg<65>n las opciones tecleadas
// por el usuario.
//
// Descripci<63>n de las variables:
// num: N<>mero de asteriscos de la base.
// altura: N<>mero de filas de la pir<69>mide.
// posx, posy: Posici<63>n del cursor para imprimir asteriscos.
// conposx: Contador que lleva el n<>mero de asteriscos imprimidos por fila.
// conposy: Contador que lleva el n<>mero de filas imprimidas.
// color, color2, colorg: Guarda colores introducidos por usuario.
// conveces: Cuenta las veces que se introduce un color
// nveces: Marca las veces que se realiza el bucle dependiendo si es
// Monocolor o Bicolor.
// tipo: Tipo de pir<69>mide (normal o invertida)
// pausa: Para hacer una pausa al final del programa.
// ncolores: Guarda si es Monocolor o Bicolor.
// tipocolor: Forma de colorearlo (por filas o asteriscos).
#include <stdio.h>
#include <conio.h>
int num;
int altura;
int posx,posy;
int conposx,conposy;
int color,color2,colorg;
int conveces,nveces;
char tipo,pausa,ncolores,tipocolor;
void main()
{
do
{
clrscr();
gotoxy (17,13);
printf ("Introduce el N<> de asteriscos de la base: ");
fflush (stdin);
scanf ("%d",&num);
}
while (num %2!=0 || num<1 || num>50);
do
{
clrscr();
gotoxy(20,12);
printf (" Tipo de pir<69>mide (Normal o Invertida): ");
fflush (stdin);
scanf ("%c",&tipo);
}
while (tipo!='n' && tipo!='i');
do
{
clrscr();
gotoxy (20,12);
printf (" Monocolor o Bicolor: ");
fflush (stdin);
scanf ("%c",&ncolores);
}
while (ncolores!='m' && ncolores!='b');
if (ncolores=='m')
{
nveces=1;
}
else
{
nveces=2;
do
{
clrscr();
gotoxy(20,12);
printf (" Colorear por Filas o por Asteriscos: ");
fflush(stdin);
scanf ("%c",&tipocolor);
}
while (tipocolor!='f' && tipocolor!='a');
}
conveces=1;
do
{
if (nveces==2)
{
color2=color;
}
clrscr();
gotoxy (25,8); printf (" 1.- Azul");
gotoxy (25,9); printf (" 2.- Verde");
gotoxy (25,10); printf (" 3.- Cyan");
gotoxy (25,11); printf (" 4.- Rojo");
gotoxy (25,12); printf (" 5.- Morado");
gotoxy (25,13); printf (" 6.- Marr<72>n");
gotoxy (25,14); printf (" 7.- Gris claro");
gotoxy (25,15); printf (" 8.- Gris oscuro");
gotoxy (25,16); printf (" 9.- Azul claro");
gotoxy (25,17); printf ("10.- Verde claro");
gotoxy (25,18); printf ("11.- Cyan claro");
gotoxy (25,19); printf ("12.- Rojo claro");
gotoxy (25,20); printf ("13.- Morado claro");
gotoxy (25,21); printf ("14.- Amarillo");
gotoxy (25,22); printf ("15.- Blanco");
gotoxy (20,6);
printf (" Elige color %d<>: ",conveces);
fflush(stdin);
scanf ("%d",&color);
conveces++;
}
while (color<1 || color>15 || conveces<=nveces);
altura=(num/2);
posx=((80-num)/2);
if (tipo=='n')
{
posy=(25-((25-altura)/2));
}
else
{
posy=((26-(altura-1))/2);
}
clrscr();
textcolor(color);
for (conposy=1;conposy<=altura;conposy++)
{
gotoxy(posx,posy);
if (tipocolor=='f')
{
colorg=color;color=color2;color2=colorg;
textcolor(colorg);
}
for (conposx=1;conposx<=num;conposx++)
{
if (tipocolor=='a')
{
colorg=color;color=color2;color2=colorg;
textcolor (colorg);
}
cprintf ("*");
}
if (tipo=='n')
{
posy--;
}
else
{
posy++;
}
num=num-2;
posx++;
}
textcolor(7);
gotoxy(80,25);
fflush (stdin);
scanf ("%c",&pausa);
}