Сьогодні ми збираємося зробити шестикутник ASCII. Ви повинні написати програму або функцію, яка приймає натуральне ціле n , і виводить шестикутну сітку розміром n , складену зірочками. Наприклад, шестикутник розміром 2 виглядає так:
* *
* * *
* *
Хоча шестикутник розміром 3 виглядає так:
* * *
* * * *
* * * * *
* * * *
* * *
Ви можете використовувати будь-який із методів вводу та виводу за замовчуванням , наприклад, STDIO / STDOUT, аргументи функцій та значення повернення або читання / запис файлу.
Ви можете припустити, що введення завжди дійсне, тому якщо це не додатне ціле число, ваша програма може робити все, що завгодно. Ви дійсно однак повинні обробляти особливий випадок розміру 1 шестикутник, який буває один зірочка:
*
Простір провідних та кінцевих пробілів дозволений до тих пір, поки вихід візуально однаковий.
Приклади:
1:
*
2:
* *
* * *
* *
3:
* * *
* * * *
* * * * *
* * * *
* * *
4:
* * * *
* * * * *
* * * * * *
* * * * * * *
* * * * * *
* * * * *
* * * *
5:
* * * * *
* * * * * *
* * * * * * *
* * * * * * * *
* * * * * * * * *
* * * * * * * *
* * * * * * *
* * * * * *
* * * * *
6:
* * * * * *
* * * * * * *
* * * * * * * *
* * * * * * * * *
* * * * * * * * * *
* * * * * * * * * * *
* * * * * * * * * *
* * * * * * * * *
* * * * * * * *
* * * * * * *
* * * * * *
12:
* * * * * * * * * * * *
* * * * * * * * * * * * *
* * * * * * * * * * * * * *
* * * * * * * * * * * * * * *
* * * * * * * * * * * * * * * *
* * * * * * * * * * * * * * * * *
* * * * * * * * * * * * * * * * * *
* * * * * * * * * * * * * * * * * * *
* * * * * * * * * * * * * * * * * * * *
* * * * * * * * * * * * * * * * * * * * *
* * * * * * * * * * * * * * * * * * * * * *
* * * * * * * * * * * * * * * * * * * * * * *
* * * * * * * * * * * * * * * * * * * * * *
* * * * * * * * * * * * * * * * * * * * *
* * * * * * * * * * * * * * * * * * * *
* * * * * * * * * * * * * * * * * * *
* * * * * * * * * * * * * * * * * *
* * * * * * * * * * * * * * * * *
* * * * * * * * * * * * * * * *
* * * * * * * * * * * * * * *
* * * * * * * * * * * * * *
* * * * * * * * * * * * *
* * * * * * * * * * * *
Як завжди, це код-гольф , тому застосовуються стандартні лазівки , і вам слід спробувати написати найкоротші можливі програми, виміряні в байтах. Звичайно, деякі мови за своєю суттю коротші або довші, ніж інші, тому пам’ятайте, що мета не обов’язково мати найкоротший загальний підрахунок байтів, а перемогти подання в одній і тій же схожій мові.
Нехай переможе найкращий гольфіст!