книги / Mathematica 5. ╨б╨░╨╝╨╛╤Г╤З╨╕╤В╨╡╨╗╤М
.pdf1736, 1152, |
1772, |
1800, |
1812, |
1820, |
1848 |
1856, |
1880, |
1892, |
1968, |
|
1992, |
2 0 0 0 , |
2016, |
2024, |
2060, |
2076, |
2132 |
2136, |
2144, |
2148, |
2196, |
2208, |
2 2 2 0 , |
2240, |
2268, |
2288, |
2292, |
2324 |
2328, |
2348, |
2352, |
2448, |
2456, |
2468, |
2472, |
2496, |
2504, |
2520, |
2528 |
2532, |
2580, |
2612, |
2616, |
2636, |
2648, |
2676, |
2736, |
2744, |
2780, |
2808 |
2816, |
2820, |
2856, |
2864, |
2900, |
2936, |
2952, |
2996, |
3012, |
3036, |
3044 |
3048, |
3068, |
3108, |
3132, |
3168, |
3216, |
3248, |
3276, |
3284, |
3288, |
3336 |
3348, |
3392, |
3396, |
3404, |
3432, |
3440, |
3516, |
3536, |
3540, |
3572, |
3576 |
3588, |
3608, |
3620, |
3636, |
3644, |
3680, |
3692, |
3728, |
3764, |
3780, |
3788 |
3792, |
3800, |
3824, |
3828, |
3836, |
3840, |
3876, |
3896, |
3908, |
3912, |
3944 |
3948, |
3972, |
4004, |
4008, |
4032, |
4056, |
4068, |
4080, |
4088, |
4116, |
4160 |
4176, |
4220, |
4236, |
4256, |
4260, |
4272, |
4292, |
4308, |
4320, |
4340, |
4364 |
4400, |
4452, |
4488, |
4500, |
4544, |
4572, |
4596, |
4608, |
4628, |
4652, |
4656 |
4664, |
4668, |
4692, |
4716, |
4728, |
4736, |
4740, |
4760, |
4788, |
4800, |
4808 |
4844, |
4848, |
4868, |
4896, |
4908, |
4952, |
4968, |
4980, |
4988, |
4992, |
5012 |
5016, |
5028, |
5052, |
5084, |
5112, |
5136, |
5192, |
5204, |
5220, |
5228, |
5232 |
5264, |
5268, |
5276, |
5292, |
5300, |
5328, |
5336, |
5352, |
5388, |
5400, |
5408 |
5420, |
5436, |
5480, |
5532, |
5552, |
5556, |
5580, |
5588, |
5592, |
5616, |
5636 |
5640, |
5660, |
5672, |
5676, |
5688, |
5708, |
5804, |
5808, |
5816, |
5832, |
5880 |
5912, |
5928, |
5952, |
5960, |
5984, |
5988, |
6020, |
6056, |
6068, |
6096, |
6104 |
6128, |
6164, |
6216, |
6236, |
6248, |
6252, |
6276, |
6300, |
6356, |
6372, |
6392 |
6408, |
6420, |
6428, |
6432, |
6456, |
6480, |
6488, |
6492, |
6516, |
6524, |
6540 |
6560, |
6576, |
6596, |
6608, |
6612, |
6668, |
6708, |
6720, |
6752, |
6756, |
6828 |
6840, |
6852, |
6860, |
6900, |
6912, |
6936, |
6948, |
6968, |
6972, |
7004, |
7008 |
7040, |
7064, |
7076, |
7100, |
7112, |
7116, |
7128, |
7152, |
7176, |
7212, |
7220 |
7248, |
7260, |
7296, |
7308, |
7316, |
7328, |
7352, |
7364, |
7416, |
7424, |
7428 |
7440, |
7476, |
7496, |
7500, |
7508, |
7512, |
7560, |
7572, |
7580, |
7596, |
7604 |
7616, |
7652, |
7668, |
7676, |
7740, |
7752, |
7776, |
7788, |
7796, |
7800, |
7836 |
7872, |
7892, |
7904, |
7928, |
7956, |
7968, |
7976, |
7992, |
8000 |
|
|
|
|
|
|
Если показатель п равен одному из этих чисел, то наименьший делитель числа
3*2" +1, больший единицы, больше наибольшего простого модуля, использованного для составления таблицы. Вот примеры.
FactorInteger [3*2‘Л36+1] {{206158430209, 1} } FactorInteger [3*2л92+1]
{{1132314641089,1},{13119392730926401,1}} FactorInteger [3*2л96+1] {{392840481939253,1},{605040718740253,1}} Factorlnteger [3*2л108+1]
{{805213, 1}, {1781311693519, 1},{678750386188027, 1}}
Таким образом, нетривиальные делители чисел 3*2я+1, показатели которых вы
|
держали отсев, довольно велики. (Ведь если число |
3-2я+1 делится на простой мо |
||
|
дуль, использованный при |
построении таблицы, то |
показатель |
не выдержал отсев.) |
| Поэтому при применении |
функции PrimeQ могут произойти |
временные задержки. |
||
[ |
Давайте сосчитаем количество таких показателей в пределах первых 300 000. Вот нуж- |
|||
! |
ная нам программа. |
|
|
|
|
prog4 := |
|
|
|
| |
Block[ {nn=30000, Yes=0, No=0, j=4 }, |
|
|
|
|
While[j<=nn, |
|
|
|
If[fx[j,t],Yes++,No++];
J+ -4J;
P rin t[ " Y e s * " ,Y e s ,N o = " ,N o ] )
Вот результаты счета.
Модулярная арифметика... |
211 |
prog4//Timing
Yes14451 ; No60549 {1893.61 Second,Null)
Как видите, в пределах первых 300 000 придется проверить только 14451 число, кратное 4. Правда, отсев остальных чисел при этом у меня занял примерно 1893 се кунды, т.е. чуть больше получаса.
Хотя, как и в случае чисел 5*2я + 1, время на построение таблицы окупается, пове дение программы может показаться несколько неожиданным из-за временных затрат на построение таблицы и возможных временных затрат на вычисление функции PrimeQ в случае показателей, кратных 4. Действительно, сначала очень быстро печа таются первые значения л, а затем после п = 534 (на моем компьютере) происходит весьма существенная задержка. Она связана как с отсутствием искомых значений п вплоть до л = 2 208, так и с тем, что для части чисел (чуть более 11 %) приходится вы полнять полную проверку, которая теперь уже требует весьма ощутимых временных за трат, причем зачастую весьма непредсказуемых для показателей л, кратных 4. Затем вы дача замедляется, но поведение программы выглядит вполне стабильно, пока не будет
напечатан показатель л = 3 912. |
После этого идет большой перерыв, вплоть до |
|
л = 20 909. В приведенной ниже программе учтено все, о чем говорилось выше. |
|
|
M3n[nJ :« |
|
|
Block [{j-1, nnprime-25000,primen-Prime [nnprime],nn=Min [n,primen]}, |
j |
|
While [MMkn[3,j]<= primen |
&& j<=n, {If [MM3nPrime01[j],Print [j]], |
|
j++)b* |
|
I |
j
t-Sort[DeleteCases[Array[f3,nnprime,3],Null]]; While[j<-nn.
If[fx[j,t]. If[MM3nPrime01[j],Print[j]]];
Эта программа существенно быстрее первоначальной, но если хотите по ней найти л —20 909, понадобится время и ангельское терпение.
Как видим, предварительная отбраковка и в данном случае значительно повышает эффективность программы. Впрочем, эффективность программы все еще сильно оп ределяется неотсеяннымн показателями л, кратными 4. Хотелось бы и для них найти
такое основание а, чтобы для установления простоты числа 3-2я+ 1 достаточно было
проверить выполнение сравнения |
=-1 (mod *-2"+1). (Ранее для показателей л, |
не кратных 4, мы полагали а = 5.) |
|
Но все дело в том, что если показатель л делится на 4, то выбрать основание а не сколько сложнее. Если показатель л делится на 4, в качестве основания а можно взять
любой квадратичный невычет г по модулю 3*2"+1. Поэтому если п делится на 4,то сначала нужно найти (желательно небольшой) квадратичный невычет г по модулю
З'Г +1, а затем проверить, выполняется ли сравнение г2-"4 =-1 (mod *-2"+1).
Но как найти квадратичный вычет? Для этого можно использовать квадратичный за
кон взаимности.
Е ст Р>\ и 0>1 — положительные нечетные взаимно простые числа, то
Прежде всего заметим, что если Р = 3 2*+1, то •£—i = 3-2*~* — число четное
2
прпиЖ
212 |
Глава 7 |
Я - 1 (? -1
Поэтому (-1) 2 2 = 1 и потому (*)- . Как видим, для поиска квадратичного
невычета г можно использовать функцию JacobiSymbol. В качестве г можно брать
небольшие нечетные числа и вычислять для них символ Якоби. (Для квадратичного невычета символ Якоби равен -1.) Как только мы найдем квадратичный невычет г,
можем проверить, выполняется ли сравнение r ~ 'k =-1 (mod к - 2я+1). Теперь легко написать функцию, вычисляющую квадратичный невычет.
ММЗпг [пп_]
Module[{г=5,
JS=JacobiSymbol[5,nn]},
While[JS!=-l && r<nn, r+=2;
If[GCD[r,nn]~l,
JS=JacobiSymbol[r,nn]]];r]
Чтобы запрограммировать критерий простоты, воспользуемся функцией PowerMod.
MM3nPrime [n_] : =
Module!{t = 3*2Лп+1),
If[Mod[n,4]!=0,
PowerMod[5, (t—1)/2,t]==t-l,
PowerMod[ММЗпг[t],(t-1)/2,t]==t-l]]
Теперь, наконец, можем написать окончательную версию программы.
M3nv01 [ п_] : =
Block[{j=l, nnprime=25000/primen=Prime[nnprime],nn=Min[n,primen]}, While [MMkn[3,j]<= primen &&• j<=n, {If[MM3nPrime[j], Print[j]],
j + + ) l ;
i f [j <n; t=Sort[DeleteCases[Array[f3,nnprime,3],Null]]; While[j<=nn,
If[fx[j,t], If[MM3nPrime[j],Print[j]]];
j++]]]
Запуская программу с параметром nnprime = 10000 и 25000, убеждаемся, что
при этих (и всех промежуточных) значениях генерация таблицы начинается после вы вода показателя 12, но до вывода показателя 18. Затем программа довольно быстро добирается до показателя 3912, после вывода которого “уходит в себя” аж до вывода показателя 20 909. (Заметьте, что, в отличие от предыдущей версии программы, пе рерыв между показателями 534 и 2 208 не слишком заметен — эту “достоприме
чательность” вы запросто можете пропустить, если выйдете выпить чашечку кофе!)
Оказывается, что число |
3- Т |
+ 1 является простым при п = 1 , |
2 , 5, 6, 8, |
12, |
|||||||||||||||
18, |
30, |
3 |
36, |
41, |
66, |
189, |
201, |
209, |
276, |
353, |
408, |
438, |
534, |
2 |
208, |
||||
2 816, |
168, |
3 |
189, |
3 |
912, |
20 |
909, |
34 |
350, |
42 |
294, |
42 |
665, |
44 |
685, |
||||
48 150, |
55 182, |
59 973, |
80 |
190, |
157 |
169, |
|
213 |
321. При всех других |
п, не |
превосходящих 300 000, число 3-2Я-М вляется составным.
Резюме
Мы рассмотрели определение частного (функция Quotient) и остатка (функция Mod), а также возведение в степень в модулярной арифметике (функция PowerMod) и
основу основ модулярной арифметики — китайскую теорему об остатках (функция ChineseRemainder). Кроме того, мы затронули вопрос об извлечении квадратных
Модулярная арифметика... |
213 |
корней (функции SqrtMod, SqrtModList и JacobiSymbol). Но мы не ограничились корнями второй степени, а научились находить первообразные корни по модулю п (функция PrimitiveRoot), а также показатели (функция MultiplicativeOrder).
Как оказалось, некоторые из рассмотренных функций используют каноническое раз ложение (функцию Factorlnteger) и потому не могут справиться с вычислениями при очень больших аргументах. Однако на реальных примерах мы убедились в том, что эти функции очень полезны и вполне пригодны даже тогда, когда вычисления ве дутся с очень большими числами, например с числами, близкими к тысячным, деся титысячным, стотысячным и даже миллионным степеням двойки.
Задачи
Задача 7.1. Найти длину периодов дробей 1/19, 1/41, 1/(13*37), 1/(17*29) 1/(7*23*31), 1/(11*13*17), 1/(2*11*13), 1/(4*53*73).
Задача 7.2. Вычислить квадратные корни из 7 по модулю 17.
Задача 7.3. Решить квадратное уравнение 2дг2+5х+4 = 0 в поле вычетов по модулю 11.
Задача 7.4. Найти последние 50 цифр чисел 123402, З3’ , 44* 53’ (в случае, если1 число записывается менее чем 50 цифрами, вычислить число).
214 |
Глава 7 |
Глава 8
Числовые функции
Вэтой главе...
♦Функция Эйлера — EulerPhi
♦Функция Кармайкла Х(т) — CarmichaelLambda
♦Функция Мебиуса \i(m) — MoebiusMu
♦Функции, связанные с делителями, — Divisors и DivisorSigma
♦Резюме
♦Задачи
Функция .Дх) называется числовой, если она определена при всех натуральных значениях аргумента х.
А. А. Бухштаб. Теория чисел. Глава 33. Числовые функции. Определение 88
Многие рассмотренные ранее функции относятся к числовым, однако осталось не сколько важных числовых функций, заслуживающих отдельного внимания.
Функция Эйлера — EulerPhi
Если в полной системе вычетов по модулю п |
оставить только вычеты, взаимно |
I простые с модулем, получим приведенную систему |
вычетов по модулю п. Мощность |
приведенной системы вычетов по модулю п как множества обозначается <р(л), а функ ция <р:лЬ-»(р(я) называется функцией Эйлера. Найдем, для примера, приведенную систему вычетов по модулю 10.
Select[Range [10 ],GCD[#1,10]==1&]
( 1 , 3 , 7 , 9 }
Приведенная система вычетов по модулю 10, как видим, содержит 4 элемента. Значит, <р(10) = 4. В системе Mathematica функция Эйлера имеет имя EulerPhi.
Вот как можно вычислить ср(10).
EulerPhi [10]
4
Функция Эйлера имеет замечательные свойства и многочисленные применения. Например, она обладает следующим свойством:
Если а н т взаимно простые, то аф(ш) = l(modm).
Это утверждение называется теоремой Эйлера и очень часто малой теоремой Фер ма, который знал ее частный случай для простых модулей т. Эта теорема позволяет упростить вычисление остатков степеней чисел, взаимно простых с модулем. Рассмот рим пример.
Пример 8.1. “Бытие Бога”. Во второй половине XIX века некоторых авторов при
влекали числа 22, З3’ , 44* Вот что пишет об этих числах известный немецкий попу ляризатор математики Вальтер Литцман в середине XX столетия:
В одной, изданной в 1874 году книге под названием “Бьггие Бога” (автор книги — Крениг)
рассматривается ряд чисел: 22 , З3 , 44 О последнем из этих чисел автор говорит: “Представьте себе отрезок такой длины, что световому лучу понадобился бы квинтилли он лет, чтобы пройти этот путь. Затем представьте себе шар с диаметром, равным этому отрезку, наполненный типографской краской. Всей этой краски не хватило бы, чтобы четко напечатать это число даже самыми мелкими цифрами, какие только существуют” X. Маурер исследовал эти числа с точки зрения теории чисел. Обозначив для простоты
число х г через 3Jt и введя затем общее обозначение яа = х( х) (где х и п — целые по
ложительные числа), он показал, как можно найти последние цифры этих числовых ве
ликанов. Так, например, 29 (т. е. 99) оканчивается на 89, 39 —на 289, |
49 — на 5289, |
|
59 — на 45 289 и так далее, наконец, ,09 — на 9 392 745 289. Таким образом, последние |
||
п цифр числа "9 повторяются во всех последующих числах |
я+|9 , я+29 , |
и т. д. Ана |
логичными свойствами обладает и любой другой ряд 1х = х, |
2х , Зх , |
и так далее, где j |
х — целое. |
|
|
Что вы чувствуете по мере чтения этого отрывка? Я чувствую интерес и нарастаю щее недоверие. Я, например, в захвате от сравнения с шаром. Но я сомневаюсь, за
канчивается ли 109 — на 9 392 745 289. И даже если последние п цифр числа ”9 по
вторяются во всех последующих числах я+,9, я+29, и так далее, то я полагаю, что это как-то связано с девяткой и с тем, что эти числа записываются в десятичной сис теме счисления. Едва ли такими свойствами обладает и любой другой .ряд 1х = х, 2д ,
V и так далее, где х — целое. И действительно, * 2 = 2 заканчивается на 2, а
2а* = 4 — на 4. Уже последняя цифра не повторяется во всех последующих числах
этого вида! |
Как можно говорить о повторении последних п цифр числа? Так ч то |
на |
счет таких свойств у любого другого ряда !х = а , 2а , Зх , и так далее, где а — |
це |
лое, то тут явное вранье. Вальтер Литцман, правда, говорит не о таких свойствах, а об аналогичных свойствах, но в чем отличие, не указывает явно. Такими свойствами не обладают, например, числа а = 3, 4, 8 и многие другие. Поэтому в чем именно состо ит аналогия, для меня пока не совсем понятно. И мне, естественно, хочется прояс
нить этот вопрос и еще сильнее хочется вычислить последние п цифр числа "9.
Давайте начнем с вычисления последних п цифр числа я9 . Как это сделать с помо щью системы Mathematica?
Вот определение функции ях .
GodF[n_,x_J :=Module[{t = 1), Do[t = x^t, {i, n}]; t]
Функция яа возрастает очень быстро, значительно быстрее факториалов, поэтому, если нужно вычислить, скажем, последние к знаков какого-нибудь значения этой функции, необходимо использовать PowerMod.
GodFLastk[n_,x_, kj := If [n==l,Mod [x, 10лк],PowerMod [x,GodF[n-1, x],IC'k]]
216 |
Гnaea 8 |
Пусть к = 50. Тогда мы в мгновение ока сможем вычислить последние 50 знаков чисел ‘9, 29 и 39 . Но вот вычислить последние даже 10 знаков числа 49 так легко не удастся. Этот пример показывает, что в некоторых случаях применение функции powerMod может продвинуть вычисления всего лишь на один шаг!
Но функция Эйлера (и малая теорема Ферма) позволяет быстро вычислить по следние 50 знаков числа 49. Программа, конечно, будет другая.
PowerMod[9,PowerMod[9,9Л9,EulerPhi[10Л50]],10А50]
30363975097419408973491530163140828233401045865289
Можно ли быстро вычислить последние 50 знаков числа 59 по такой программе?
PowerMod[9,PowerMod[9,9Л9Л9,EulerPhi[10л50]],10л50]
Едва ли.
В чем же причина такого медленного продвижения, почему мы продвигаемся только на один шаг? Это происходит потому, что мы на самом деле устраняем быст
рый рост функции пх =хс 'х) только на последнем шаге. Почему это происходит? Потому, что мы все время связаны с определением функции GodF. Именно она ис пользуется внутри функции GodFLastk. Даже фактически отказавшись от явного применения функции GodFLastk, мы все равно стремимся записать выражение для
пх= хс 'х) с некоторыми упрощениями для последнего или предпоследнего возведения
в степень. Конечно, это так естественно использовать выражение для ях = хг '*)! Однако нужно иметь в виду, что использование подобных “прямолинейных” опре делений часто весьма неэффективно. Если уж мы решили повышать эффективность, то делать это нужно на всю “глубину” выражения. Правда, это неизбежно приведет к появлению новых функций. Нам, например, придется отказаться от функции GodFLastk. Как ни удивительно, но вместо нее нам понадобится только одна функ ция, притом довольно простая. Давайте найдем ее определение. Обозначим через <7(л,
х, к) остаток от деления пх на к. (Таким образом, G(n, х, К Г ) — это последние т
цифр числа пх .) Тогда <7(1, х, к) = Mod[x, |
к ] |
. С другой стороны, |
<Т(/2+1, х, к) = Mod [ х * , |
к] |
= PowerMod [х, лх , к ]. |
| Предположим теперь, что х и к взаимно просты. Тогда по малой теореме Ферма это выражение можно записать так: PowerMod [х, G(/i, х, <р(&)), к ]. Так что в этом случае С(л+1, х, к) = PowerMod[х, <7(и, х, <р(&)), к]. Этр и есть нужное нам рекуррентное соотношение. С учетом этого соотношения определение нужной нам функции выглядит так.
GodFk[n_,x_, k j :=
If[n==l,Mod[х , k],
If[GCD[x,k]==1,PowerMod[x,GodFk[n-1,x, EulerPhi[k]],k],
PowerMod[x,GodF[n-l,x],k]]
];
Теперь легко написать программу.
Do[Print ["n=", n, ":”,GodFk [n, x=9,10Ak] ],{n, k=50} ]
Вот полученные результаты (последние п цифр я выделил полужирным и кое-где Добавил для наглядности пробелы).
Числовые функции |
217 |
n* |
1 |
э |
пв |
2 |
387420489 |
n® |
3 |
74036682906190174923494324178799359681422627177289 |
П= |
4 |
30363975097419408973491530163140828233401045865289 |
n* |
5 |
67601769201280803321567960562922025410124931945289 |
П* |
6 |
66988559077764735391593750574508335101770064745289 |
П* |
7 |
3225702039861853103627899869690297466648912745289 |
n= |
8 |
59236124206842976969480888865754664771680592745289 |
П* |
9 |
24598085360063561211387321046834512555309392745289 |
П* |
10 |
74385615209966118260643333668398710025517392745289 |
n - |
U |
76243360385648423208250882460220962794797392745289 |
n* |
12 |
87216251448058746388660902493352723639597392745289 |
n* |
13 |
56125899838074819319718135540327220407597392745i289 |
n® 14 |
15721700104894507499855491068835759287597392745289 |
|
n® |
15 |
35685823571973539888573208106402940087597392745289 |
n® 16 |
21046168741117425730114673405625468087597392745289 |
|
n® 17 |
86294587738270643045877500288205948087597392745289 |
|
n® 18 |
85938146273976665955673369209242748087597392745289 |
|
ft® 19 |
29939232856561419744939548600730748087597392745289 |
|
n* |
20 |
84355081639217022496061810534810748087597392745289 |
ft® 21 |
4062958342717589169869239347610748087597392745289 |
|
n* |
22 |
53597576335863867827050066995610748087597392745289 |
n« |
23 |
63401719997507892663236506675610748087597392745289 |
a® 24 |
35562795064727795859981415475610748087597392745289 |
|
O* 25 |
89707387667662486473016423475610748087597392745289 |
|
ft* 26 |
7165773736836118217753703475610748087597392745289 |
|
ft* 27 |
62143159496207876149478503475610748087597392745289 |
|
ft* 28 |
67085999264966982947046503475610748087597392745289 |
|
ft* 29 |
43881460342292173213926503475610748087597392745289 |
|
ft* |
30 |
62083918856212192874726503475610748087597392745289 |
ft* |
31 |
42770308364235972202726503475610748087597392745289 |
ft* |
32 |
93671147998913240682726503475610748087597392745289 |
ft* |
33 |
49442475128680357482726503475610748087597392745289 |
и п и ш м и и н
349763266066804645482726503475610748087597392745289
3523920310583586725482726503475610748087597392745289
3684050795204079525482726503475610748087597392745289
3727542025260527525482726503475610748087597392745289
3853693377908207525482726503475610748087597392745289
3?, 86806252097007525482726503475610748087597392745289
4092437731905007525482726503475610748087597392745289
4199095237105007525482726503475610748087597392745289
424125841005007525402726503475610748087597392745289
4367704209005007525402726503475610748087597392745289
4416499009905007525402726503475610748087597392745289
4576639009005007525402726503475610748087597392745289
4692767809985007525482726503475610748007597392745289
4749247009005007525402726503475610748087597392745289
4846047000005007525402726503475610748087597392745289
4934047009905007525402726503475610748087597392745289 Ш 14047009905007525402726503475610748087597392745289
ДшшЙчч;TKTOKjpb ш ш т ййшшпярвшл®мдчгасжмма f»/»» члсш 3. Bor так эаяпияст*
«й mpwpwwa.
Ш)Ц^ariwittt[",i№f*="’„un„ "^"'„©адакКв^х-З,, l®*kj I» 4m»fc=5®B 1
Ш |
ГтаваВ |
Вот что получится (кое-где для наглядности добавлены пробелы, а повторяющиеся цифры выделены полужирным).
П= |
1 |
3 |
|
п= |
2 |
27 |
|
п= |
з |
7625597484987 |
|
п= |
4 |
77570718344711077047886315075206738945776100739387 |
|
п= |
5 |
55854572752741256595935403868315006939489660355387 |
|
п= |
б |
90780468378838490089689122942913333445425126595387 |
|
I F |
7 |
57363335931987121606290933357170663594163200195387 |
|
п= |
8 |
8191858424962438172573992874654018371285504195387 |
|
IF |
9 |
95577482876830468269943399230195119099288064195387 |
|
п= Ю |
8435006830504599886102605386254100942846464195387 |
||
IF |
И |
50618965127937823949288974261382652289022464195387 |
|
IF |
12 |
33161552470073414076445536414295455473662464195387 |
|
п= |
13 |
57997025360625683240421247657832362123262464195387 |
|
IF |
14 |
30095007241855857717245212823399805067262464195387 |
|
IF |
15 |
71995337059215641109287005843553497227262464195387 |
|
п= |
16 |
44157920142526662501526665014305599627262464195387 |
|
п= |
17 |
32584118105183489570768760756527935627262464195387 |
|
IF |
18 |
17837341235047369778848713997574975627262464195387 |
|
п= |
19 |
91391567977352645535199176332960575627262464195387 |
|
IF |
20 |
84384009257019351608787441718944575627262464195387 |
|
IF |
21 |
51158784454967340230287016236704575627262464195387 |
|
IF |
22 |
88201871244260524527551915923104575627262464195387 |
|
п= |
23 |
70480684875148289836047280019104575627262464195387 |
|
п= |
24 |
47386861942350455540475373459104575627262464195387 |
|
г.= |
25 |
70502972735760073957605255059104575627262464195387 |
|
п= |
26 |
14923290048832308059340679059104575627262464195387 |
|
j п= |
27 |
28644084365777774239580039059104575627262464195387 |
|
[ п= |
28 |
73806600241641792292290439059104575627262464195387 |
|
п= 29 |
95394263865045138359746439059104575627262464195387 |
||
п= |
30 |
14105548786667564123586439059104575627262464195387 |
|
п= |
31 |
29352587436074255861186439059104575627262464195387 |
|
п= |
32 |
41141426257858971125186439059104575627262464195387 |
|
п= |
33 |
23518454550261188085186439059104575627262464195387 |
|
IF |
34 |
16644673180062762485186439059104575627262464195387 |
|
п= 35 |
63607753705051178485186439059104575627262464195387 |
||
г.= |
36 |
24222573550949418485186439059104575627262464195387 |
|
п= |
37 |
34723415029503018485186439059104575627262464195387 |
|
п= 38 |
99398465419007018485186439059104575627262464195387 |
||
IF |
39 |
26617834829567018485186439059104575627262464195387 |
|
п= 40 |
27607235507967018485186439059104575627262464195387 |
||
п= 41 |
74502978483967018485186439059104575627262464195387 |
||
п= 42 |
23617715123967018485186439059104575627262464195387 |
||
п= 43 |
97581644723967018485186439059104575627262464195387 |
||
я= 44 |
34643788723967018485186439059104575627262464195387 |
||
п= 45 |
59023948723967018485186439059104575627262464195387 |
||
п= 46 |
67446348723967018485186439059104575627262464195387 |
||
г.= |
47 |
74582348723967018485186439059104575627262464195387 |
|
п= 48 |
93622348723967018485186439059104575627262464195387 |
||
п= 49 |
59222348723967018485186439059104575627262464195387 |
||
п= 50 |
|||
43222348723967018485186439059104575627262464195387 |
Числовые функции |
219 |
Теперь понятно, что имел в виду Вальтер Литцман под аналогичными свойствами. Начиная с некоторого п = п0 последняя цифра числа не изменяется, причем начиная
е п = л0 + 1 повторяются уже две цифры, с я = л1)+ 2 - три цифры, с п — п()+ к — к
цифр и т. д. (Через н()(х) удобно обозначать наименьшее п0 с таким свойством.) Для
некоторых л*, например для х = 9, п0(х) = 1, а для некоторых х л5(х)>1. Если //„(*)>!,
то нельзя утверждать, что последние п цифр числа пх повторяются во всех последую
щих числах "+,.v, л+2д:, и т.д. Если /;0(х)>1, то повторение последних п цифр нач
нется не с числа пх , а несколько позднее! Да уж, разбираться в популярных книжках иногда приходится с системой Mathematical
Пример 8.2. График функции Эйлера.
Давайте теперь построим график функции Эйлера. Сначала используем функции Table и EulerPhi для построения таблицы tl (точнее, списка) значений функции Эйлера.
tlTable[EulerPhi[k],{k,1,п=10л3}];
Теперь можем использовать функцию ListPlot для построения графика.
ListPlot[tl,PlotRange->All]
100C
800
600
400
200^
200 400 600 800 1000
А вот график для n = 100000.
20000 40000 60000 80000 100000
220 |
Г л ава8 |