Вступ:
Оскільки це майже Хеллоуїн, я просто думав про деякі випадкові виклики на тему Хеллоуїна. Зрештою я читав сторінку вікіпедії Франкенштейна і натрапив на наступний текст:
Істота
Частиною відмови Франкенштейна від його творіння є той факт, що він не дає йому імені, що викликає відсутність ідентичності. Натомість до неї відносять такі слова, як "нещастя", "чудовисько", "істота", "демон", "диявол", "бог" і "він". Коли Франкенштейн розмовляє зі створінням у главі 10, він звертається до нього як до «мерзенної комахи», «огидного монстра», «бойовика», «жалюгідного диявола» та «огидного диявола».
Виклик:
З урахуванням двох цілих чисел (року та глави), виведіть рядок на основі таких правил:
- Якщо рік менше 1818: виведіть порожній рядок †
- Якщо рік точно 1818, а глава знаходиться нижче 10: виведіть випадковий рядок зі списку
["wretch", "monster", "creature", "demon", "devil", "fiend", "it"]
- Якщо рік точно 1818, а глава 10 або вище: виведіть випадковий рядок зі списку
["vile insect", "abhorred monster", "fiend", "wretched devil", "abhorred devil"]
- Чи рік 1818 (і таким чином книга була видана), повернення
"Frankenstein's Monster"
.
Правила виклику:
- Ви можете вибрати, чи слід виводити в малі, великі літери або в комбінації.
- Рік завжди буде в діапазоні
1500-2017
- Розділ завжди буде в діапазоні
1-24
(якщо я правильно гуглю, книга має 24 глави) - † Замість висновку порожнього рядка для варіанта 1, ви також дозволяється вихід
null
,undefined
,false
,0
, або будь-яке інше значення на свій розсуд НЕ є частиною інших трьох варіантів (будь ласка , вкажіть , що ви використовували в своїй відповіді). - Вихід може не містити жодних провідних чи кінцевих пробілів / вкладок, а також будь-яких провідних нових рядків. Він може містити один необов'язковий проміжний новий рядок.
Загальні правила:
- Це код-гольф , тому найкоротша відповідь у байтах виграє.
Не дозволяйте мовам з кодовим гольфом відштовхувати вас від публікації відповідей з не кодовими гольф-мовами. Спробуйте придумати якомога коротшу відповідь на "будь-яку" мову програмування. - Для вашої відповіді застосовуються стандартні правила , тому вам дозволяється використовувати STDIN / STDOUT, функції / метод з відповідними параметрами, повноцінні програми. Твій дзвінок.
- Лазівки за замовчуванням заборонені (особливо "Підроблені випадкові числа" ).
- Якщо можливо, додайте посилання з тестом для вашого коду.
- Також, будь ласка, додайте пояснення, якщо це необхідно.
Тестові приклади:
year,chapter possible outputs:
1700,1 ""; null; undefined; false; 0; etc.
1700,12 ""; null; undefined; false; 0; etc.
1817,10 ""; null; undefined; false; 0; etc.
1818,1 "wretch"; "monster"; "creature"; "demon"; "devil"; "fiend"; "it"
1818,9 "wretch"; "monster"; "creature"; "demon"; "devil"; "fiend"; "it"
1818,10 "vile insect"; "abhorred monster"; "fiend"; "wretched devil"; "abhorred devil"
1818,11 "vile insect"; "abhorred monster"; "fiend"; "wretched devil"; "abhorred devil"
1818,18 "vile insect"; "abhorred monster"; "fiend"; "wretched devil"; "abhorred devil"
1819,1 "Frankenstein's Monster"; "frankenstein's monster"; "FRANKENSTEIN'S MONSTER"
1819,18 "Frankenstein's Monster"; "frankenstein's monster"; "FRANKENSTEIN'S MONSTER"
2017,24 "Frankenstein's Monster"; "frankenstein's monster"; "FRANKENSTEIN'S MONSTER"