Виберіть свого улюбленого відомого вченого-комп’ютера чи піонера інформатики, який народився у 1942 році чи раніше (оскільки 1943 рік означає початок створення «першого» комп’ютера ). У них повинна бути сторінка Вікіпедії або інший веб-сайт, в якому перераховано рік їх народження та розповідається про те, як їх досягнення стосуються інформатики. Ви можете вибрати те саме, що і хтось інший, але рекомендується вибрати когось нового.
Візьміть ім’я, яке вони широко знають. Швидше за все, це буде їх ім'я та прізвище, але вони можуть містити абревіатури та прізвища, якщо це є більш поширеним. Наприклад, для Тоні Хоара і те, Tony Hoare
і інше C. A. R. Hoare
було б прийнятним.
Усі символи в імені повинні бути надруковані ASCII . Якщо ім'я містить символи, які не можна друкувати ASCII, це добре, якщо ви виберете щось приблизне. наприклад Kurt Godel
замість Kurt Gödel
.
Візьміть набір унікальних символів в імені (наприклад C. ARHoare
) і змістіть їх вгору за друкованою шкалою ASCII до року народження вашого вченого, перекидаючись з ~
космосу. (В основному додайте рік народження по модулю 95.) Це дасть вам (швидше за все) новий набір символів для друку ASCII.
Наприклад, CAR CAR Hoare народився в 1934 році, тому зміна кожного персонажа C. ARHoare
до 1934 року (34 мод 95) символів дає ePBctj2$5(
.
Цей фрагмент стека зробить для вас всі зміни:
function go() {var name = document.getElementById("name").value;var year = parseInt(document.getElementById("year").value);var unique = {};for (var i = 0; i < name.length; i++) { unique[name.charAt(i)] = true; } var result = ''; for (var char in unique) { result += String.fromCharCode((char.charCodeAt(0) - 32 + year) % 95 + 32); } document.getElementById("result").value = result; }
Name: <input type="text" id="name" value="C. A. R. Hoare"><br>
Birth Year: <input type="text" id="year" value="1934"><br>
<button type="button" onclick="go()">Ok</button><br>
Result: <input type="text" id="result" readonly>
Виклик
Використовуючи цей набір і лише цей набір (без вкладок, жодних рядків) зміщених символів для друку ASCII, напишіть програму, яка друкує Hello, [name]!
до stdout або найближчої альтернативи, де [name]
це те саме ім’я, яке ви вибрали вище та зміщене для отримання символів програми. Ви можете використовувати кілька символів із набору або взагалі не використовувати їх. Наприклад, теоретична програма PetBee($25
друкує Hello, C. A. R. Hoare!
.
Оцінка балів
Ваш бал - це розмір вашого коду в байтах, кратному кількості унікальних символів у вибраному вами імені. Виграє найменша біль.
Rear Admiral Grace Murray Hopper, United States Navy, (Retired), Doctor of Philosophy
. Народився 1906 р. Це було б гаразд?
Rear Admiral Grace Murray Hopper
що. Пам'ятайте, що ваш розмір коду множиться на кількість унікальних символів у імені, тому довше ім’я не обов’язково краще.