Соревнование
Напишите программу или функцию, которая печатает звезды! По стандартному вводу программа получит два параметра: размер звезды и количество точек звезды. Звезда может быть любого размера от 0 до 10 и иметь 3, 4 или 5 баллов. Входные параметры разделяются запятой, например: 5,3
означает размер 5 звездочек с 3 точками. Звезды составлены звездочками*
Учтите, что программа будет получать только действительные данные.
Отпечатки должны быть правильно расположены, чтобы мы могли видеть красивые звезды на выходе!
Параметры объяснения
Точки
Количество рук, считая от центральной звездочки.
3 очка звезды :
*
*
*
* *
* *
Они состоят из вертикальных плеч и двух диагональных плеч. Разделение между диагональными рукавами2*size-1
4 очка звезды
* *
* *
*
* *
* *
Они имеют форму X и состоят из двух диагональных линий. Разделение между линиями2*(size-1)+1
5 баллов звезды
*
*
* * * * *
* *
* *
Они состоят из вертикальной линии и горизонтальной линии. Каждая звездочка на горизонтальной линии разделена одним пробелом. Также они имеют две диагональные линии, с разделением между собой2*(size-2)+1
Размер
Размер - это число звездочек, каждое плечо звезды отсчитывает от центральной звездочки (включительно).
Звезды размера 1 состоят из одной звездочки
*
Размер 2 звезды примеры
3 балла
*
*
* *
4 очка звезды
* *
*
* *
5 баллов звезды
*
* * *
* *
У вас есть примеры размера 3 звезды в объяснении параметра Точки.
Критерии победы
Самый короткий код выигрывает. Код должен быть проверен со следующими входными параметрами:3,2
3,3
4,2
4,3
5,2
5,3
бонус
-25% символов учитывается при создании размера 6, указанного с критериями, описанными выше (6 стрелок, а размер - это число звездочек, считая от центральной звездочки). Это может быть любая форма, которую вы хотите, при этом соблюдая спецификации Пример размера 6 звезд с размером 3:
*
*
* * * * *
* * *
* * *
Звезды 6 баллов должны быть проверены со следующими входами 6,2
6,3
.
Ответы:
Mathematica
80 7667 символовНекоторые задаются вопросом, является ли это искусством ASCII, но я не мог удержаться.
Использование (установка размера шрифта на 24, чтобы звезды выглядели большими.)
Вывод для следующих случаев:
{{3, 2}, {3, 3}, {4, 2}, {4, 3},
{5, 2}, {5, 3}, {6, 2}, {6, 3},
{7, 4}, {8, 3}, {9, 2}, {12, 4}}
Как это устроено
(а) Первая звезда находится в начале координатного пространства. Давайте покажем это.
(b) После этого мы отобразим точку в {1,0}.
(с) Тогда 5 баллов одновременно. Мы применили чистую функцию к каждой паре координат, следующих за ней.
(d) Используйте Cos и Sin для определения координат
(e) Координаты работают только на единичном круге; 6 - количество световых лучей.
(f) Нарисуйте радиусы от 0 до 4 единиц.
источник
Ruby, ASCII,
193счет 142 (189 символов - бонус 25%)Протестируйте это онлайн
Я думаю, что это дает право на бонус в 6 лучей.
источник
Математика ,
6564Мой взгляд на метод Дэвида:
Использование:
Ошибки возникают из-за использования,
=
а не:=
, и это не правильный способ сделать определение, но это работает здесь.Если бы было разрешено использовать точки вместо звездочек, это можно было бы написать (52 символа):
источник
источник