Ahora he traido para ustedes un programita programado en Borland C++, en cual hace la impresión de un triangulo de asteriscos de cuatro formas diferentes unicamente usando una sentencia de impresion. Para ello es necesario es usar ciclos aninados, yo use el for, pero pueden usarse los otros dos existentes. Este programa nos lo puso el maestro de programación y es muy bueno para comprender ciclos anidados. A continuación el código:
/* ºººººººººººººººººººººººººººººººººººººººººº
º 1 º 2 º 3 º 4 º
ºººººººººººººººººººººººººººººººººººººººººº
º * º ***** º ***** º * º
º ** º **** º **** º ** º
º *** º *** º *** º *** º
º **** º ** º ** º **** º
º ***** º * º * º ***** º
ºººººººººººººººººººººººººººººººººººººººººº
****************************************************
* TITULO: Triangulos *
* AUTOR: Luis Emigdio Tirado Martinez *
* FECHA: 31/Marzo/2008 *
* DESCRIPCIÓN: El programa realiza la impresion *
* de un triangulo con asteriscos de *
* cuatro formas distintas como se *
* muestra en la parte de arriba. *
* Programa especial para la compren- *
* cion de ciclos aninados. *
****************************************************
*/
#include <iostream.h>
#include <conio.h>
void uno();
void dos();
void tres();
void cuatro();
int i,j,a,MAX;
void main(void)
{
int op;
char otro,misma;
inicio:
clrscr();
cout<<”Longitud de asteriscos: “;
cin>>MAX;
inicio3:
cout<<”Numero de Triangulo a Dibujar: “;
cin>>op;
switch(op)
{
case 1:
uno();
break;
case 2:
dos();
break;
case 3:
tres();
break;
case 4:
cuatro();
break;
default:
goto inicio3;
}
inicio2:
cout<<”\n\nDeceas la impresión de otro triangulo (S/N): “;
cin>>otro;
if (otro==’s’ || otro==’S')
{
cout<<”Con la misma longitud? (S/N): “;
cin>>misma;
if (misma==’s’ || misma==’S')
{
goto inicio3;
}
else
{
if (misma==’n’ || misma==’N')
{
goto inicio;
}
else
{
goto inicio2;
}
}
}
else
{
if (otro==’n’ || otro==’N')
{
goto fin;
}
else
{
goto inicio2;
}
}
fin:
cout<<”\n\n!!!GRACIAS POR USAR ESTE PROGRAMA¡¡¡”;
}
void uno()
{
cout<<”PRESIONA UNA TECLA PARA DIBUJAR LA PRIMER FIGURA…\n\n”;
getch();
for (i=1;i<=MAX;i++)
{
for (j=1;j<=i;j++)
{
cout<<”*”;
}
cout<<”\n”;
}
}
void dos()
{
cout<<”PRESIONA UNA TECLA PARA DIBUJAR LA SEGUNDA FIGURA…\n\n”;
getch();
for (i=MAX;i>=1;i–)
{
for (j=i;j>=1;j–)
{
cout<<”*”;
}
cout<<”\n”;
}
}
void tres()
{
cout<<”PRESIONA UNA TECLA PARA DIBUJAR LA TERCER FIGURA…\n\n”;
getch();
for (i=MAX;i>=1;i–)
{
for( j=i;j>=1;j–)
{
cout<<”*”;
}
cout<<”\n”;
for (a=MAX;a>=i;a–)
{
cout<<” “;
}
}
cout<<”\n”;
}
void cuatro()
{
cout<<”PRESIONA UNA TECLA PARA DIBUJAR LA CUARTA FIGURA…\n\n”;
getch();
for (i=MAX;i>=1;i–)
{
for (a=1;a<=i-1;a++)
{
cout<<” “;
}
for (j=i;j<=MAX;j++)
{
cout<<”*”;
}
cout<<”\n”;
}
}
Los comentaristas