|
6671 / 2263 / 346
Регистрация: 10.12.2013
Сообщений: 7,826
|
||||||
Perl6 . Для самых маленьких27.01.2019, 04:08. Показов 2348. Ответов 5
Метки нет (Все метки)
Увидел случайно в блоге учительницы математики
ЛЕГЕНДА О ШАХМАТНОЙ ДОСКЕ Шахматы - одна из самых древних игр. Она существует уже многие века, и неудивительно, что с нею связаны различные предания, правдивость которых, за давностью времени, невозможно проверить. Одну из подобных легенд я и хочу рассказать. Чтобы понять её, не нужно вовсе уметь играть в шахматы: достаточно знать, что игра происходит на доске, разграфлённой на 64 клетки (попеременно чёрные и белые). 1) Шахматная игра была придумана в Индии, и когда индусский царь Шерам познакомился с нею, он был восхищён её остроумием и разнообразием возможных в ней положений. Узнав, что она изобретена одним из его подданных, царь приказал его позвать, чтобы лично наградить за удачную выдумку. Изобретатель, его звали Сета, явился к трону повелителя. Это был скромно одетый учёный, получавший средства к жизни от своих учеников. — Я желаю достойно вознаградить тебя, Сета, за прекрасную игру, которую ты придумал, - сказал царь. Мудрец поклонился. — Я достаточно богат, чтобы исполнить самое смелое твоё пожелание, - продолжал царь. — Назови награду, которая тебя удовлетворит, и ты получишь её. Сета молчал. — Не робей, - одобрил его царь. Выскажи своё желание. Я не пожалею ничего, чтобы исполнить его. — Велика доброта твоя, повелитель. Но дай срок обдумать ответ. Завтра, по зрелому размышлению, я сообщу тебе мою просьбу. Когда на другой день Сета снова явился к ступеням трона, он удивил царя беспримерной скромностью своей просьбы. — Повелитель, - сказал Сета, - прикажи выдать мне за первую клетку шахматной доски одно пшеничное зерно. — Простое пшеничное зерно? - изумился царь. — Да, повелитель. За вторую клетку прикажи выдать 2 зерна, за третью 4, за четвёртую - 8, за пятую - 16, за шестую - 32 … — Довольно, - с раздражением прервал его царь. — Ты получишь свои зёрна за все 64 клетки доски, согласно твоему желанию: за каждую вдвое больше предыдущей. Но знай, что просьба твоя недостойна моей щедрости. Прося такую ничтожную награду, ты непочтительно пренебрегаешь моею милостью. Поистине, как учитель, ты мог бы показать лучший пример уважения к доброте своего государя. Ступай. Слуги мои вынесут тебе твой мешок с пшеницей. Сета улыбнулся, покинул залу и стал дожидаться у ворот дворца. 2) За обедом царь вспомнил об изобретателе шахмат и послал узнать, унёс ли уже безрассудный Сета свою жалкую награду. — Повелитель, - был ответ, - приказание твоё исполняется. Придворные математики исчисляют число следуемых зёрен. Царь нахмурился. Он не привык, чтобы повеления его исполнялись так медлительно. Вечером, отходя ко сну, царь ещё раз осведомился, давно ли Сета со своим мешком пшеницы покинул ограду дворца. — Повелитель, - ответили ему, - математики твои трудятся без устали и надеются ещё до рассвета закончить подсчёт. — Почему медлят с этим делом? - гневно воскликнул царь. — Завтра, прежде чем я проснусь, всё до последнего зерна должно быть выдано Сете. Я дважды не приказываю. Утром царю доложили, что старшина придворных математиков просит выслушать важное донесение. Царь приказал ввести его. — Прежде чем скажешь о твоём деле, - объявил Шерам, - я желаю услышать, выдана ли, наконец, Сете та ничтожная награда, которую он себе назначил. — Ради этого я и осмелился явиться перед тобой в столь ранний час, - ответил старик. — Мы добросовестно исчислили всё количество зёрен, которое желает получить Сета. Число это так велико ... — Как бы велико оно не было, - надменно перебил царь, житницы мои не оскудеют. Награда обещана и должна быть выдана ... — Не в твоей власти, повелитель, исполнять подобные желания. Во всех амбарах твоих нет такого числа зёрен, какое потребовал Сета. Нет его и в житницах всего государства. Не найдётся такого числа зёрен и на всём пространстве Земли. И если желаешь непременно выдать обещанную награду, то прикажи превратить земные царства в пахотные поля, прикажи осушить моря и океаны, прикажите растопить льды и снега, покрывающие далёкие северные пустыни. Пусть всё пространство их сплошь будет засеяно пшеницей. И всё то, что родиться на этих полях, прикажи отдать Сете. Тогда он получит свою награду. С изумлением внимал царь словам старца. — Назови же мне это чудовищное число, - сказал он в раздумье. — 18 квинтильонов 446 квадрильонов 744 триллиона 73 биллиона 709 миллионов 551 тысяча 615, о повелитель! Итак, дети, Raku Perl6, программировать ничего не надо, как слышите, так и пишете:
1.844674e+19
1
|
||||||
| 27.01.2019, 04:08 | |
|
Ответы с готовыми решениями:
5
Perl6. Для интересующихся perl6 Perl6. Книги |
|
Супер-модератор
|
|||||||||||
| 27.01.2019, 09:11 | |||||||||||
|
Ну, Perl дает не самое точное решение...
Хаскелл вычислит с точностью до зернышка:
А в Вашем решении напечатано только к-во зерен на 64-й клетке. Да и то неточно...
1
|
|||||||||||
|
6671 / 2263 / 346
Регистрация: 10.12.2013
Сообщений: 7,826
|
|
| 27.01.2019, 12:28 [ТС] | |
|
почему ?
берём 1-й рисунок, там нарисовано 4 клетки с [1,2,4,8] зёрнами подставляем 4 клетки в формулу: (1,2,4,8,16,32 ... *)[^4] .sum .say, получаем 15 с хорошей степенью точности
0
|
|
|
6671 / 2263 / 346
Регистрация: 10.12.2013
Сообщений: 7,826
|
|||||||||||
| 27.01.2019, 14:05 [ТС] | |||||||||||
|
Не, это просто вывод по формату "%е" так выглядит, я его использовал, чтоб на 2-ю картинку было похоже.
Мой основной посыл, я вижу, остался не понят. А заключался он в том, что решение на Perl6 синтаксически совпадает с литературным текстом. текст: за первую клетку одно зерно, за вторую 2 зерна, за третью 4, за четвёртую - 8, за пятую - 16, за шестую - 32 ...Perl6: 1,2,4,8,16,32 ... и чтобы оформить ленивый список добавляем бесконечность после многоточия 1,2,4,8,16,32 ... ∞текст: Ты получишь свои зёрна за все 64 клеткиPerl6: [^64] 64 в клетке ![]() соединяем всё вместе, добавляя вызов суммы и вывода результата Perl6: (1,2,4,8,16,32 ... ∞)[^64] .sum .sayOutput: 18446744073709551615 То есть, никаких возведений в числа 2 степень, а просто интерпретация текста есть же отличие от
можно и так:
2
|
|||||||||||
|
Супер-модератор
|
|
| 27.01.2019, 14:11 | |
|
Кстати, да - это я увеличил результат вдвое.
0
|
|
| 27.01.2019, 14:11 | |
|
Помогаю со студенческими работами здесь
6
Что там с Perl6 Perl6. Июль 2017 релиз Выпущена официальная BETA-версия языка Perl6 Perl6 - FOSDEM-2015 Февраль Брюссель. НЕУЖЕЛИ ?!
Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |
|
Новые блоги и статьи
|
||||
|
Учёным и волонтёрам проекта «Einstein@home» удалось обнаружить четыре гамма-лучевых пульсара в джете Млечного Пути
Programma_Boinc 01.01.2026
Учёным и волонтёрам проекта «Einstein@home» удалось обнаружить четыре гамма-лучевых пульсара в джете Млечного Пути
Сочетание глобально распределённой вычислительной мощности и инновационных. . .
|
Советы по крайней бережливости. Внимание, это ОЧЕНЬ длинный пост.
Programma_Boinc 28.12.2025
Советы по крайней бережливости. Внимание, это ОЧЕНЬ длинный пост.
Налог на собак: https:/ / **********/ gallery/ V06K53e
Финансовый отчет в Excel: https:/ / **********/ gallery/ bKBkQFf
Пост отсюда. . .
|
Кто-нибудь знает, где можно бесплатно получить настольный компьютер или ноутбук? США.
Programma_Boinc 26.12.2025
Нашел на реддите интересную статью под названием Anyone know where to get a free Desktop or Laptop?
Ниже её машинный перевод.
После долгих разбирательств я наконец-то вернула себе. . .
|
Thinkpad X220 Tablet — это лучший бюджетный ноутбук для учёбы, точка.
Programma_Boinc 23.12.2025
Рецензия / Мнение/ Перевод
Нашел на реддите интересную статью под названием The Thinkpad X220 Tablet is the best budget school laptop period . Ниже её машинный перевод.
Thinkpad X220 Tablet —. . .
|
PhpStorm 2025.3: WSL Terminal всегда стартует в ~
and_y87 14.12.2025
PhpStorm 2025. 3: WSL Terminal всегда стартует в ~ (home), игнорируя директорию проекта
Симптом:
После обновления до PhpStorm 2025. 3 встроенный терминал WSL открывается в домашней директории. . .
|
|
Как объединить две одинаковые БД Access с разными данными
VikBal 11.12.2025
Помогите пожалуйста !! Как объединить 2 одинаковые БД Access с разными данными.
|
Новый ноутбук
volvo 07.12.2025
Всем привет.
По скидке в "черную пятницу" взял себе новый ноутбук Lenovo ThinkBook 16 G7 на Амазоне:
Ryzen 5 7533HS
64 Gb DDR5
1Tb NVMe
16" Full HD Display
Win11 Pro
|
Музыка, написанная Искусственным Интеллектом
volvo 04.12.2025
Всем привет. Некоторое время назад меня заинтересовало, что уже умеет ИИ в плане написания музыки для песен, и, собственно, исполнения этих самых песен. Стихов у нас много, уже вышли 4 книги, еще 3. . .
|
От async/await к виртуальным потокам в Python
IndentationError 23.11.2025
Армин Ронахер поставил под сомнение async/ await. Создатель Flask заявляет: цветные функции - провал, виртуальные потоки - решение. Не threading-динозавры, а новое поколение лёгких потоков. Откат?. . .
|
Поиск "дружественных имён" СОМ портов
Argus19 22.11.2025
Поиск "дружественных имён" СОМ портов
На странице:
https:/ / norseev. ru/ 2018/ 01/ 04/ comportlist_windows/
нашёл схожую тему. Там приведён код на С++, который показывает только имена СОМ портов, типа,. . .
|