#include <stdio.h> #include <stdlib.h> void stampaAlbero(void); int main() { stampaAlbero(); fflush(stdin); getchar(); exit(0); } // Prima di leggere questa soluzione pensaci bene! void stampaAlbero(void) { int i,j,k; // ci sono 10 righe // nella prima riga ho 9 caratteri vuoti " " e una "*" e poi vado a capo // nella seconda riga ho 8 caratteri vuoti " " e tre "*" e poi vado a capo // nella terza riga ho 7 caratteri vuoti " " e cinque "*" e poi vado a capo // .... // nella i-esima riga ho 10-i caratteri vuoti " " e 2i-1 "*" e poi vado a capo for (i=1; i<=10; i++) { // prima inserisco i caratteri vuoti (che sono 10-i) for (j=1; j<= (10-i);j++) printf(" "); // poi inserisco le "*" (che sono 2i-1) for (k=1; k <= (2*i-1);k++) printf("*"); // non devo inserire piu' nulla e vado a capo! printf("\n"); } }