hola! muy buenas tardes tengan todos.
necesito un codigo que imprima la siguiente figura:
*
**
***
****
*****
******
*******
esto diene que ser de largo que el usuario pida y en la coordenada de la pantalla que lo necesite, tengo toda la base del codigo con 2 ciclos de for y me imprimen la figura de diferentes maneras, se que tengo que editar el largo de la cadena de caracteres en el eje de la x, pero aun no e encontrado la manera de hacerlo, si me pudieran ayudar estaria muy agradecido, gracias
les dejo la base del codigo que llevo
#include <stdio.h>
#include <stdlib.h>
#include <conio.h>
#include <time.h>
int main()
{
textbackground(12);
textcolor(17); clrscr();
int i=0,j=0,cx1=12,cy1=12,lar=10,lar2;
char a='*';
void delay(unsigned int mseconds)
{
clock_t goal = mseconds + clock();
while (goal > clock());
}
//printf("proporciona una coordenada x\n");
//scanf("%d",&cx1);
//printf("proporciona una coordenada y\n");
//scanf("%d",&cy1);
//printf("una de largo porfavor\n");
//scanf("%d",&lar);
clrscr();
lar2=lar;
for(j=0;j<lar; j++)
for(i=0; i < lar ; i++)
{
gotoxy(cx1-j,cy1-j+i);
printf("%c",a);
gotoxy(2,23);
delay(300);
}
getch();
return 0;
}
los scanf estan en comentario para que la compilacion se agilizara
si en tus ciclos for anidados las j controlan la posición 'y' y las i las 'x'
en el for de las x que es el de las filas tines que hacer que en la comprobacion de lasi sea i<j+1 de ese modo te imprime des de un elemento asta j elementos, luego en la funcion gotoxy() cx1 son las x y cy1 son las y por lo tanto seria cx1+i, cy1+j y luego lo reseteas a la pocicion inicial con un gotoxy(cx1, cy1) y listo