Выберите своего любимого известного ученого-компьютерщика или пионера информатики, который родился в 1942 году или ранее (1943 год ознаменовал начало создания «первого» компьютера ). У них должна быть страница Википедии или другой сайт, на котором указан год их рождения и рассказывается, как их достижения связаны с информатикой. Вы можете выбрать то же самое, что и кто-то другой, но рекомендуется выбирать кого-то нового
Возьмите имя, которым они обычно известны. Скорее всего, это будут их имя и фамилия, но они могут включать сокращения или отчества, если это более распространено. Например, для Тони Хоара оба Tony Hoare
и C. A. R. Hoare
были бы приемлемы.
Все символы в имени должны быть напечатаны ASCII . Если имя содержит символы, которые не могут быть напечатаны в ASCII, хорошо, если вы выберете что-то приблизительное. например, Kurt Godel
вместо Kurt Gödel
.
Возьмите набор уникальных символов в имени (например C. ARHoare
) и сдвиньте их по шкале ASCII для печати к году рождения вашего ученого, перемещаясь по кругу из ~
космоса. (В основном добавьте год рождения по модулю 95.) Это даст вам (скорее всего) новый набор печатных символов ASCII.
Например, CAR Hoare родился в 1934 году, поэтому смещение каждого символа C. ARHoare
на 1934 (34 mod 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]!
на стандартный вывод или ближайшую альтернативу, где [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
хотя. Помните, что размер вашего кода умножается на количество уникальных символов в имени, поэтому более длинное имя не обязательно лучше.