А теперь рисуем ромб, используя математические формулы
/* А теперь рисуем ромб, используя математические формулы. */
#include
void draw(int nspaces, int nstars, char symbol){ int i;
for(i=0; i < nspaces; i++) putchar(' '); for(i=0; i < nstars; i++) putchar(symbol); putchar('\n'); }
void main(){ int LINES = 21; int MIDDLELINE = LINES/2 + 1; /* середина ромба */ int nline;
for(nline=0; nline < MIDDLELINE; nline++) draw(MIDDLELINE - nline -1, nline*2+1, 'A');
/* У следующего цикла for() нет инициализации начального значения индекса. Начальное nline наследуется из предыдущего цикла, таким, каким оно осталось после его окончания, то есть равным MIDDLELINE. */
for( ; nline < LINES; nline++) draw(nline - MIDDLELINE + 1, (LINES - 1 - nline) * 2 + 1, 'V'); }