#include <stdio.h>
void StampaSequenza(int lung, char ch)
{
int i;
for(i = 1; i <= lung; i++)
printf("%c", ch);
}
void StampaQuadrato(int altezza, int offset, char ch)
{
int i;
for(i = 1; i <= altezza; i++) {
StampaSequenza(offset, ' ');
StampaSequenza(altezza, ch);
printf("\n");
}
}
void StampaTriangolo(int altezza, int offset, char ch)
{
int i;
for(i = 1; i <= altezza; i++) {
StampaSequenza(offset+altezza-i, ' ');
StampaSequenza(2*i-1, ch);
printf("\n");
}
}
void StampaSaluto(void)
{
printf("Ho finito!\n");
}
int main(void)
{
char ch;
int dim, offset;
char chfig;
do {
printf("\nIMMETTI UN CARATTERE A SCELTA FRA I SEGUENTI\n");
printf(" q: stampa un quadrato\n");
printf(" t: stampa un triangolo\n");
printf(" f: per terminare il programma:\n");
scanf("%c", &ch);
getchar();
if (ch == 'q' || ch == 't') {
printf("dimensione? ");
scanf("%d", &dim); getchar();
printf("offset? ");
scanf("%d", &offset); getchar();
printf("carattere di riempimento? ");
scanf("%c", &chfig); getchar();
printf("\n");
switch(ch) {
case 'q' : StampaQuadrato(dim, offset, chfig); break;
case 't' : StampaTriangolo(dim, offset, chfig); break;
}
}
} while (ch != 'f');
StampaSaluto();
return 0;
}