5) Crear un programa, donde el usuario decida si quiere el dibujo de un triángulo isosceles de "n" filas o un rombo del mismo número de filas.
#include (iostream)
using namespace std;
// Programa para ….
void main()
{
// variables locales
int num_lineas;
const char blanco = ' ' ;
const char asterisco = '*';
int opcion=0;
int lineas=0;
while(opcion!=1 && opcion!=2)
{
cout<<"Que quieres TRIANGULO (1) 0 ROMBO (2)?"<<(endl);
cin>>(opcion);
}
cout<<"Introduce numero de lineas: ";
cin>>(num_lineas);
if(opcion==1)//dibuja triangulo
{
// dibujo de cada linea (bucle externo)
for (int fila=1; fila <= num_lineas; fila ++)
{
//dibuja espacios en blanco (1er bucle interno)
for (int espacios = num_lineas-fila; espacios >0;espacios --)
cout<<(blanco);
// dibuja asteriscos (2º bucle interno)
for (int cuenta =1; cuenta < 2 * fila; cuenta ++)
cout<<(asterisco);
cout<<(endl);
}
}
else//dibuja rombo
{
if (num_lineas % 2==0)//si numero es par
{
lineas=num_lineas/2;
// dibujo de cada linea (bucle externo)
for (int fila=1; fila <= lineas; fila ++)
{
//dibuja espacios en blanco (1er bucle interno)
for (int espacios = lineas-fila; espacios >0;espacios --)
cout<<(blanco);
// dibuja asteriscos (2º bucle interno)
for (int cuenta =1; cuenta < 2 * fila; cuenta ++)
cout<<(asterisco);
cout<<(endl);
}
// dibujo de cada linea (bucle externo)
for (int fila=lineas; fila <= lineas && fila != 0; fila --)
{
//dibuja espacios en blanco (1er bucle interno)
for (int espacios = lineas-fila; espacios >0;espacios --)
cout<<(blanco);
// dibuja asteriscos (2º bucle interno)
for (int cuenta =1; cuenta < 2 * fila; cuenta ++)
cout<<(asterisco);
cout<<(endl);
}
}
else//si es impar
{
lineas=num_lineas/2;
// dibujo de cada linea (bucle externo)parte superior
for (int fila=1; fila <= lineas +1; fila ++)
{
//dibuja espacios en blanco (1er bucle interno)
for (int espacios = lineas-(fila-1); espacios >0;espacios --)
cout<<(blanco);
// dibuja asteriscos (2º bucle interno)
for (int cuenta =1; cuenta < 2 * fila; cuenta ++)
cout<<(asterisco);
cout<<(endl);
}
// dibujo de cada linea (bucle externo)parte inferior
for (int fila=lineas; fila <= lineas && fila != 0; fila --)
{
//dibuja espacios en blanco (1er bucle interno)
for (int espacios = lineas-(fila-1); espacios >0;espacios --)
cout<<(blanco);
// dibuja asteriscos (2º bucle interno)
for (int cuenta =1; cuenta < 2 * fila; cuenta ++)
cout<<(asterisco);
cout<<(endl);
}
}
}
}
Nota: Sustituir () de iostream, y eliminar () de asterisco, blanco, endl y blanco.
Suscribirse a:
Enviar comentarios (Atom)
No hay comentarios:
Publicar un comentario