Поиск последовательности цифр в числе π
Новые функции SequenceCases, SequencePosition и SequenceCount предлагают новые функциональные возможности для извлечения последовательностей при помощи соотнесения образцов.
Найдите дату первого выхода Mathematica в цифрах числа .
In[1]:=
![Click for copyable input](assets.ru/find-a-sequence-in-the-digits-of-pi/In_26.png)
EntityValue[
Entity["ProgrammingLanguage", "WolframLanguage"], "DateIntroduced"]
Out[1]=
![](assets.ru/find-a-sequence-in-the-digits-of-pi/O_36.png)
Измените формат даты на подходящую для поиска.
In[2]:=
![Click for copyable input](assets.ru/find-a-sequence-in-the-digits-of-pi/In_27.png)
EntityValue[
Entity["ProgrammingLanguage", "WolframLanguage"], "DateIntroduced"];
date = Characters[DateString[%, {"Month", "Day", "YearShort"}]]
Out[2]=
![](assets.ru/find-a-sequence-in-the-digits-of-pi/O_37.png)
Сгенерируйте первые три миллиона цифр числа .
In[3]:=
![Click for copyable input](assets.ru/find-a-sequence-in-the-digits-of-pi/In_28.png)
pi = Characters[ToString@N[Pi, 3000000]];
SequencePosition выдаёт позиции, в которых начинается и заканчивается отформатированная дата.
In[4]:=
![Click for copyable input](assets.ru/find-a-sequence-in-the-digits-of-pi/In_29.png)
pos = SequencePosition[pi, date]
Out[4]=
![](assets.ru/find-a-sequence-in-the-digits-of-pi/O_38.png)
Она появляется лишь однажды среди первых трёх миллионов цифр числа . Этот случай может быть представлен простым способом, используя объект Grid.
код на языке Wolfram Language целиком
In[6]:=
![Click for copyable input](assets.ru/find-a-sequence-in-the-digits-of-pi/In_31.png)
Grid[Partition[chars, 8]]
Out[6]=
![](assets.ru/find-a-sequence-in-the-digits-of-pi/O_39.png)
Попробуйте другие даты и найдите ваш день здесь!