ΠœΠ°Ρ‚Π΅ΠΌΠ°Ρ‚ΠΈΡ‡Π΅ΡΠΊΠΈΠ΅ ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΈ Π² php

ΠœΠ°Ρ‚Π΅ΠΌΠ°Ρ‚ΠΈΡ‡Π΅ΡΠΊΠΈΠ΅ ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΈ Π² php

ΠœΠ°Ρ‚Π΅ΠΌΠ°Ρ‚ΠΈΡ‡Π΅ΡΠΊΠΈΠ΅ ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΈ php

АрифмСтичСскиС ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€Ρ‹

ΠžΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€Π”Π΅ΠΉΡΡ‚Π²ΠΈΠ΅ΠŸΡ€ΠΈΠΌΠ΅Ρ€Π Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚
+Π‘Π»ΠΎΠΆΠ΅Π½ΠΈΠ΅2+46
Π’Ρ‹Ρ‡ΠΈΡ‚Π°Π½ΠΈΠ΅5-32
*Π£ΠΌΠ½ΠΎΠΆΠ΅Π½ΠΈΠ΅2*48
/Π”Π΅Π»Π΅Π½ΠΈΠ΅10/33.3333333
%ΠžΡΡ‚Π°Ρ‚ΠΎΠΊ ΠΎΡ‚ дСлСния10/31
**Π’ΠΎΠ·Π²Π΅Π΄Π΅Π½ΠΈΠ΅ Π² ΡΡ‚Π΅ΠΏΠ΅Π½ΡŒ2**38

ЦСлочислСнноС Π΄Π΅Π»Π΅Π½ΠΈΠ΅ Π² php:

! Π”Π΅Π»Π΅Π½ΠΈΠ΅ Π½Π° 0 Π΄Π°Π΅Ρ‚ пустой Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚.

ΠžΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€Ρ‹ сравнСния

ΠžΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€Π—Π½Π°Ρ‡Π΅Π½ΠΈΠ΅
==Π Π°Π²Π½ΠΎ
!=НС Ρ€Π°Π²Π½ΠΎ
Π‘ΠΎΠ»ΡŒΡˆΠ΅
=Π‘ΠΎΠ»ΡŒΡˆΠ΅ Π»ΠΈΠ±ΠΎ Ρ€Π°Π²Π½ΠΎ

Π˜Π½ΠΊΡ€Π΅ΠΌΠ΅Π½Ρ‚ ΠΈ Π΄Π΅ΠΊΡ€Π΅ΠΌΠ΅Π½Ρ‚ (пост ΠΈ ΠΏΡ€Π΅Π΄)

Π£Π²Π΅Π»ΠΈΡ‡Π΅Π½ΠΈΠ΅ значСния ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½ΠΎΠΉ Π½Π° 1:

Π’ΠΎΠ·Π²Π΅Π΄Π΅Π½ΠΈΠ΅ Π² ΡΡ‚Π΅ΠΏΠ΅Π½ΡŒ

1 Π²Π°Ρ€ΠΈΠ°Π½Ρ‚ (PHP 5.6 ΠΈ Π²Ρ‹ΡˆΠ΅):

ВычислСниС ΠΊΠ²Π°Π΄Ρ€Π°Ρ‚Π½ΠΎΠ³ΠΎ корня ΠΈΠ· числа

ВычислСниС кубичСского корня ΠΈΠ· числа

ΠžΠΊΡ€ΡƒΠ³Π»Π΅Π½ΠΈΠ΅ числа Π΄ΠΎ Ρ†Π΅Π»ΠΎΠ³ΠΎ

ΠžΠΊΡ€ΡƒΠ³Π»Π΅Π½ΠΈΠ΅ числа Π΄ΠΎ Π·Π°Π΄Π°Π½Π½ΠΎΠ³ΠΎ количСства Π·Π½Π°ΠΊΠΎΠ²

Π˜ΡΡ‚ΠΎΡ‡Π½ΠΈΠΊ

ΠœΠ°Ρ‚Π΅ΠΌΠ°Ρ‚ΠΈΡ‡Π΅ΡΠΊΠΈΠ΅ ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΈ Π² php

** (Π²ΠΎΠ·Π²Π΅Π΄Π΅Π½ΠΈΠ΅ Π² ΡΡ‚Π΅ΠΏΠ΅Π½ΡŒ)

Π˜Π½ΠΊΡ€Π΅ΠΌΠ΅Π½Ρ‚ ΠΈ Π΄Π΅ΠΊΡ€Π΅ΠΌΠ΅Π½Ρ‚

Π’Π΅ΠΏΠ΅Ρ€ΡŒ посмотрим, Ρ‡Ρ‚ΠΎ Π±ΡƒΠ΄Π΅Ρ‚ Π² случаС с постфиксным ΠΈΠ½ΠΊΡ€Π΅ΠΌΠ΅Π½Ρ‚ΠΎΠΌ:

ОбъСдинСниС строк

Для объСдинСния строк ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€ «Ρ‚ΠΎΡ‡ΠΊΠ°». НапримСр, соСдиним нСсколько строк:

Если ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Π΅ ΠΏΡ€Π΅Π΄ΡΡ‚Π°Π²Π»ΡΡŽΡ‚ Π½Π΅ строки, Π° Π΄Ρ€ΡƒΠ³ΠΈΠ΅ Ρ‚ΠΈΠΏΡ‹, Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, числа, Ρ‚ΠΎ ΠΈΡ… значСния ΠΏΡ€Π΅ΠΎΠ±Ρ€Π°Π·ΡƒΡŽΡ‚ΡΡ Π² строки ΠΈ Π·Π°Ρ‚Π΅ΠΌ Ρ‚Π°ΠΊΠΆΠ΅ происходит опСрация объСдинСния строк.

ΠžΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΈ сравнСния

ΠžΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΈ сравнСния, ΠΊΠ°ΠΊ ΠΏΡ€Π°Π²ΠΈΠ»ΠΎ, ΠΏΡ€ΠΈΠΌΠ΅Π½ΡΡŽΡ‚ΡΡ Π² условных конструкциях, ΠΊΠΎΠ³Π΄Π° Π½Π°Π΄ΠΎ ΡΡ€Π°Π²Π½ΠΈΠ²Π°Ρ‚ΡŒ Π΄Π²Π° значСния, ΠΈ Π² зависимости ΠΎΡ‚ Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚Π° сравнСния Π²Ρ‹ΠΏΠΎΠ»Π½ΠΈΡ‚ΡŒ Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ дСйствия. Π˜ΠΌΠ΅ΡŽΡ‚ΡΡ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠ΅ ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΈ сравнСния.

ΠžΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€ равСнства ΠΈ тоТдСствСнности

ΠžΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€

0, Ссли ΠΎΠ±Π° значСния Ρ€Π°Π²Π½Ρ‹

1, Ссли Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ слСва большС, Ρ‡Π΅ΠΌ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ справа

–1, Ссли Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ слСва мСньшС, Ρ‡Π΅ΠΌ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ справа

ЛогичСскиС ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΈ

ЛогичСскиС ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΈ ΠΎΠ±Ρ‹Ρ‡Π½ΠΎ ΠΏΡ€ΠΈΠΌΠ΅Π½ΡΡŽΡ‚ΡΡ для объСдинСния Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚ΠΎΠ² Π΄Π²ΡƒΡ… ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΉ сравнСния. НапримСр, Π½Π°ΠΌ Π½Π°Π΄ΠΎ Π²Ρ‹ΠΏΠΎΠ»Π½ΠΈΡ‚ΡŒ ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½Π½ΠΎΠ΅ дСйствиС, Ссли истинны Π±ΡƒΠ΄ΡƒΡ‚ нСсколько условий. Π˜ΠΌΠ΅ΡŽΡ‚ΡΡ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠ΅ логичСскиС ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΈ:

ΠŸΡ€ΠΈΠΌΠ΅Ρ€Ρ‹ логичСских ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΉ:

ΠžΡ‚Π΄Π΅Π»ΡŒΠ½ΠΎ ΠΏΡ€ΠΈΠΌΠ΅Ρ€Ρ‹ с ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠ΅ΠΉ xor :

ΠŸΠΎΡ€Π°Π·Ρ€ΡΠ΄Π½Ρ‹Π΅ ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΈ

Π£ΠΌΠ½ΠΎΠΆΠ΅Π½ΠΈΠ΅ производится поразрядно, ΠΈ Ссли Ρƒ ΠΎΠ±ΠΎΠΈΡ… ΠΎΠΏΠ΅Ρ€Π°Π½Π΄ΠΎΠ² значСния разрядов Ρ€Π°Π²Π½ΠΎ 1, Ρ‚ΠΎ опСрация Π²ΠΎΠ·Π²Ρ€Π°Ρ‰Π°Π΅Ρ‚ 1, ΠΈΠ½Π°Ρ‡Π΅ возвращаСтся число 0. НапримСр:

Π—Π΄Π΅ΡΡŒ число 4 Π² Π΄Π²ΠΎΠΈΡ‡Π½ΠΎΠΉ систСмС Ρ€Π°Π²Π½ΠΎ 100, Π° число 5 Ρ€Π°Π²Π½ΠΎ 101. ΠŸΠΎΡ€Π°Π·Ρ€ΡΠ΄Π½ΠΎ ΡƒΠΌΠ½ΠΎΠΆΠΈΠΌ числа ΠΈ ΠΏΠΎΠ»ΡƒΡ‡ΠΈΠΌ (1*1, 0*0, 0 *1) = 100, Ρ‚ΠΎ Π΅ΡΡ‚ΡŒ число 4 Π² дСсятичном Ρ„ΠΎΡ€ΠΌΠ°Ρ‚Π΅.

ΠŸΠΎΡ…ΠΎΠΆΠ΅ Π½Π° логичСскоС ΡƒΠΌΠ½ΠΎΠΆΠ΅Π½ΠΈΠ΅, опСрация Ρ‚Π°ΠΊΠΆΠ΅ производится ΠΏΠΎ Π΄Π²ΠΎΠΈΡ‡Π½Ρ‹ΠΌ разрядам, Π½ΠΎ Ρ‚Π΅ΠΏΠ΅Ρ€ΡŒ возвращаСтся Π΅Π΄ΠΈΠ½ΠΈΡ†Π°, Ссли хотя Π±Ρ‹ Ρƒ ΠΎΠ΄Π½ΠΎΠ³ΠΎ числа Π² Π΄Π°Π½Π½ΠΎΠΌ разрядС имССтся Π΅Π΄ΠΈΠ½ΠΈΡ†Π°. НапримСр:

ΠŸΠΎΡ€Π°Π·Ρ€ΡΠ΄Π½ΠΎ слоТим числа ΠΈ ΠΏΠΎΠ»ΡƒΡ‡ΠΈΠΌ (1+1, 0+0, 0+1) = 101, Ρ‚ΠΎ Π΅ΡΡ‚ΡŒ число 5 Π² дСсятичном Ρ„ΠΎΡ€ΠΌΠ°Ρ‚Π΅.

^ (опСрация ΠΈΡΠΊΠ»ΡŽΡ‡Π°ΡŽΡ‰Π΅Π³ΠΎ Π˜Π›Π˜)

Π’ΠΎΠ·Π²Ρ€Π°Ρ‰Π°Π΅Ρ‚ Π΅Π΄ΠΈΠ½ΠΈΡ†Ρƒ, Ссли Ρƒ ΠΎΠ±ΠΎΠΈΡ… ΠΎΠΏΠ΅Ρ€Π°Π½Π΄ΠΎΠ² Ρ€Π°Π·Π½Ρ‹Π΅ значСния ΡΠΎΠΎΡ‚Π²Π΅Ρ‚ΡΡ‚Π²ΡƒΡŽΡ‰ΠΈΡ… разрядов. Но Ссли Ρƒ ΠΎΠ±ΠΎΠΈΡ… ΠΎΠΏΠ΅Ρ€Π°Π½Π΄ΠΎΠ² значСния ΡΠΎΠΎΡ‚Π²Π΅Ρ‚ΡΡ‚Π²ΡƒΡŽΡ‰ΠΈΡ… разрядов ΡΠΎΠ²ΠΏΠ°Π΄Π°ΡŽΡ‚, Ρ‚ΠΎ возвращаСтся 0. НапримСр:

ΠΈΠ½Π²Π΅Ρ€Ρ‚ΠΈΡ€ΡƒΠ΅Ρ‚ всС разряды: Ссли Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ разряда Ρ€Π°Π²Π½ΠΎ 1, Ρ‚ΠΎ ΠΎΠ½ΠΎ становится Ρ€Π°Π²Π½Ρ‹ΠΌ Π½ΡƒΠ»ΡŽ, ΠΈ Π½Π°ΠΎΠ±ΠΎΡ€ΠΎΡ‚.

ΠžΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΈ присваивания

Π‘Π»ΠΎΠΆΠ΅Π½ΠΈΠ΅ с ΠΏΠΎΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠΌ присвоСниСм Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚Π°. НапримСр:

Π’Ρ‹Ρ‡ΠΈΡ‚Π°Π½ΠΈΠ΅ с ΠΏΠΎΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠΌ присвоСниСм Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚Π°. НапримСр:

Π£ΠΌΠ½ΠΎΠΆΠ΅Π½ΠΈΠ΅ с ΠΏΠΎΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠΌ присвоСниСм Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚Π°:

Π”Π΅Π»Π΅Π½ΠΈΠ΅ с ΠΏΠΎΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠΌ присвоСниСм Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚Π°:

ОбъСдинСниС строк с присвоСниСм Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚Π°. ΠŸΡ€ΠΈΠΌΠ΅Π½ΡΠ΅Ρ‚ΡΡ ΠΊ Π΄Π²ΡƒΠΌ строкам. Если ΠΆΠ΅ ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Π΅ хранят Π½Π΅ строки, Π°, ΠΊ ΠΏΡ€ΠΈΠΌΠ΅Ρ€Ρƒ, числа, Ρ‚ΠΎ ΠΈΡ… значСния ΠΏΡ€Π΅ΠΎΠ±Ρ€Π°Π·ΡƒΡŽΡ‚ΡΡ Π² строки ΠΈ Π·Π°Ρ‚Π΅ΠΌ проводится опСрация:

ΠŸΠΎΠ»ΡƒΡ‡Π΅Π½ΠΈΠ΅ остатка ΠΎΡ‚ дСлСния с ΠΏΠΎΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠΌ присвоСниСм Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚Π°:

ΠŸΠΎΠ»ΡƒΡ‡Π΅Π½ΠΈΠ΅ Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚Π° ΠΎΡ‚ возвСдСния Π² ΡΡ‚Π΅ΠΏΠ΅Π½ΡŒ:

ΠŸΠΎΠ»ΡƒΡ‡Π΅Π½ΠΈΠ΅ Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚Π° ΠΎΡ‚ ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΈ логичСского умноТСния:

ΠŸΠΎΠ»ΡƒΡ‡Π΅Π½ΠΈΠ΅ Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚Π° ΠΎΡ‚ ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΈ логичСского слоТСния:

ΠŸΠΎΠ»ΡƒΡ‡Π΅Π½ΠΈΠ΅ Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚Π° ΠΎΡ‚ ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΈ ΠΈΡΠΊΠ»ΡŽΡ‡Π°ΡŽΡ‰Π΅Π³ΠΎ Π˜Π›Π˜:

ΠŸΠΎΠ»ΡƒΡ‡Π΅Π½ΠΈΠ΅ Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚Π° ΠΎΡ‚ ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΈ сдвига Π²ΠΏΡ€Π°Π²ΠΎ:

ΠŸΡ€ΠΈΠΎΡ€ΠΈΡ‚Π΅Ρ‚ ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΉ

Если ΠΎΠ΄Π½ΠΎ Π²Ρ‹Ρ€Π°ΠΆΠ΅Π½ΠΈΠ΅ содСрТит нСсколько Ρ€Π°Π·Π½Ρ‹Ρ… ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΉ, Ρ‚ΠΎ ΠΏΡ€ΠΈ Π²Ρ‹ΠΏΠΎΠ»Π½Π΅Π½ΠΈΠΈ выраТСния учитываСтся ΠΏΡ€ΠΈΠΎΡ€ΠΈΡ‚Π΅Ρ‚ ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΉ. Π‘Π½Π°Ρ‡Π°Π»Π° Π²Ρ‹ΠΏΠΎΠ»Π½ΡΡŽΡ‚ΡΡ ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΈ с большим ΠΏΡ€ΠΈΠΎΡ€ΠΈΡ‚Π΅Ρ‚ΠΎΠΌ ΠΈ Π² ΠΊΠΎΠ½Ρ†Π΅ с мСньшим ΠΏΡ€ΠΈΠΎΡ€ΠΈΡ‚Π΅Ρ‚ΠΎΠΌ.

ΠŸΡ€ΠΈΠΎΡ€ΠΈΡ‚Π΅Ρ‚ ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΉ ΠΌΠΎΠΆΠ½ΠΎ ΠΎΠΏΠΈΡΠ°Ρ‚ΡŒ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰Π΅ΠΉ Ρ‚Π°Π±Π»ΠΈΡ†Π΅ΠΉ:

Π§Π΅ΠΌ Π²Ρ‹ΡˆΠ΅ ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€ Π² этой Ρ‚Π°Π±Π»ΠΈΡ†Π΅, Ρ‚Π΅ΠΌ большС Π΅Π³ΠΎ ΠΏΡ€ΠΈΠΎΡ€ΠΈΡ‚Π΅Ρ‚. НапримСр:

ΠžΠΏΠ΅Ρ€Π°Ρ†ΠΈΡ умноТСния ΠΈΠΌΠ΅Π΅Ρ‚ больший ΠΏΡ€ΠΈΠΎΡ€ΠΈΡ‚Π΅Ρ‚, Ρ‡Π΅ΠΌ слоТСниС. ΠŸΠΎΡΡ‚ΠΎΠΌΡƒ сначала выполняСтся ΠΏΠΎΠ΄Π²Ρ‹Ρ€Π°ΠΆΠ΅Π½ΠΈΠ΅ 5 * 2

ΠŸΡ€ΠΈ этом скобки ΠΏΠΎΠ²Ρ‹ΡˆΠ°ΡŽΡ‚ ΠΏΡ€ΠΈΠΎΡ€ΠΈΡ‚Π΅Ρ‚ ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΈ, ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅ΠΌΠΎΠΉ Π² Π²Ρ‹Ρ€Π°ΠΆΠ΅Π½ΠΈΠΈ.

Π’ Π΄Π°Π½Π½ΠΎΠΌ случаС сначала выполняСтся ΠΏΠΎΠ΄Π²Ρ‹Ρ€Π°ΠΆΠ΅Π½ΠΈΠ΅ 10 + 5 ΠΈ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ ΠΏΠΎΡ‚ΠΎΠΌ ΡƒΠΌΠ½ΠΎΠΆΠ΅Π½ΠΈΠ΅.

Π˜ΡΡ‚ΠΎΡ‡Π½ΠΈΠΊ

ΠžΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠ° чисСл ΠΈ матСматичСскиС ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΈ

ΠŸΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡΡ‚Ρ‹, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΌ трСбуСтся ΠΎΡΡƒΡ‰Π΅ΡΡ‚Π²Π»ΡΡ‚ΡŒ отвСтствСнныС числовыС, Π½Π°ΡƒΡ‡Π½Ρ‹Π΅ ΠΈΠ»ΠΈ статистичСскиС вычислСния, вряд Π»ΠΈ станут Ρ€Π°ΡΡΠΌΠ°Ρ‚Ρ€ΠΈΠ²Π°Ρ‚ΡŒ язык составлСния сцСнариСв для Π²Π΅Π± Π² качСствС ΠΏΡ€ΠΈΠ΅ΠΌΠ»Π΅ΠΌΠΎΠ³ΠΎ ΠΊΠ°Π½Π΄ΠΈΠ΄Π°Ρ‚Π° Π½Π° эту Ρ€ΠΎΠ»ΡŒ. Но, нСсмотря Π½Π° сказанноС, язык PHP ΠΏΡ€Π΅Π΄Π»Π°Π³Π°Π΅Ρ‚ Π²Π΅Π»ΠΈΠΊΠΎΠ»Π΅ΠΏΠ½Ρ‹ΠΉ Π½Π°Π±ΠΎΡ€ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΉ, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΏΠΎΠ»Π½ΠΎΡΡ‚ΡŒΡŽ ΠΎΠ±Π΅ΡΠΏΠ΅Ρ‡ΠΈΠ²Π°ΡŽΡ‚ Ρ€Π΅ΡˆΠ΅Π½ΠΈΠ΅ Π±ΠΎΠ»ΡŒΡˆΠΈΠ½ΡΡ‚Π²Π° матСматичСских Π·Π°Π΄Π°Ρ‡, Π²ΠΎΠ·Π½ΠΈΠΊΠ°ΡŽΡ‰ΠΈΡ… Π² процСссС выполнСния сцСнариСв для Π²Π΅Π±. ΠšΡ€ΠΎΠΌΠ΅ Ρ‚ΠΎΠ³ΠΎ, язык PHP прСдоставляСт Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Π±ΠΎΠ»Π΅Π΅ Ρ€Π°ΡΡˆΠΈΡ€Π΅Π½Π½Ρ‹Π΅ возмоТности, Ρ‚Π°ΠΊΠΈΠ΅ ΠΊΠ°ΠΊ Π°Ρ€ΠΈΡ„ΠΌΠ΅Ρ‚ΠΈΠΊΠ° чисСл ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ»ΡŒΠ½ΠΎΠΉ точности, Π° Ρ‚Π°ΠΊΠΆΠ΅ срСдства Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊ Ρ…ΡΡˆΠΈΡ€ΠΎΠ²Π°Π½ΠΈΡ ΠΈ криптографичСских Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊ.

Π Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠΈ языка PHP приняли Π²ΠΏΠΎΠ»Π½Π΅ обоснованный ΠΏΠΎΠ΄Ρ…ΠΎΠ΄ ΠΈ Π½Π΅ стали ΠΏΡ€Π΅Π΄ΠΏΡ€ΠΈΠ½ΠΈΠΌΠ°Ρ‚ΡŒ ΠΊΠ°ΠΊΠΈΠ΅-Π»ΠΈΠ±ΠΎ ΠΏΠΎΠΏΡ‹Ρ‚ΠΊΠΈ снова ΠΈΠ·ΠΎΠ±Ρ€Π΅Ρ‚Π°Ρ‚ΡŒ колСса, ΠΏΡ€Π΅Π΄Π½Π°Π·Π½Π°Ρ‡Π΅Π½Π½Ρ‹Π΅ для ΡƒΠΊΠ°Π·Π°Π½Π½ΠΎΠΉ Ρ†Π΅Π»ΠΈ. Π”Π΅Π»ΠΎ Π² Ρ‚ΠΎΠΌ, Ρ‡Ρ‚ΠΎ ΠΌΠ½ΠΎΠ³ΠΈΠ΅ ΠΈΠ· Π½Π°ΠΈΠ±ΠΎΠ»Π΅Π΅ Ρ„ΡƒΠ½Π΄Π°ΠΌΠ΅Π½Ρ‚Π°Π»ΡŒΠ½Ρ‹Ρ… матСматичСских Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΉ, примСняСмых Π² языкС PHP, ΡΠ²Π»ΡΡŽΡ‚ΡΡ просто ΠΎΠ±ΠΎΠ»ΠΎΡ‡ΠΊΠ°ΠΌΠΈ Π²ΠΎΠΊΡ€ΡƒΠ³ Π°Π½Π°Π»ΠΎΠ³ΠΎΠ² этих Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΉ Π½Π° языкС C.

ΠœΠ°Ρ‚Π΅ΠΌΠ°Ρ‚ΠΈΡ‡Π΅ΡΠΊΠΈΠ΅ ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΈ

Π‘ΠΎΠ»ΡŒΡˆΠΈΠ½ΡΡ‚Π²ΠΎ матСматичСских дСйствий Π² языкС PHP осущСствляСтся Π² Ρ„ΠΎΡ€ΠΌΠ΅ встроСнных Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΉ, Π° Π½Π΅ Π² Ρ„ΠΎΡ€ΠΌΠ΅ ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΉ. ΠšΡ€ΠΎΠΌΠ΅ ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΉ сравнСния, язык PHP ΠΏΡ€Π΅Π΄Π»Π°Π³Π°Π΅Ρ‚ ΠΏΡΡ‚ΡŒ ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΉ выполнСния простых арифмСтичСских дСйствий, Π° Ρ‚Π°ΠΊΠΆΠ΅ Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ сокращСнныС ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΈ, ΠΏΠΎΠ·Π²ΠΎΠ»ΡΡŽΡ‰ΠΈΠ΅ ΡΠΎΡΡ‚Π°Π²Π»ΡΡ‚ΡŒ Π±ΠΎΠ»Π΅Π΅ ΠΊΡ€Π°Ρ‚ΠΊΠΈΠ΅ выраТСния ΠΈΠ½ΠΊΡ€Π΅ΠΌΠ΅Π½Ρ‚Π° ΠΈ Π΄Π΅ΠΊΡ€Π΅ΠΌΠ΅Π½Ρ‚Π°, Π° Ρ‚Π°ΠΊΠΆΠ΅ присваивания.

АрифмСтичСскиС ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΈ

К пяти основным арифмСтичСским опСрациям относятся Ρ‚Π΅ ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΈ, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΎΠ±Ρ‹Ρ‡Π½ΠΎ Ρ€Π΅Π°Π»ΠΈΠ·ΠΎΠ²Π°Π½Ρ‹ Π² любом Ρ‡Π΅Ρ‚Ρ‹Ρ€Π΅Ρ…Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΎΠ½Π°Π»ΡŒΠ½ΠΎΠΌ ΠΊΠ°Π»ΡŒΠΊΡƒΠ»ΡΡ‚ΠΎΡ€Π΅, Π° Ρ‚Π°ΠΊΠΆΠ΅ опСрация дСлСния ΠΏΠΎ ΠΌΠΎΠ΄ΡƒΠ»ΡŽ (%). ΠšΡ€Π°Ρ‚ΠΊΠΎΠ΅ описаниС арифмСтичСских ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΉ ΠΏΡ€ΠΈΠ²Π΅Π΄Π΅Π½ΠΎ Π² Ρ‚Π°Π±Π»ΠΈΡ†Π΅:

АрифмСтичСскиС ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΈ

ΠžΠΏΠ΅Ρ€Π°Ρ†ΠΈΡΠžΠΏΠΈΡΠ°Π½ΠΈΠ΅
+Π’ΠΎΠ·Π²Ρ€Π°Ρ‰Π°Π΅Ρ‚ сумму Π·Π½Π°Ρ‡Π΅Π½ΠΈΠΉ Π΄Π²ΡƒΡ… своих ΠΎΠΏΠ΅Ρ€Π°Π½Π΄ΠΎΠ²
Если ΠΈΠΌΠ΅ΡŽΡ‚ΡΡ Π΄Π²Π° ΠΎΠΏΠ΅Ρ€Π°Π½Π΄Π°, Ρ‚ΠΎ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ ΠΏΡ€Π°Π²ΠΎΠ³ΠΎ ΠΎΠΏΠ΅Ρ€Π°Π½Π΄Π° вычитаСтся ΠΈΠ· значСния Π»Π΅Π²ΠΎΠ³ΠΎ. Если имССтся Ρ‚ΠΎΠ»ΡŒΠΊΠΎ ΠΏΡ€Π°Π²Ρ‹ΠΉ ΠΎΠΏΠ΅Ρ€Π°Π½Π΄, Ρ‚ΠΎ опСрация Π²ΠΎΠ·Π²Ρ€Π°Ρ‰Π°Π΅Ρ‚ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ этого ΠΎΠΏΠ΅Ρ€Π°Π½Π΄Π° с ΠΎΠ±Ρ€Π°Ρ‚Π½Ρ‹ΠΌ Π·Π½Π°ΠΊΠΎΠΌ
*Π’ΠΎΠ·Π²Ρ€Π°Ρ‰Π°Π΅Ρ‚ ΠΏΡ€ΠΎΠΈΠ·Π²Π΅Π΄Π΅Π½ΠΈΠ΅ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠΉ Π΄Π²ΡƒΡ… своих ΠΎΠΏΠ΅Ρ€Π°Π½Π΄ΠΎΠ²
/Π’ΠΎΠ·Π²Ρ€Π°Ρ‰Π°Π΅Ρ‚ Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚ дСлСния с ΠΏΠ»Π°Π²Π°ΡŽΡ‰Π΅ΠΉ Ρ‚ΠΎΡ‡ΠΊΠΎΠΉ значСния Π»Π΅Π²ΠΎΠ³ΠΎ ΠΎΠΏΠ΅Ρ€Π°Π½Π΄Π° Π½Π° Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ ΠΏΡ€Π°Π²ΠΎΠ³ΠΎ ΠΎΠΏΠ΅Ρ€Π°Π½Π΄Π°
%Π’ΠΎΠ·Π²Ρ€Π°Ρ‰Π°Π΅Ρ‚ остаток ΠΎΡ‚ цСлочислСнного дСлСния значСния Π»Π΅Π²ΠΎΠ³ΠΎ ΠΎΠΏΠ΅Ρ€Π°Π½Π΄Π° Π½Π° Π°Π±ΡΠΎΠ»ΡŽΡ‚Π½ΠΎΠ΅ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ ΠΏΡ€Π°Π²ΠΎΠ³ΠΎ ΠΎΠΏΠ΅Ρ€Π°Π½Π΄Π°

ΠŸΡ€ΠΈ использовании Π² ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ΅ ΠΏΠ΅Ρ€Π²Ρ‹Ρ… Ρ‚Ρ€Π΅Ρ… описанных Π²Ρ‹ΡˆΠ΅ арифмСтичСских ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΉ (+,-,*) слСдуСт ΡƒΡ‡ΠΈΡ‚Ρ‹Π²Π°Ρ‚ΡŒ, Ρ‡Ρ‚ΠΎ ΠΏΡ€ΠΈ Π²Ρ‹ΠΏΠΎΠ»Π½Π΅Π½ΠΈΠΈ этих ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΉ происходит распространСниС Ρ‚ΠΈΠΏΠ° ΠΎΡ‚ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠΉ с ΠΏΠ»Π°Π²Π°ΡŽΡ‰Π΅ΠΉ Ρ‚ΠΎΡ‡ΠΊΠΎΠΉ Π΄Π²ΠΎΠΉΠ½ΠΎΠΉ точности ΠΊ цСлочислСнным значСниям. Под этим подразумСваСтся ΡΠ»Π΅Π΄ΡƒΡŽΡ‰Π΅Π΅: Ссли ΠΎΠ±Π° ΠΎΠΏΠ΅Ρ€Π°Π½Π΄Π° ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΈ ΡΠ²Π»ΡΡŽΡ‚ΡΡ Ρ†Π΅Π»Ρ‹ΠΌΠΈ числами, Ρ‚ΠΎ Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚ΠΎΠΌ становится Ρ†Π΅Π»ΠΎΠ΅ число, Π° Ссли хотя Π±Ρ‹ ΠΎΠ΄ΠΈΠ½ ΠΈΠ· ΠΎΠΏΠ΅Ρ€Π°Π½Π΄ΠΎΠ² прСдставляСт собой число с ΠΏΠ»Π°Π²Π°ΡŽΡ‰Π΅ΠΉ Ρ‚ΠΎΡ‡ΠΊΠΎΠΉ Π΄Π²ΠΎΠΉΠ½ΠΎΠΉ точности, Ρ‚ΠΎ Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚ΠΎΠΌ становится число с ΠΏΠ»Π°Π²Π°ΡŽΡ‰Π΅ΠΉ Ρ‚ΠΎΡ‡ΠΊΠΎΠΉ Π΄Π²ΠΎΠΉΠ½ΠΎΠΉ точности. Π’Π°ΠΊΠΎΠ³ΠΎ ΠΆΠ΅ Ρ€ΠΎΠ΄Π° распространСниС Ρ‚ΠΈΠΏΠ° происходит ΠΈ ΠΏΡ€ΠΈ Π²Ρ‹ΠΏΠΎΠ»Π½Π΅Π½ΠΈΠΈ ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΈ дСлСния; ΠΊΡ€ΠΎΠΌΠ΅ Ρ‚ΠΎΠ³ΠΎ, Π²ΠΎΠ·Π½ΠΈΠΊΠ°Π΅Ρ‚ Ρ‚Π°ΠΊΠΎΠΉ Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹ΠΉ эффСкт, Ρ‡Ρ‚ΠΎ Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚ становится числом с ΠΏΠ»Π°Π²Π°ΡŽΡ‰Π΅ΠΉ Ρ‚ΠΎΡ‡ΠΊΠΎΠΉ Π΄Π²ΠΎΠΉΠ½ΠΎΠΉ точности, Ссли Π΄Π΅Π»Π΅Π½ΠΈΠ΅ Π½Π΅ осущСствляСтся Π±Π΅Π· остатка (Π½Π°Ρ†Π΅Π»ΠΎ).

ΠžΠΏΠ΅Ρ€Π°Ρ†ΠΈΡ дСлСния ΠΏΠΎ ΠΌΠΎΠ΄ΡƒΠ»ΡŽ (%) Π² языкС PHP ΠΏΡ€ΠΈΠ½ΠΈΠΌΠ°Π΅Ρ‚ цСлочислСнныС ΠΎΠΏΠ΅Ρ€Π°Π½Π΄Ρ‹, Π° Ссли эта опСрация примСняСтся ΠΊ числам с ΠΏΠ»Π°Π²Π°ΡŽΡ‰Π΅ΠΉ Ρ‚ΠΎΡ‡ΠΊΠΎΠΉ Π΄Π²ΠΎΠΉΠ½ΠΎΠΉ точности, Ρ‚ΠΎ эти числа ΠΏΡ€Π΅Π΄Π²Π°Ρ€ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎ ΠΏΡ€Π΅ΠΎΠ±Ρ€Π°Π·ΡƒΡŽΡ‚ΡΡ Π² Ρ†Π΅Π»Ρ‹Π΅ числа (ΠΏΡƒΡ‚Π΅ΠΌ отбрасывания Π΄Ρ€ΠΎΠ±Π½ΠΎΠΉ части). Π Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚ΠΎΠΌ Ρ‚Π°ΠΊΠΎΠΉ ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΈ всСгда являСтся Ρ†Π΅Π»ΠΎΠ΅ число.

ΠžΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΈ ΠΈΠ½ΠΊΡ€Π΅ΠΌΠ΅Π½Ρ‚Π° ΠΈ Π΄Π΅ΠΊΡ€Π΅ΠΌΠ΅Π½Ρ‚Π°

ΠžΠΏΠ΅Ρ€Π°Ρ†ΠΈΡ ΠΈΠ½ΠΊΡ€Π΅ΠΌΠ΅Π½Ρ‚Π° (++) примСняСтся для добавлСния Π΅Π΄ΠΈΠ½ΠΈΡ†Ρ‹ ΠΊ Π·Π½Π°Ρ‡Π΅Π½ΠΈΡŽ Ρ‚ΠΎΠΉ ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½ΠΎΠΉ, Π½Π° ΠΊΠΎΡ‚ΠΎΡ€ΡƒΡŽ распространяСтся эта опСрация, Π° опСрация Π΄Π΅ΠΊΡ€Π΅ΠΌΠ΅Π½Ρ‚Π° (—) Π²Ρ‹Ρ‡ΠΈΡ‚Π°Π΅Ρ‚ Π΅Π΄ΠΈΠ½ΠΈΡ†Ρƒ ΠΈΠ· значСния Ρ‚Π°ΠΊΠΎΠΉ ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½ΠΎΠΉ.

КаТдая ΠΈΠ· этих Π΄Π²ΡƒΡ… ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΉ ΠΈΠΌΠ΅Π΅Ρ‚ Π΄Π²Π΅ разновидности β€” ΡΡƒΡ„Ρ„ΠΈΠΊΡΠ½ΡƒΡŽ (Π² этой Ρ„ΠΎΡ€ΠΌΠ΅ Π·Π½Π°ΠΊ ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΈ помСщаСтся нСпосрСдствСнно вслСд Π·Π° ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½ΠΎΠΉ, Π½Π° ΠΊΠΎΡ‚ΠΎΡ€ΡƒΡŽ распространяСтся опСрация) ΠΈ ΠΏΡ€Π΅Ρ„ΠΈΠΊΡΠ½ΡƒΡŽ (Π² этой Ρ„ΠΎΡ€ΠΌΠ΅ Π·Π½Π°ΠΊ ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΈ помСщаСтся нСпосрСдствСнно ΠΏΠ΅Ρ€Π΅Π΄ ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½ΠΎΠΉ, Π½Π° ΠΊΠΎΡ‚ΠΎΡ€ΡƒΡŽ распространяСтся опСрация). ОбС разновидности ΠΈΠΌΠ΅ΡŽΡ‚ ΠΎΠ΄ΠΈΠ½ ΠΈ Ρ‚ΠΎΡ‚ ΠΆΠ΅ ΠΏΠΎΠ±ΠΎΡ‡Π½Ρ‹ΠΉ эффСкт, связанный с ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠ΅ΠΌ значСния ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½ΠΎΠΉ, Π½ΠΎ суффиксныС ΠΈ прСфиксныС ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΈ Π²ΠΎΠ·Π²Ρ€Π°Ρ‰Π°ΡŽΡ‚ Ρ€Π°Π·Π½Ρ‹Π΅ значСния ΠΏΡ€ΠΈ использовании Π² качСствС Π²Ρ‹Ρ€Π°ΠΆΠ΅Π½ΠΈΠΉ. Буффиксная опСрация дСйствуСт Ρ‚Π°ΠΊ, Ρ‡Ρ‚ΠΎ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½ΠΎΠΉ измСняСтся послС Π²ΠΎΠ·Π²Ρ€Π°Ρ‚Π° значСния выраТСния, Π° прСфиксная опСрация дСйствуСт Ρ‚Π°ΠΊΠΈΠΌ ΠΎΠ±Ρ€Π°Π·ΠΎΠΌ, Ρ‡Ρ‚ΠΎ Π²Π½Π°Ρ‡Π°Π»Π΅ измСняСтся Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅, Π° Π·Π°Ρ‚Π΅ΠΌ ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½ΠΎΠΉ возвращаСтся Π½ΠΎΠ²ΠΎΠ΅ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅. Π£ΠΊΠ°Π·Π°Π½Π½ΠΎΠ΅ Ρ€Π°Π·Π»ΠΈΡ‡ΠΈΠ΅ ΠΌΠΎΠΆΠ½ΠΎ ΠΎΠ±Π½Π°Ρ€ΡƒΠΆΠΈΡ‚ΡŒ, ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡ ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΈ Π΄Π΅ΠΊΡ€Π΅ΠΌΠ΅Π½Ρ‚Π° ΠΈ ΠΈΠ½ΠΊΡ€Π΅ΠΌΠ΅Π½Ρ‚Π° Π² ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€Π°Ρ… присваивания:

ΠŸΡ€ΠΈΠ²Π΅Π΄Π΅Π½Π½Ρ‹Π΅ ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€Ρ‹ Ρ„ΠΎΡ€ΠΌΠΈΡ€ΡƒΡŽΡ‚ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠΉ Π²Ρ‹Π²ΠΎΠ΄ Π² ΠΎΠΊΠ½Π΅ Π±Ρ€Π°ΡƒΠ·Π΅Ρ€Π°:

ΠœΠ°Ρ‚Π΅ΠΌΠ°Ρ‚ΠΈΡ‡Π΅ΡΠΊΠΈΠ΅ ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΈ Π² php. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ Ρ„ΠΎΡ‚ΠΎ ΠœΠ°Ρ‚Π΅ΠΌΠ°Ρ‚ΠΈΡ‡Π΅ΡΠΊΠΈΠ΅ ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΈ Π² php. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΡƒ ΠœΠ°Ρ‚Π΅ΠΌΠ°Ρ‚ΠΈΡ‡Π΅ΡΠΊΠΈΠ΅ ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΈ Π² php. ΠšΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° ΠΏΡ€ΠΎ ΠœΠ°Ρ‚Π΅ΠΌΠ°Ρ‚ΠΈΡ‡Π΅ΡΠΊΠΈΠ΅ ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΈ Π² php. Π€ΠΎΡ‚ΠΎ ΠœΠ°Ρ‚Π΅ΠΌΠ°Ρ‚ΠΈΡ‡Π΅ΡΠΊΠΈΠ΅ ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΈ Π² phpΠžΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΈ ΠΈΠ½ΠΊΡ€Π΅ΠΌΠ΅Π½Ρ‚Π°

ΠžΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΈ присваивания

ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ сокращСнно прСдставлСн Ρ‚Π°ΠΊΠΈΠΌ

ΠŸΡ€ΠΎΡΡ‚Ρ‹Π΅ матСматичСскиС Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ

Π‘Π»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠΉ этап услоТнСния ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ ΠΏΠΎ ΡΡ€Π°Π²Π½Π΅Π½ΠΈΡŽ с Ρ‚ΠΎΠΉ, Π² ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΉ ΠΏΡ€ΠΈΠΌΠ΅Π½ΡΡŽΡ‚ΡΡ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ арифмСтичСскиС ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΈ, состоит Π² использовании всСвозмоТных Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΉ. Π€ΡƒΠ½ΠΊΡ†ΠΈΠΈ ΠΏΠΎΠ·Π²ΠΎΠ»ΡΡŽΡ‚ Π²Ρ‹ΠΏΠΎΠ»Π½ΡΡ‚ΡŒ Ρ‚Π°ΠΊΠΈΠ΅ Π·Π°Π΄Π°Ρ‡ΠΈ, ΠΊΠ°ΠΊ ΠΏΡ€Π΅ΠΎΠ±Ρ€Π°Π·ΠΎΠ²Π°Π½ΠΈΠ΅ ΠΈΠ· ΠΎΠ΄Π½ΠΎΠ³ΠΎ числового Ρ‚ΠΈΠΏΠ° Π² Π΄Ρ€ΡƒΠ³ΠΎΠΉ (см. ΡΡ‚Π°Ρ‚ΡŒΡŽ «Π’ΠΈΠΏΡ‹ Π΄Π°Π½Π½Ρ‹Ρ…») ΠΈ поиск минимального ΠΈΠ»ΠΈ максимального числа Π²ΠΎ мноТСствС чисСл. Π’ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰Π΅ΠΉ Ρ‚Π°Π±Π»ΠΈΡ†Π΅ прСдставлСны простыС матСматичСскиС Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ:

ΠŸΡ€ΠΎΡΡ‚Ρ‹Π΅ матСматичСскиС Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ PHP

Π€ΡƒΠ½ΠΊΡ†ΠΈΡΠžΠΏΠΈΡΠ°Π½ΠΈΠ΅
floor()ΠŸΡ€ΠΈΠ½ΠΈΠΌΠ°Π΅Ρ‚ СдинствСнный фактичСский ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ (ΠΊΠ°ΠΊ ΠΏΡ€Π°Π²ΠΈΠ»ΠΎ, число с ΠΏΠ»Π°Π²Π°ΡŽΡ‰Π΅ΠΉ Ρ‚ΠΎΡ‡ΠΊΠΎΠΉ Π΄Π²ΠΎΠΉΠ½ΠΎΠΉ точности) ΠΈ Π²ΠΎΠ·Π²Ρ€Π°Ρ‰Π°Π΅Ρ‚ наибольшСС Ρ†Π΅Π»ΠΎΠ΅ число, ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ΅ мСньшС ΠΈΠ»ΠΈ Ρ€Π°Π²Π½ΠΎ этому фактичСскому ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€Ρƒ (ΠΎΠΊΡ€ΡƒΠ³Π»Π΅Π½ΠΈΠ΅ Π² ΠΌΠ΅Π½ΡŒΡˆΡƒΡŽ сторону)
ceil()Имя этой Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ прСдставляСт собой сокращСниС ΠΎΡ‚ слова ceiling (ΠΏΠΎΡ‚ΠΎΠ»ΠΎΠΊ). Ѐункция ΠΏΡ€ΠΈΠ½ΠΈΠΌΠ°Π΅Ρ‚ СдинствСнный фактичСский ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ (ΠΊΠ°ΠΊ ΠΏΡ€Π°Π²ΠΈΠ»ΠΎ, число с ΠΏΠ»Π°Π²Π°ΡŽΡ‰Π΅ΠΉ Ρ‚ΠΎΡ‡ΠΊΠΎΠΉ Π΄Π²ΠΎΠΉΠ½ΠΎΠΉ точности) ΠΈ Π²ΠΎΠ·Π²Ρ€Π°Ρ‰Π°Π΅Ρ‚ наимСньшСС Ρ†Π΅Π»ΠΎΠ΅ число, ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ΅ большС ΠΈΠ»ΠΈ Ρ€Π°Π²Π½ΠΎ этому фактичСскому ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€Ρƒ (ΠΎΠΊΡ€ΡƒΠ³Π»Π΅Π½ΠΈΠ΅ Π² Π±ΠΎΠ»ΡŒΡˆΡƒΡŽ сторону)
round()ΠŸΡ€ΠΈΠ½ΠΈΠΌΠ°Π΅Ρ‚ СдинствСнный фактичСский ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ (ΠΊΠ°ΠΊ ΠΏΡ€Π°Π²ΠΈΠ»ΠΎ, число с ΠΏΠ»Π°Π²Π°ΡŽΡ‰Π΅ΠΉ Ρ‚ΠΎΡ‡ΠΊΠΎΠΉ Π΄Π²ΠΎΠΉΠ½ΠΎΠΉ точности) ΠΈ Π²ΠΎΠ·Π²Ρ€Π°Ρ‰Π°Π΅Ρ‚ блиТайшСС Ρ†Π΅Π»ΠΎΠ΅ число
abs()ΠœΠΎΠ΄ΡƒΠ»ΡŒ числа. Если СдинствСнный числовой фактичСский ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ ΠΈΠΌΠ΅Π΅Ρ‚ ΠΎΡ‚Ρ€ΠΈΡ†Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎΠ΅ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅, Ρ‚ΠΎ функция Π²ΠΎΠ·Π²Ρ€Π°Ρ‰Π°Π΅Ρ‚ ΡΠΎΠΎΡ‚Π²Π΅Ρ‚ΡΡ‚Π²ΡƒΡŽΡ‰Π΅Π΅ ΠΏΠΎΠ»ΠΎΠΆΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΠ΅ число; Ссли фактичСский ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ являСтся ΠΏΠΎΠ»ΠΎΠΆΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹ΠΌ, Ρ‚ΠΎ функция Π²ΠΎΠ·Π²Ρ€Π°Ρ‰Π°Π΅Ρ‚ сам фактичСский ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€
min()ΠŸΡ€ΠΈΠ½ΠΈΠΌΠ°Π΅Ρ‚ любоС количСство числовых фактичСских ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ΠΎΠ² (Π½ΠΎ Π½Π΅ ΠΌΠ΅Π½Π΅Π΅ ΠΎΠ΄Π½ΠΎΠ³ΠΎ) ΠΈ Π²ΠΎΠ·Π²Ρ€Π°Ρ‰Π°Π΅Ρ‚ наимСньшСС ΠΈΠ· всСх Π·Π½Π°Ρ‡Π΅Π½ΠΈΠΉ фактичСских ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ΠΎΠ²
max()ΠŸΡ€ΠΈΠ½ΠΈΠΌΠ°Π΅Ρ‚ любоС количСство числовых фактичСских ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ΠΎΠ² (Π½ΠΎ Π½Π΅ ΠΌΠ΅Π½Π΅Π΅ ΠΎΠ΄Π½ΠΎΠ³ΠΎ) ΠΈ Π²ΠΎΠ·Π²Ρ€Π°Ρ‰Π°Π΅Ρ‚ наибольшСС ΠΈΠ· всСх Π·Π½Π°Ρ‡Π΅Π½ΠΈΠΉ фактичСских ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ΠΎΠ²

НапримСр, Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰Π΅Π³ΠΎ выраТСния Ρ€Π°Π²Π΅Π½ 3, ΠΏΠΎΡΠΊΠΎΠ»ΡŒΠΊΡƒ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ ΠΊΠ°ΠΆΠ΄ΠΎΠ³ΠΎ выраТСния с Π²Ρ‹Π·ΠΎΠ²ΠΎΠΌ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ Ρ‚Π°ΠΊΠΆΠ΅ Ρ€Π°Π²Π½ΠΎ 3:

Π’Ρ‹Ρ€Π°Π±ΠΎΡ‚ΠΊΠ° случайных чисСл

Π’ языкС PHP ΠΏΡ€ΠΈΠΌΠ΅Π½ΡΡŽΡ‚ΡΡ Π΄Π²Π° Π³Π΅Π½Π΅Ρ€Π°Ρ‚ΠΎΡ€Π° случайных чисСл (Π²Ρ‹Π·Ρ‹Π²Π°Π΅ΠΌΡ‹Ρ… соотвСтствСнно с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΉ rand() ΠΈ mt_rand()). Π‘ ΠΊΠ°ΠΆΠ΄Ρ‹ΠΌ ΠΈΠ· этих Π³Π΅Π½Π΅Ρ€Π°Ρ‚ΠΎΡ€ΠΎΠ² связаны ΠΏΠΎ Ρ‚Ρ€ΠΈ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ ΠΎΠ΄ΠΈΠ½Π°ΠΊΠΎΠ²ΠΎΠ³ΠΎ назначСния: функция задания Π½Π°Ρ‡Π°Π»ΡŒΠ½ΠΎΠ³ΠΎ значСния (srand() ΠΈ mt_srand()), сама функция получСния случайного числа ΠΈ функция, ΠΎΡΡƒΡ‰Π΅ΡΡ‚Π²Π»ΡΡŽΡ‰Π°Ρ Π²Ρ‹Π±ΠΎΡ€ΠΊΡƒ наибольшСго Ρ†Π΅Π»ΠΎΠ³ΠΎ числа, ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ΅ ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ Π²ΠΎΠ·Π²Ρ€Π°Ρ‰Π΅Π½ΠΎ Π³Π΅Π½Π΅Ρ€Π°Ρ‚ΠΎΡ€ΠΎΠΌ ((getrandmax() ΠΈ mt_getrandmax())). Π€ΡƒΠ½ΠΊΡ†ΠΈΠΈ getrandmax() ΠΈ mt_getrandmax() Π²ΠΎΠ·Π²Ρ€Π°Ρ‰Π°ΡŽΡ‚ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ наибольшСго числа, ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ΅ ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ Π²ΠΎΠ·Π²Ρ€Π°Ρ‰Π΅Π½ΠΎ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠ΅ΠΉ rand() ΠΈΠ»ΠΈ mt_rand(), Π½Π° ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΠ°Ρ… Windows это Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ ΠΎΠ³Ρ€Π°Π½ΠΈΡ‡Π΅Π½ΠΎ Π²Π΅Π»ΠΈΡ‡ΠΈΠ½ΠΎΠΉ 32768.

Π’Ρ‹Π±ΠΎΡ€ ΠΊΠΎΠ½ΠΊΡ€Π΅Ρ‚Π½ΠΎΠΉ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ Π²Ρ‹Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ псСвдослучайных чисСл, которая ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ Π² Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ rand(), ΠΌΠΎΠΆΠ΅Ρ‚ Π·Π°Π²ΠΈΡΠ΅Ρ‚ΡŒ ΠΎΡ‚ Ρ‚ΠΎΠ³ΠΎ, с ΠΊΠ°ΠΊΠΈΠΌΠΈ ΠΈΠΌΠ΅Π½Π½ΠΎ Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠ°ΠΌΠΈ Π±Ρ‹Π» ΠΎΡ‚ΠΊΠΎΠΌΠΏΠΈΠ»ΠΈΡ€ΠΎΠ²Π°Π½ ΠΈΠ½Ρ‚Π΅Ρ€ΠΏΡ€Π΅Ρ‚Π°Ρ‚ΠΎΡ€ PHP. Π’ ΠΎΡ‚Π»ΠΈΡ‡ΠΈΠ΅ ΠΎΡ‚ этого Π² Π³Π΅Π½Π΅Ρ€Π°Ρ‚ΠΎΡ€Π΅ mt_rand() всСгда ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ ΠΎΠ΄Π½Π° ΠΈ Ρ‚Π° ΠΆΠ΅ функция Π²Ρ‹Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ псСвдослучайных чисСл (mt β€” сокращСниС ΠΎΡ‚ Mersenne Twister), ΠΏΡ€ΠΈΡ‡Π΅ΠΌ Π°Π²Ρ‚ΠΎΡ€ ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΈΠ²Π½ΠΎΠΉ Π΄ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚Π°Ρ†ΠΈΠΈ ΠΊ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ mt_rand() ΡƒΡ‚Π²Π΅Ρ€ΠΆΠ΄Π°Π΅Ρ‚, Ρ‡Ρ‚ΠΎ эта функция ΠΊ Ρ‚ΠΎΠΌΡƒ ΠΆΠ΅ являСтся Π±ΠΎΠ»Π΅Π΅ Π±Ρ‹ΡΡ‚Ρ€ΠΎΠ΄Π΅ΠΉΡΡ‚Π²ΡƒΡŽΡ‰Π΅ΠΉ ΠΈ «Π±ΠΎΠ»Π΅Π΅ случайной» (с Ρ‚ΠΎΡ‡ΠΊΠΈ зрСния ΠΊΡ€ΠΈΠΏΡ‚ΠΎΠ³Ρ€Π°Ρ„ΠΈΠΈ), Ρ‡Π΅ΠΌ rand(). Π£ нас Π½Π΅Ρ‚ оснований ΡΠΎΠΌΠ½Π΅Π²Π°Ρ‚ΡŒΡΡ Π² истинности этих ΡƒΡ‚Π²Π΅Ρ€ΠΆΠ΄Π΅Π½ΠΈΠΉ, поэтому ΠΌΡ‹ ΠΏΡ€Π΅Π΄ΠΏΠΎΡ‡ΠΈΡ‚Π°Π΅ΠΌ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΡŽ mt_rand(), Π° Π½Π΅ rand().

ΠŸΡ€ΠΈ использовании Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ… вСрсий PHP для Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ… ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌ создаСтся Π²ΠΏΠ΅Ρ‡Π°Ρ‚Π»Π΅Π½ΠΈΠ΅, Ρ‡Ρ‚ΠΎ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ rand() ΠΈ mt_rand() Π²Ρ‹Ρ€Π°Π±Π°Ρ‚Ρ‹Π²Π°ΡŽΡ‚ Π½Π° ΠΏΠ΅Ρ€Π²Ρ‹ΠΉ взгляд Π²ΠΏΠΎΠ»Π½Π΅ ΠΏΡ€ΠΈΠ΅ΠΌΠ»Π΅ΠΌΡ‹Π΅ случайныС числа, Π΄Π°ΠΆΠ΅ Π±Π΅Π· ΠΏΡ€Π΅Π΄Π²Π°Ρ€ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΠ³ΠΎ задания Π½Π°Ρ‡Π°Π»ΡŒΠ½ΠΎΠ³ΠΎ значСния. Но Ρ‚Π°ΠΊΠΎΠΌΡƒ Π²ΠΏΠ΅Ρ‡Π°Ρ‚Π»Π΅Π½ΠΈΡŽ Π½Π΅ слСдуСт Π΄ΠΎΠ²Π΅Ρ€ΡΡ‚ΡŒ. Π’ΠΎ-ΠΏΠ΅Ρ€Π²Ρ‹Ρ…, ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹, Π² ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ… ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽΡ‚ΡΡ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ Π²Ρ‹Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ случайных чисСл Π±Π΅Π· задания Π½Π°Ρ‡Π°Π»ΡŒΠ½ΠΎΠ³ΠΎ значСния, Π½Π΅Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎ Π»Π΅Π³ΠΊΠΎ ΠΏΠ΅Ρ€Π΅Π½ΠΎΡΠΈΡ‚ΡŒ Π½Π° Π΄Ρ€ΡƒΠ³ΠΈΠ΅ ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΡ‹, Π°, Π²ΠΎ-Π²Ρ‚ΠΎΡ€Ρ‹Ρ…, надСТная Ρ€Π°Π±ΠΎΡ‚Π° ΡƒΠΊΠ°Π·Π°Π½Π½Ρ‹Ρ… Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΉ Π±Π΅Π· задания Π½Π°Ρ‡Π°Π»ΡŒΠ½ΠΎΠ³ΠΎ значСния Π½Π΅ гарантируСтся.

Π’ΠΈΠΏΠΈΡ‡Π½Ρ‹ΠΉ способ задания Π½Π°Ρ‡Π°Π»ΡŒΠ½ΠΎΠ³ΠΎ значСния для любого ΠΈΠ· Π³Π΅Π½Π΅Ρ€Π°Ρ‚ΠΎΡ€ΠΎΠ² случайных чисСл PHP (с использованиСм Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ mt_srand() ΠΈΠ»ΠΈ srand()) Π·Π°ΠΊΠ»ΡŽΡ‡Π°Π΅Ρ‚ΡΡ Π² ΡΠ»Π΅Π΄ΡƒΡŽΡ‰Π΅ΠΌ:

Π’ этом ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€Π΅ задаСтся Π½Π°Ρ‡Π°Π»ΡŒΠ½ΠΎΠ΅ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ Π³Π΅Π½Π΅Ρ€Π°Ρ‚ΠΎΡ€Π°, Ρ€Π°Π²Π½ΠΎΠ΅ количСству микросСкунд, ΠΈΡΡ‚Π΅ΠΊΡˆΠΈΡ… ΠΊ Π΄Π°Π½Π½ΠΎΠΌΡƒ Π²Ρ€Π΅ΠΌΠ΅Π½ΠΈ с ΠΌΠΎΠΌΠ΅Π½Ρ‚Π° отсчСта послСднСй Ρ†Π΅Π»ΠΎΠΉ сСкунды. (ΠŸΡ€ΠΈΠ²Π΅Π΄Π΅Π½ΠΈΠ΅ Ρ‚ΠΈΠΏΠ° ΠΊ Ρ‚ΠΈΠΏΡƒ double Π² этом ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€Π΅ Π΄Π΅ΠΉΡΡ‚Π²ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎ Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ, ΠΏΠΎΡΠΊΠΎΠ»ΡŒΠΊΡƒ функция microtime() Π²ΠΎΠ·Π²Ρ€Π°Ρ‰Π°Π΅Ρ‚ строку, которая рассматриваСтся ΠΊΠ°ΠΊ Ρ†Π΅Π»ΠΎΠ΅ число Π² ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΈ умноТСния, Π½ΠΎ Π½Π΅ Π² ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΈ ΠΏΠ΅Ρ€Π΅Π΄Π°Ρ‡ΠΈ ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ΠΎΠ² Π² Ρ„ΡƒΠ½ΠΊΡ†ΠΈΡŽ.) Π Π΅ΠΊΠΎΠΌΠ΅Π½Π΄ΡƒΠ΅ΠΌ Ρ‡ΠΈΡ‚Π°Ρ‚Π΅Π»ΡŽ Π²Π²ΠΎΠ΄ΠΈΡ‚ΡŒ ΡƒΠΊΠ°Π·Π°Π½Π½Ρ‹ΠΉ ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€ задания Π½Π°Ρ‡Π°Π»ΡŒΠ½ΠΎΠ³ΠΎ значСния, Π΄Π°ΠΆΠ΅ Ссли Π΅ΠΌΡƒ Π½Π΅ совсСм понятно Π½Π°Π·Π½Π°Ρ‡Π½ΠΈΠ΅ этого ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€Π°; достаточно просто ΠΏΠΎΠΌΠ΅ΡΡ‚ΠΈΡ‚ΡŒ Π΄Π°Π½Π½Ρ‹ΠΉ ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€ Π½Π° ΠΊΠ°ΠΆΠ΄ΡƒΡŽ страницу PHP, всСго лишь ΠΎΠ΄ΠΈΠ½ Ρ€Π°Π·, ΠΏΠ΅Ρ€Π΅Π΄ использованиСм ΡΠΎΠΎΡ‚Π²Π΅Ρ‚ΡΡ‚Π²ΡƒΡŽΡ‰Π΅ΠΉ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ mt_rand() ΠΈΠ»ΠΈ rand(), ΠΈ этот ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€ Π±ΡƒΠ΄Π΅Ρ‚ Π³Π°Ρ€Π°Π½Ρ‚ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ, Ρ‡Ρ‚ΠΎ отправная Ρ‚ΠΎΡ‡ΠΊΠ° измСнится ΠΈ поэтому ΠΊΠ°ΠΆΠ΄Ρ‹ΠΉ Ρ€Π°Π· Π±ΡƒΠ΄ΡƒΡ‚ Π²Ρ‹Ρ€Π°Π±Π°Ρ‚Ρ‹Π²Π°Ρ‚ΡŒΡΡ Ρ€Π°Π·Π»ΠΈΡ‡Π½Ρ‹Π΅ случайныС ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΠΈ.

Π”Π°Π½Π½Ρ‹ΠΉ ΠΊΠΎΠ½ΠΊΡ€Π΅Ρ‚Π½Ρ‹ΠΉ ΠΌΠ΅Ρ‚ΠΎΠ΄ задания Π½Π°Ρ‡Π°Π»ΡŒΠ½ΠΎΠ³ΠΎ значСния Π±Ρ‹Π» Π³Π»ΡƒΠ±ΠΎΠΊΠΎ ΠΏΡ€ΠΎΠ΄ΡƒΠΌΠ°Π½ Ρ‚Π΅ΠΌΠΈ спСциалистами, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΏΠΎΠ»Π½ΠΎΡΡ‚ΡŒΡŽ ΠΏΠΎΠ½ΠΈΠΌΠ°ΡŽΡ‚ всС Π½ΡŽΠ°Π½ΡΡ‹ Π²Ρ‹Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ псСвдослучайных чисСл, поэтому, скорСС всСго, навсСгда останСтся Π»ΡƒΡ‡ΡˆΠΈΠΌ ΠΏΠΎ ΡΡ€Π°Π²Π½Π΅Π½ΠΈΡŽ с Π»ΡŽΠ±Ρ‹ΠΌΠΈ ΠΏΠΎΠΏΡ‹Ρ‚ΠΊΠ°ΠΌΠΈ ΠΊΠ°ΠΊΠΎΠ³ΠΎ-Ρ‚ΠΎ ΠΎΡ‚Π΄Π΅Π»ΡŒΠ½ΠΎΠ³ΠΎ программиста ΠΏΡ€ΠΈΠ΄ΡƒΠΌΠ°Ρ‚ΡŒ Ρ‡Ρ‚ΠΎ-Ρ‚ΠΎ Π±ΠΎΠ»Π΅Π΅ «Π·Π°ΠΊΠΎΠ²Ρ‹Ρ€ΠΈΡΡ‚ΠΎΠ΅».

ΠžΡ‡Π΅Π²ΠΈΠ΄Π½ΠΎ, Ρ‡Ρ‚ΠΎ ΡƒΠΊΠ°Π·Π°Π½Π½Ρ‹Π΅ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ Π²Ρ‹Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ псСвдослучайных чисСл Π²ΠΎΠ·Π²Ρ€Π°Ρ‰Π°ΡŽΡ‚ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Ρ†Π΅Π»Ρ‹Π΅ числа, Π½ΠΎ случайноС Ρ†Π΅Π»ΠΎΠ΅ число ΠΈΠ· Π·Π°Π΄Π°Π½Π½ΠΎΠ³ΠΎ Π΄ΠΈΠ°ΠΏΠ°Π·ΠΎΠ½Π° ΠΌΠΎΠΆΠ½ΠΎ Π»Π΅Π³ΠΊΠΎ ΠΏΡ€Π΅ΠΎΠ±Ρ€Π°Π·ΠΎΠ²Π°Ρ‚ΡŒ Π² ΡΠΎΠΎΡ‚Π²Π΅Ρ‚ΡΡ‚Π²ΡƒΡŽΡ‰Π΅Π΅ число с ΠΏΠ»Π°Π²Π°ΡŽΡ‰Π΅ΠΉ Ρ‚ΠΎΡ‡ΠΊΠΎΠΉ (скаТСм, Π² число ΠΈΠ· Π΄ΠΈΠ°ΠΏΠ°Π·ΠΎΠ½Π° ΠΎΡ‚ 0.0 Π΄ΠΎ 1.0 Π²ΠΊΠ»ΡŽΡ‡ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎ) с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ выраТСния Π½Π°ΠΏΠΎΠ΄ΠΎΠ±ΠΈΠ΅ rand() / getrandmax(). ПослС этого ΡƒΠΊΠ°Π·Π°Π½Π½Ρ‹ΠΉ Π΄ΠΈΠ°ΠΏΠ°Π·ΠΎΠ½ ΠΌΠΎΠΆΠ½ΠΎ ΠΌΠ°ΡΡˆΡ‚Π°Π±ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ ΠΈ ΡΠ΄Π²ΠΈΠ³Π°Ρ‚ΡŒ ΠΏΠΎ ΠΌΠ΅Ρ€Π΅ нСобходимости. НиТС ΠΏΠΎΠΊΠ°Π·Π°Π½ ΠΏΡ€ΠΈΠΌΠ΅Ρ€:

ΠŸΠΎΠΏΡ€ΠΎΠ±ΡƒΠΉΡ‚Π΅ ΠΎΠ±Π½ΠΎΠ²ΠΈΡ‚ΡŒ страницу с этим ΠΊΠΎΠ΄ΠΎΠΌ нСсколько Ρ€Π°Π·, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΡƒΠ±Π΅Π΄ΠΈΡ‚ΡŒΡΡ Π² Π³Π΅Π½Π΅Ρ€Π°Ρ†ΠΈΠΈ случайных чисСл.

ΠœΠ°Ρ‚Π΅ΠΌΠ°Ρ‚ΠΈΡ‡Π΅ΡΠΊΠΈΠ΅ константы

Π’ PHP вСрсии 4.0 сущСствовала Ρ‚ΠΎΠ»ΡŒΠΊΠΎ ΠΎΠ΄Π½Π° матСматичСская константа, описанная Π² Π΄ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚Π°Ρ†ΠΈΠΈ β€” M_PI (Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ числа Ο€, прСдставлСнноС Π² Π²ΠΈΠ΄Π΅ числа с ΠΏΠ»Π°Π²Π°ΡŽΡ‰Π΅ΠΉ Ρ‚ΠΎΡ‡ΠΊΠΎΠΉ Π΄Π²ΠΎΠΉΠ½ΠΎΠΉ точности). А начиная с вСрсии PHP 4.0.2 Π±Ρ‹Π»ΠΎ Π²Π²Π΅Π΄Π΅Π½ΠΎ ΠΌΠ½ΠΎΠ³ΠΎ Π½ΠΎΠ²Ρ‹Ρ… констант. Π‘ΠΎΠ»ΡŒΡˆΠΈΠ½ΡΡ‚Π²ΠΎ этих Π½ΠΎΠ²Ρ‹Ρ… констант ΠΎΡ‚Π½ΠΎΡΠΈΠ»ΠΈΡΡŒ ΠΊ числу Ο€ (ΠΈΠ»ΠΈ ΠΊ ΠΊΡ€Π°Ρ‚Π½Ρ‹ΠΌ Π΅ΠΌΡƒ значСниям), числу e (ΠΈΠ»ΠΈ ΠΊ ΠΊΡ€Π°Ρ‚Π½Ρ‹ΠΌ Π΅ΠΌΡƒ значСниям), Π° Ρ‚Π°ΠΊΠΆΠ΅ ΠΊ ΠΊΠ²Π°Π΄Ρ€Π°Ρ‚Π½Ρ‹ΠΌ корням; ΠΊΡ€ΠΎΠΌΠ΅ Ρ‚ΠΎΠ³ΠΎ, Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ константы ΠΎΡ‚Π½ΠΎΡΠΈΠ»ΠΈΡΡŒ ΠΊ Π΄Ρ€ΡƒΠ³ΠΈΠΌ Ρ‚ΠΈΠΏΠ°ΠΌ. Но Π² ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΡ… выпусках ΠΏΠΎ ряду ΠΏΡ€ΠΈΡ‡ΠΈΠ½ список констант снова сократился Π΄ΠΎ ΡΡ€Π°Π²Π½ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎ нСбольшого количСства Π·Π°Ρ€Π°Π½Π΅Π΅ Π·Π°Π΄Π°Π½Π½Ρ‹Ρ… матСматичСских констант:

ΠœΠ°Ρ‚Π΅ΠΌΠ°Ρ‚ΠΈΡ‡Π΅ΡΠΊΠΈΠ΅ константы PHP

ΠšΠΎΠ½ΡΡ‚Π°Π½Ρ‚Π°ΠžΠΏΠΈΡΠ°Π½ΠΈΠ΅
M_PIΟ€
M_PI_2Ο€ / 2
M_PI_4Ο€ / 4
M_1_PI1 / Ο€
M_2_PI2 / Ο€
M_2_SQRTPI2 / sqrt(Ο€)
M_Ee
M_SQRT2sqrt(2)
M_SQRT1_21 / sqrt(2)
M_LOG2Elog2(e)
M_LOG10Elg(e)
M_LN2loge(2)
M_LN10loge(10)

ΠŸΡ€ΠΎΠ²Π΅Ρ€ΠΊΠ° Ρ„ΠΎΡ€ΠΌΠ°Ρ‚Π° чисСл

Π’ языкС PHP прСдусмотрСн ряд Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΉ, ΠΏΠΎΠ·Π²ΠΎΠ»ΡΡŽΡ‰ΠΈΡ… Π²Ρ‹ΠΏΠΎΠ»Π½ΡΡ‚ΡŒ ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΊΡƒ ΠΏΡ€Π°Π²ΠΈΠ»ΡŒΠ½ΠΎΡΡ‚ΠΈ прСдставлСния чисСл. НСсмотря Π½Π° Ρ‚ΠΎ Ρ‡Ρ‚ΠΎ Π² языкС PHP отсутствуСт строгий ΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»ΡŒ Ρ‚ΠΈΠΏΠΎΠ², рСкомСндуСтся Π² случаС нСобходимости ΠΏΡ€ΠΈΠΌΠ΅Π½ΡΡ‚ΡŒ Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΈΠ· этих ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΎΠΊ Π² ΠΊΠΎΠ΄Π΅, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΈΠΌΠ΅Ρ‚ΡŒ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚ΡŒ ΠΏΡ€ΠΎΠ³Π½ΠΎΠ·ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ характСристики ΠΏΠΎΠ»ΡƒΡ‡Π΅Π½Π½Ρ‹Ρ… Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚ΠΎΠ², Π° Ρ‚Π°ΠΊΠΆΠ΅ Π²Ρ‹Π±ΠΈΡ€Π°Ρ‚ΡŒ Π½Π°ΠΈΠ»ΡƒΡ‡ΡˆΠΈΠΉ способ ΠΈΡ… ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ.

Π‘ ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΉ is_int() ΠΈ is_float ΠΌΠΎΠΆΠ½ΠΎ ΠΎΠΏΡ€Π΅Π΄Π΅Π»ΠΈΡ‚ΡŒ являСтся Π»ΠΈ число Ρ†Π΅Π»Ρ‹ΠΌ ΠΈΠ»ΠΈ Π΄Ρ€ΠΎΠ±Π½Ρ‹ΠΌ. Π•Ρ‰Π΅ Π΄Π²Π΅ ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΊΠΈ ΡΠ²Π»ΡΡŽΡ‚ΡΡ Π½Π΅ΠΌΠ½ΠΎΠ³ΠΎ Π±ΠΎΠ»Π΅Π΅ слоТными: Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ is_finite() ΠΈ is_infinite() ΠΏΠΎΠ·Π²ΠΎΠ»ΡΡŽΡ‚ Π²Ρ‹ΠΏΠΎΠ»Π½ΠΈΡ‚ΡŒ ΠΈΠΌΠ΅Π½Π½ΠΎ Ρ‚Π΅ ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΊΠΈ, Π½Π° ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΡƒΠΊΠ°Π·Ρ‹Π²Π°ΡŽΡ‚ ΠΈΡ… ΠΈΠΌΠ΅Π½Π° (являСтся Π»ΠΈ число ΠΊΠΎΠ½Π΅Ρ‡Π½Ρ‹ΠΌ ΠΈΠ»ΠΈ бСсконСчным). Но, строго говоря, Π΄ΠΈΠ°ΠΏΠ°Π·ΠΎΠ½ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠΉ, Π½Π° ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Ρ€Π°ΡΠΏΡ€ΠΎΡΡ‚Ρ€Π°Π½ΡΡŽΡ‚ΡΡ эти Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ, Π½Π΅ ΠΌΠΎΠΆΠ΅Ρ‚ Π²ΠΊΠ»ΡŽΡ‡Π°Ρ‚ΡŒ Π°ΠΊΡ‚ΡƒΠ°Π»ΡŒΠ½ΠΎΠΉ бСсконСчности (ΠΈ ΠΌΠΎΠΆΠ΅Ρ‚ Π»ΠΈ Π²ΠΎΠΎΠ±Ρ‰Π΅ Π±Ρ‹Ρ‚ΡŒ ΠΏΡ€ΠΎΠ²Π΅Ρ€Π΅Π½ΠΎ, ΠΈΠΌΠ΅Π΅Ρ‚ Π»ΠΈ Ρ‡ΠΈΡΠ»ΡŽ бСсконСчно большоС Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅?). ВмСсто этого ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽΡ‚ΡΡ ΠΏΡ€Π΅Π΄Π΅Π»Ρ‹ Π΄ΠΈΠ°ΠΏΠ°Π·ΠΎΠ½Π° Π·Π½Π°Ρ‡Π΅Π½ΠΈΠΉ с ΠΏΠ»Π°Π²Π°ΡŽΡ‰Π΅ΠΉ Ρ‚ΠΎΡ‡ΠΊΠΎΠΉ, допустимыС Π² ΠΊΠΎΠ½ΠΊΡ€Π΅Ρ‚Π½ΠΎΠΉ систСмС.

НиТС ΠΏΠΎΠΊΠ°Π·Π°Π½ ΠΏΡ€ΠΈΠΌΠ΅Ρ€ использования этих Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΉ:

ΠŸΡ€Π΅ΠΎΠ±Ρ€Π°Π·ΠΎΠ²Π°Π½ΠΈΠ΅ систСм счислСния

По ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ Π² языкС PHP для прямого ΠΈ ΠΎΠ±Ρ€Π°Ρ‚Π½ΠΎΠ³ΠΎ прСобразования числовых Π·Π½Π°Ρ‡Π΅Π½ΠΈΠΉ ΠΈΠ· внСшнСго прСдставлСния Π²ΠΎ Π²Π½ΡƒΡ‚Ρ€Π΅Π½Π½Π΅Π΅ примСняСтся основаниС систСмы счислСния 10. ΠšΡ€ΠΎΠΌΠ΅ Ρ‚ΠΎΠ³ΠΎ, ΠΌΠΎΠΆΠ½ΠΎ ΡΠΎΠΎΠ±Ρ‰ΠΈΡ‚ΡŒ ΠΈΠ½Ρ‚Π΅Ρ€ΠΏΡ€Π΅Ρ‚Π°Ρ‚ΠΎΡ€Ρƒ PHP, Ρ‡Ρ‚ΠΎ Π²ΠΎ внСшнСм прСдставлСнии ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽΡ‚ΡΡ Π²ΠΎΡΡŒΠΌΠ΅Ρ€ΠΈΡ‡Π½Ρ‹Π΅ числа, Π·Π°Π΄Π°Π½Π½Ρ‹Π΅ ΠΏΠΎ основанию 8 (для этого ΠΏΠ΅Ρ€Π΅Π΄ числом Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ ввСсти Π²Π΅Π΄ΡƒΡ‰ΠΈΠΉ 0), ΠΈΠ»ΠΈ ΡˆΠ΅ΡΡ‚Π½Π°Π΄Ρ†Π°Ρ‚Π΅Ρ€ΠΈΡ‡Π½Ρ‹Π΅ числа, Π·Π°Π΄Π°Π½Π½Ρ‹Π΅ ΠΏΠΎ основанию 16 (для этого ΠΏΠ΅Ρ€Π΅Π΄ числом Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ ввСсти прСфикс 0x).

БСзусловно, послС прСобразования чисСл ΠΈΠ· внСшнСго прСдставлСния Π²ΠΎ Π²Π½ΡƒΡ‚Ρ€Π΅Π½Π½Π΅Π΅ ΠΎΠ½ΠΈ хранятся Π² памяти Π² Π΄Π²ΠΎΠΈΡ‡Π½ΠΎΠΌ Ρ„ΠΎΡ€ΠΌΠ°Ρ‚Π΅, Π° всС основныС арифмСтичСскиС ΠΈ матСматичСскиС вычислСния ΠΎΡΡƒΡ‰Π΅ΡΡ‚Π²Π»ΡΡŽΡ‚ΡΡ Π² самой ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΎΠ½Π½ΠΎΠΉ систСмС ΠΏΠΎ основанию 2. ΠšΡ€ΠΎΠΌΠ΅ Ρ‚ΠΎΠ³ΠΎ, Π² языкС PHP прСдусмотрСн ряд Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΉ для прСобразования чисСл ΠΈΠ· ΠΎΠ΄Π½ΠΎΠ³ΠΎ основания систСмы счислСния Π² Π΄Ρ€ΡƒΠ³ΠΎΠ΅. ΠžΠ±Ρ‰ΠΈΠ΅ свСдСния ΠΎΠ± этих функциях ΠΏΡ€ΠΈΠ²Π΅Π΄Π΅Π½Ρ‹ Π² Ρ‚Π°Π±Π»ΠΈΡ†Π΅ Π½ΠΈΠΆΠ΅:

Π€ΡƒΠ½ΠΊΡ†ΠΈΠΈ прСобразования систСм счислСния

Π€ΡƒΠ½ΠΊΡ†ΠΈΡΠžΠΏΠΈΡΠ°Π½ΠΈΠ΅
BinDec()ΠŸΡ€ΠΈΠ½ΠΈΠΌΠ°Π΅Ρ‚ СдинствСнный строковый ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€, ΠΏΡ€Π΅Π΄ΡΡ‚Π°Π²Π»ΡΡŽΡ‰ΠΈΠΉ собой Π΄Π²ΠΎΠΈΡ‡Π½ΠΎΠ΅ Ρ†Π΅Π»ΠΎΠ΅ число (число ΠΏΠΎ основанию 2), ΠΈ Π²ΠΎΠ·Π²Ρ€Π°Ρ‰Π°Π΅Ρ‚ строковоС прСдставлСниС этого числа ΠΏΠΎ основанию систСмы счислСния 10
DecBin()Аналогична BinDec(), Π½ΠΎ ΠΏΡ€Π΅ΠΎΠ±Ρ€Π°Π·ΡƒΠ΅Ρ‚ ΠΈΠ· основания систСмы счислСния 10 Π² основаниС систСмы счислСния 2
OctDec()Аналогична BinDec(), Π½ΠΎ ΠΏΡ€Π΅ΠΎΠ±Ρ€Π°Π·ΡƒΠ΅Ρ‚ ΠΈΠ· основания систСмы счислСния 8 Π² основаниС систСмы счислСния 10
DecOct()Аналогична BinDec(), Π½ΠΎ ΠΏΡ€Π΅ΠΎΠ±Ρ€Π°Π·ΡƒΠ΅Ρ‚ ΠΈΠ· основания систСмы счислСния 10 Π² основаниС систСмы счислСния 8
HexDec()Аналогична BinDec(), Π½ΠΎ ΠΏΡ€Π΅ΠΎΠ±Ρ€Π°Π·ΡƒΠ΅Ρ‚ ΠΈΠ· основания систСмы счислСния 16 Π² основаниС систСмы счислСния 10
DecHex()Аналогична BinDec(), Π½ΠΎ ΠΏΡ€Π΅ΠΎΠ±Ρ€Π°Π·ΡƒΠ΅Ρ‚ ΠΈΠ· основания систСмы счислСния 10 Π² основаниС систСмы счислСния 16
base_convert()ΠŸΡ€ΠΈΠ½ΠΈΠΌΠ°Π΅Ρ‚ строковый ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ (ΠΏΡ€Π΅Π΄ΡΡ‚Π°Π²Π»ΡΡŽΡ‰ΠΈΠΉ Ρ†Π΅Π»ΠΎΠ΅ число, ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ΅ ΠΏΠΎΠ΄Π»Π΅ΠΆΠΈΡ‚ ΠΏΡ€Π΅ΠΎΠ±Ρ€Π°Π·ΠΎΠ²Π°Π½ΠΈΡŽ) ΠΈ Π΄Π²Π° цСлочислСнных ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€Π° (исходноС ΠΈ ΠΆΠ΅Π»Π°Π΅ΠΌΠΎΠ΅ основаниС). Π’ΠΎΠ·Π²Ρ€Π°Ρ‰Π°Π΅Ρ‚ строку, ΠΏΡ€Π΅Π΄ΡΡ‚Π°Π²Π»ΡΡŽΡ‰ΡƒΡŽ ΠΏΡ€Π΅ΠΎΠ±Ρ€Π°Π·ΠΎΠ²Π°Π½Π½ΠΎΠ΅ число. Π’ этой строкС Ρ†ΠΈΡ„Ρ€Ρ‹ ΡΡ‚Π°Ρ€ΡˆΠ΅, Ρ‡Π΅ΠΌ 9 (ΠΎΡ‚ 10 Π΄ΠΎ 35), прСдставлСны символами a-z. И исходноС, ΠΈ ΠΆΠ΅Π»Π°Π΅ΠΌΡ‹Π΅ основания Π΄ΠΎΠ»ΠΆΠ½Ρ‹ Π½Π°Ρ…ΠΎΠ΄ΠΈΡ‚ΡŒΡΡ Π² ΠΏΡ€Π΅Π΄Π΅Π»Π°Ρ… 2-36

ВсС Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ прСобразования систСм счислСния ΡΠ²Π»ΡΡŽΡ‚ΡΡ функциями ΡΠΏΠ΅Ρ†ΠΈΠ°Π»ΡŒΠ½ΠΎΠ³ΠΎ назначСния, ΠΏΡ€Π΅ΠΎΠ±Ρ€Π°Π·ΡƒΡŽΡ‰ΠΈΠΌΠΈ числа ΠΈΠ· ΠΎΠ΄Π½ΠΎΠ³ΠΎ ΠΊΠΎΠ½ΠΊΡ€Π΅Ρ‚Π½ΠΎΠ³ΠΎ основания Π² Π΄Ρ€ΡƒΠ³ΠΎΠ΅. Π˜ΡΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠ΅ΠΌ являСтся функция base_convert(), которая ΠΏΡ€ΠΈΠ½ΠΈΠΌΠ°Π΅Ρ‚ ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ»ΡŒΠ½Ρ‹Π΅ ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€Ρ‹ с ΠΎΠ±ΠΎΠ·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ΠΌ Π½Π°Ρ‡Π°Π»ΡŒΠ½ΠΎΠ³ΠΎ ΠΈ Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚ΠΈΡ€ΡƒΡŽΡ‰Π΅Π³ΠΎ основания.

ΠžΠ±Ρ€Π°Ρ‚ΠΈΡ‚Π΅ Π²Π½ΠΈΠΌΠ°Π½ΠΈΠ΅ Π½Π° Ρ‚ΠΎ, Ρ‡Ρ‚ΠΎ всС Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ прСобразования систСм счислСния ΠΏΡ€ΠΈΠ½ΠΈΠΌΠ°ΡŽΡ‚ строковыС ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€Ρ‹ ΠΈ Π²ΠΎΠ·Π²Ρ€Π°Ρ‰Π°ΡŽΡ‚ строковыС значСния, Π½ΠΎ ΠΌΠΎΠΆΠ½ΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ дСсятичныС числовыС ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€Ρ‹ ΠΈ ΠΏΠΎΠ»Π°Π³Π°Ρ‚ΡŒΡΡ Π½Π° ΠΏΡ€Π°Π²ΠΈΠ»ΡŒΠ½ΠΎΠ΅ Π²Ρ‹ΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅ прСобразования Ρ‚ΠΈΠΏΠ° ΠΈΠ½Ρ‚Π΅Ρ€ΠΏΡ€Π΅Ρ‚Π°Ρ‚ΠΎΡ€ΠΎΠΌ PHP. Π˜Π½Ρ‹ΠΌΠΈ словами, Π²Π°Ρ€ΠΈΠ°Π½Ρ‚Ρ‹ Π²Ρ‹Π·ΠΎΠ²Π° DecBin(«1234») ΠΈ DecBin(1234) приводят ΠΊ ΠΏΠΎΠ»ΡƒΡ‡Π΅Π½ΠΈΡŽ ΠΎΠ΄ΠΈΠ½Π°ΠΊΠΎΠ²ΠΎΠ³ΠΎ Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚Π°.

ЭкспонСнты ΠΈ Π»ΠΎΠ³Π°Ρ€ΠΈΡ„ΠΌΡ‹

Π―Π·Ρ‹ΠΊ PHP Π²ΠΊΠ»ΡŽΡ‡Π°Π΅Ρ‚ стандартныС ΡΠΊΡΠΏΠΎΠ½Π΅Π½Ρ†ΠΈΠ°Π»ΡŒΠ½Ρ‹Π΅ ΠΈ логарифмичСскиС Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ Π΄Π²ΡƒΡ… разноввдностСй β€” для Ρ€Π°Π±ΠΎΡ‚Ρ‹ ΠΏΠΎ основанию 10 ΠΈ основанию Π΅ (ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΏΡ€ΠΈΠ²Π΅Π΄Π΅Π½Ρ‹ Π² Ρ‚Π°Π±Π»ΠΈΡ†Π΅).

Π’ языкС PHP прСдусмотрСна функция exp() для возвСдСния числа e Π² ΡƒΠΊΠ°Π·Π°Π½Π½ΡƒΡŽ ΡΡ‚Π΅ΠΏΠ΅Π½ΡŒ, Π½ΠΎ отсутствуСт функция с ΠΎΠ΄Π½ΠΈΠΌ ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ΠΎΠΌ, с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΉ ΠΌΠΎΠΆΠ½ΠΎ Π±Ρ‹Π»ΠΎ Π±Ρ‹ возвСсти Π² ΡƒΠΊΠ°Π·Π°Π½Π½ΡƒΡŽ ΡΡ‚Π΅ΠΏΠ΅Π½ΡŒ число 10. Однако вмСсто этой Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ ΠΌΠΎΠΆΠ½ΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΡŽ pow() с двумя ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€Π°ΠΌΠΈ, задавая 10 Π² качСствС ΠΏΠ΅Ρ€Π²ΠΎΠ³ΠΎ ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€Π°.

МоТно ΡƒΠ±Π΅Π΄ΠΈΡ‚ΡŒΡΡ Π² Ρ‚ΠΎΠΌ, Ρ‡Ρ‚ΠΎ ΡΠΊΡΠΏΠΎΠ½Π΅Π½Ρ†ΠΈΠ°Π»ΡŒΠ½Ρ‹Π΅ ΠΈ логарифмичСскиС Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ с ΠΎΠ΄Π½ΠΈΠΌ ΠΈ Ρ‚Π΅ΠΌ ΠΆΠ΅ основаниСм ΡΠ²Π»ΡΡŽΡ‚ΡΡ ΠΎΠ±Ρ€Π°Ρ‚Π½Ρ‹ΠΌΠΈ ΠΏΠΎ ΠΎΡ‚Π½ΠΎΡˆΠ΅Π½ΠΈΡŽ Π΄Ρ€ΡƒΠ³ ΠΊ Π΄Ρ€ΡƒΠ³Ρƒ, провСдя ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΊΡƒ идСнтичности ΠΏΠΎΠ»ΡƒΡ‡Π΅Π½Π½Ρ‹Ρ… Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚ΠΎΠ² Ρ‚Π°ΠΊΠΈΠΌ ΠΎΠ±Ρ€Π°Π·ΠΎΠΌ:

ВригономСтричСскиС Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ

Π’ языкС PHP прСдусмотрСн стандартный Π½Π°Π±ΠΎΡ€ основных тригономСтричСских Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΉ, ΠΎΠ±Ρ‰ΠΈΠ΅ свСдСния ΠΎ ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ… ΠΏΡ€ΠΈΠ²Π΅Π΄Π΅Π½Ρ‹ Π² Ρ‚Π°Π±Π»ΠΈΡ†Π΅:

НиТС ΠΏΠΎΠΊΠ°Π·Π°Π½ ΠΏΡ€ΠΈΠΌΠ΅Ρ€ составлСния Ρ‚Π°Π±Π»ΠΈΡ†Ρ‹ вычислСния тригономСтричСских Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΉ для «ΡΡ‚Π°Π½Π΄Π°Ρ€Ρ‚Π½Ρ‹Ρ…» ΡƒΠ³Π»ΠΎΠ²:

Код PHP ΠœΠ°Ρ‚Π΅ΠΌΠ°Ρ‚ΠΈΡ‡Π΅ΡΠΊΠΈΠ΅ ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΈ Π² php. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ Ρ„ΠΎΡ‚ΠΎ ΠœΠ°Ρ‚Π΅ΠΌΠ°Ρ‚ΠΈΡ‡Π΅ΡΠΊΠΈΠ΅ ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΈ Π² php. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΡƒ ΠœΠ°Ρ‚Π΅ΠΌΠ°Ρ‚ΠΈΡ‡Π΅ΡΠΊΠΈΠ΅ ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΈ Π² php. ΠšΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° ΠΏΡ€ΠΎ ΠœΠ°Ρ‚Π΅ΠΌΠ°Ρ‚ΠΈΡ‡Π΅ΡΠΊΠΈΠ΅ ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΈ Π² php. Π€ΠΎΡ‚ΠΎ ΠœΠ°Ρ‚Π΅ΠΌΠ°Ρ‚ΠΈΡ‡Π΅ΡΠΊΠΈΠ΅ ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΈ Π² phpΠŸΡ€ΠΈΠΌΠ΅Ρ€ использования тригономСтричСских Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΉ Π² PHP

ΠŸΠΎΠ»ΡƒΡ‡Π΅Π½ΠΈΠ΅ ΠΎΡ‡Π΅Π½ΡŒ Π±ΠΎΠ»ΡŒΡˆΠΈΡ… (Π½ΠΎ Π½Π΅ бСсконСчных) Π·Π½Π°Ρ‡Π΅Π½ΠΈΠΉ тангСнса обусловлСно Ρ‚Π΅ΠΌ, Ρ‡Ρ‚ΠΎ тСорСтичСски Π·Π½Π°ΠΌΠ΅Π½Π°Ρ‚Π΅Π»ΠΈ Π΄ΠΎΠ»ΠΆΠ½Ρ‹ Π±Ρ‹Ρ‚ΡŒ Ρ€Π°Π²Π½Ρ‹ΠΌΠΈ Π½ΡƒΠ»ΡŽ, Π½ΠΎ Π² Π΄Π΅ΠΉΡΡ‚Π²ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΠΈ Π½Π΅ΠΌΠ½ΠΎΠ³ΠΎ ΠΎΡ‚Π»ΠΈΡ‡Π°ΡŽΡ‚ΡΡ ΠΎΡ‚ нуля ΠΈΠ·-Π·Π° ошибок округлСния.

ВычислСниС с ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ»ΡŒΠ½ΠΎΠΉ Ρ‚ΠΎΡ‡Π½ΠΎΡΡ‚ΡŒΡŽ (с использованиСм Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΉ BC)

ЦСлочислСнныС Ρ‚ΠΈΠΏΡ‹ ΠΈ Ρ‚ΠΈΠΏΡ‹ с ΠΏΠ»Π°Π²Π°ΡŽΡ‰Π΅ΠΉ Ρ‚ΠΎΡ‡ΠΊΠΎΠΉ Π΄Π²ΠΎΠΉΠ½ΠΎΠΉ точности ΠΏΠΎΠ»Π½ΠΎΡΡ‚ΡŒΡŽ подходят для Ρ€Π΅ΡˆΠ΅Π½ΠΈΡ Π±ΠΎΠ»ΡŒΡˆΠΈΠ½ΡΡ‚Π²Π° матСматичСских Π·Π°Π΄Π°Ρ‡, Π²ΠΎΠ·Π½ΠΈΠΊΠ°ΡŽΡ‰ΠΈΡ… ΠΏΡ€ΠΈ Π²Ρ‹ΠΏΠΎΠ»Π½Π΅Π½ΠΈΠΈ сцСнариСв для Π²Π΅Π±, Π½ΠΎ для хранСния ΠΊΠ°ΠΆΠ΄ΠΎΠ³ΠΎ экзСмпляра значСния, прСдставлСнного с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ этих Ρ‚ΠΈΠΏΠΎΠ², прСдусмотрСн фиксированный объСм ΠΊΠΎΠΌΠΏΡŒΡŽΡ‚Π΅Ρ€Π½ΠΎΠΉ памяти, поэтому Π½Π° Ρ€Π°Π·ΠΌΠ΅Ρ€Ρ‹ ΠΈ Ρ‚ΠΎΡ‡Π½ΠΎΡΡ‚ΡŒ прСдставлСния чисСл этих Ρ‚ΠΈΠΏΠΎΠ² Π½Π΅ΠΈΠ·Π±Π΅ΠΆΠ½ΠΎ Π½Π°Π»Π°Π³Π°ΡŽΡ‚ΡΡ ограничСния.

ΠœΠΎΠΆΠ΅Ρ‚ ΠΎΠΊΠ°Π·Π°Ρ‚ΡŒΡΡ, Ρ‡Ρ‚ΠΎ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ с ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ»ΡŒΠ½ΠΎΠΉ Ρ‚ΠΎΡ‡Π½ΠΎΡΡ‚ΡŒΡŽ Π½Π΅ Π²ΠΊΠ»ΡŽΡ‡Π΅Π½Ρ‹ Π² ΠΊΠΎΠΌΠΏΠΈΠ»ΡΡ†ΠΈΡŽ ΠΈΠ½Ρ‚Π΅Ρ€ΠΏΡ€Π΅Ρ‚Π°Ρ‚ΠΎΡ€Π° PHP, особСнно Ссли ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒ ΠΏΡ€ΠΎΠ²ΠΎΠ΄ΠΈΠ» Ρ‚Π°ΠΊΡƒΡŽ ΠΊΠΎΠΌΠΏΠΈΠ»ΡΡ†ΠΈΡŽ ΡΠ°ΠΌΠΎΡΡ‚ΠΎΡΡ‚Π΅Π»ΡŒΠ½ΠΎ, ΠΏΠΎΡΠΊΠΎΠ»ΡŒΠΊΡƒ для этого ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒ Π΄ΠΎΠ»ΠΆΠ΅Π½ Π±Ρ‹Π» Π·Π½Π°Ρ‚ΡŒ, Ρ‡Ρ‚ΠΎ Π½Π° этапС настройки ΠΊΠΎΠ½Ρ„ΠΈΠ³ΡƒΡ€Π°Ρ†ΠΈΠΈ Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ Π²ΠΊΠ»ΡŽΡ‡ΠΈΡ‚ΡŒ Π² состав ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ΠΎΠ² Ρ„Π»Π°ΠΆΠΎΠΊ —enable-bcmath. Π§Ρ‚ΠΎΠ±Ρ‹ ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΈΡ‚ΡŒ, имССтся Π»ΠΈ доступ ΠΊ ΡƒΠΊΠ°Π·Π°Π½Π½Ρ‹ΠΌ функциям, ΠΏΠΎΠΏΡ‹Ρ‚Π°ΠΉΡ‚Π΅ΡΡŒ Π²Ρ‹Ρ‡ΠΈΡΠ»ΠΈΡ‚ΡŒ Π²Ρ‹Ρ€Π°ΠΆΠ΅Π½ΠΈΠ΅ bcadd(«1″,»1»). Если Π±ΡƒΠ΄Π΅Ρ‚ ΠΏΠΎΠ»ΡƒΡ‡Π΅Π½ΠΎ сообщСниС ΠΎΠ± ошибкС, Π² ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΌ говорится ΠΎ Π½Π΅ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½Π½ΠΎΠΉ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ, Ρ‚ΠΎ Π²Π°ΠΌ потрСбуСтся снова Π½Π°ΡΡ‚Ρ€ΠΎΠΈΡ‚ΡŒ ΠΊΠΎΠ½Ρ„ΠΈΠ³ΡƒΡ€Π°Ρ†ΠΈΡŽ ΠΈ ΠΏΠ΅Ρ€Π΅ΠΊΠΎΠΌΠΏΠΈΠ»ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ ΠΈΠ½Ρ‚Π΅Ρ€ΠΏΡ€Π΅Ρ‚Π°Ρ‚ΠΎΡ€ PHP.

Π’ функциях BC Π² качСствС ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ΠΎΠ² ΠΈ Π²ΠΎΠ·Π²Ρ€Π°Ρ‰Π°Π΅ΠΌΡ‹Ρ… Π·Π½Π°Ρ‡Π΅Π½ΠΈΠΉ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽΡ‚ΡΡ Π½Π΅ числовыС Ρ‚ΠΈΠΏΡ‹ с прСдставлСниСм фиксированной Π΄Π»ΠΈΠ½Ρ‹, Π° строки. ΠŸΠΎΡΠΊΠΎΠ»ΡŒΠΊΡƒ Π² языкС PHP Π΄Π»ΠΈΠ½Π° строк ограничиваСтся Ρ‚ΠΎΠ»ΡŒΠΊΠΎ объСмом доступной памяти, числа, ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅ΠΌΡ‹Π΅ Π² расчСтах, ΠΌΠΎΠ³ΡƒΡ‚ ΠΈΠΌΠ΅Ρ‚ΡŒ Π»ΡŽΠ±ΡƒΡŽ Π΄Π»ΠΈΠ½Ρƒ. ΠžΡΠ½ΠΎΠ²ΠΎΠΏΠΎΠ»Π°Π³Π°ΡŽΡ‰ΠΈΠ΅ вычислСния ΠΎΡΡƒΡ‰Π΅ΡΡ‚Π²Π»ΡΡŽΡ‚ΡΡ Π² дСсятичном Π²ΠΈΠ΄Π΅ ΠΈ Π²ΠΎ ΠΌΠ½ΠΎΠ³ΠΎΠΌ Π½Π°ΠΏΠΎΠΌΠΈΠ½Π°ΡŽΡ‚ Ρ‚Π΅, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΌΠΎΠΆΠ΅Ρ‚ Π²Ρ‹ΠΏΠΎΠ»Π½ΠΈΡ‚ΡŒ ΠΈ Ρ‡Π΅Π»ΠΎΠ²Π΅ΠΊ с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ ΠΊΠ°Ρ€Π°Π½Π΄Π°ΡˆΠ° ΠΈ Π±ΡƒΠΌΠ°Π³ΠΈ (Ссли смоТСт Π΄Π΅ΠΉΡΡ‚Π²ΠΎΠ²Π°Ρ‚ΡŒ ΠΎΡ‡Π΅Π½ΡŒ быстро ΠΈ запасСтся Ρ‚Π΅Ρ€ΠΏΠ΅Π½ΠΈΠ΅ΠΌ). Π€ΡƒΠ½ΠΊΡ†ΠΈΠΈ BC, ΠΎΠΏΠ΅Ρ€ΠΈΡ€ΡƒΡŽΡ‰ΠΈΠ΅ Ρ†Π΅Π»Ρ‹ΠΌΠΈ числами, Π΄Π΅ΠΉΡΡ‚Π²ΡƒΡŽΡ‚ Ρ‚ΠΎΡ‡Π½ΠΎ ΠΈ ΠΏΠΎΠ·Π²ΠΎΠ»ΡΡŽΡ‚ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ ΡΡ‚ΠΎΠ»ΡŒΠΊΠΎ Ρ†ΠΈΡ„Ρ€, сколько потрСбуСтся, Π° Π² функциях, ΠΎΠΏΠ΅Ρ€ΠΈΡ€ΡƒΡŽΡ‰ΠΈΡ… числами с ΠΏΠ»Π°Π²Π°ΡŽΡ‰Π΅ΠΉ Ρ‚ΠΎΡ‡ΠΊΠΎΠΉ, вычислСния Π²Ρ‹ΠΏΠΎΠ»Π½ΡΡŽΡ‚ΡΡ с Ρ‚ΠΎΡ‡Π½ΠΎΡΡ‚ΡŒΡŽ Π΄ΠΎ Π·Π°Π΄Π°Π½Π½ΠΎΠ³ΠΎ количСства дСсятичных разрядов. ΠžΠ±Ρ‰ΠΈΠ΅ свСдСния ΠΎ функциях BC ΠΏΡ€ΠΈΠ²Π΅Π΄Π΅Π½Ρ‹ Π² Ρ‚Π°Π±Π»ΠΈΡ†Π΅ Π½ΠΈΠΆΠ΅:

ΠœΠ°Ρ‚Π΅ΠΌΠ°Ρ‚ΠΈΡ‡Π΅ΡΠΊΠΈΠ΅ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ с ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ»ΡŒΠ½ΠΎΠΉ Ρ‚ΠΎΡ‡Π½ΠΎΡΡ‚ΡŒΡŽ (Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ BC)

Π€ΡƒΠ½ΠΊΡ†ΠΈΡΠžΠΏΠΈΡΠ°Π½ΠΈΠ΅
bcadd()ΠŸΡ€ΠΈΠ½ΠΈΠΌΠ°Π΅Ρ‚ Π΄Π²Π° строковых ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€Π°, ΠΏΡ€Π΅Π΄ΡΡ‚Π°Π²Π»ΡΡŽΡ‰ΠΈΡ… числа, ΠΈ Π½Π΅ΠΎΠ±ΡΠ·Π°Ρ‚Π΅Π»ΡŒΠ½Ρ‹ΠΉ цСлочислСнный ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ с ΠΎΠ±ΠΎΠ·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ΠΌ ΠΌΠ°ΡΡˆΡ‚Π°Π±Π½ΠΎΠ³ΠΎ мноТитСля. Π’ΠΎΠ·Π²Ρ€Π°Ρ‰Π°Π΅Ρ‚ сумму ΠΏΠ΅Ρ€Π²Ρ‹Ρ… Π΄Π²ΡƒΡ… ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ΠΎΠ² Π² Π²ΠΈΠ΄Π΅ строки, с количСством дСсятичных ΠΏΠΎΠ·ΠΈΡ†ΠΈΠΉ Π² Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚Π΅, опрСдСляСмом ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ΠΎΠΌ с ΠΎΠ±ΠΎΠ·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ΠΌ ΠΌΠ°ΡΡˆΡ‚Π°Π±Π½ΠΎΠ³ΠΎ мноТитСля. Если ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ с ΠΎΠ±ΠΎΠ·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ΠΌ ΠΌΠ°ΡΡˆΡ‚Π°Π±Π½ΠΎΠ³ΠΎ мноТитСля Π½Π΅ Π·Π°Π΄Π°Π½, Ρ‚ΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ Π·Π°Π΄Π°Π½Π½Ρ‹ΠΉ ΠΏΠΎ ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ ΠΌΠ°ΡΡˆΡ‚Π°Π±Π½Ρ‹ΠΉ ΠΌΠ½ΠΎΠΆΠΈΡ‚Π΅Π»ΡŒ
bcsub()Аналогична bcadd(), Π·Π° ΠΈΡΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠ΅ΠΌ Ρ‚ΠΎΠ³ΠΎ, Ρ‡Ρ‚ΠΎ Π²ΠΎΠ·Π²Ρ€Π°Ρ‰Π°Π΅Ρ‚ Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚ вычитания Π²Ρ‚ΠΎΡ€ΠΎΠ³ΠΎ ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€Π° ΠΎΡ‚ ΠΏΠ΅Ρ€Π²ΠΎΠ³ΠΎ
bcmui()Аналогична bcadd(), Π·Π° ΠΈΡΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠ΅ΠΌ Ρ‚ΠΎΠ³ΠΎ, Ρ‡Ρ‚ΠΎ Π²ΠΎΠ·Π²Ρ€Π°Ρ‰Π°Π΅Ρ‚ Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚ умноТСния своих ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ΠΎΠ²
bcdiv()Аналогична bcadd(), Π·Π° ΠΈΡΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠ΅ΠΌ Ρ‚ΠΎΠ³ΠΎ, Ρ‡Ρ‚ΠΎ Π²ΠΎΠ·Π²Ρ€Π°Ρ‰Π°Π΅Ρ‚ Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚ дСлСния ΠΏΠ΅Ρ€Π²ΠΎΠ³ΠΎ ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€Π° Π½Π° Π²Ρ‚ΠΎΡ€ΠΎΠΉ
bcmod()Π’ΠΎΠ·Π²Ρ€Π°Ρ‰Π°Π΅Ρ‚ ΠΌΠΎΠ΄ΡƒΠ»ΡŒ (остаток) ΠΎΡ‚ дСлСния ΠΏΠ΅Ρ€Π²ΠΎΠ³ΠΎ ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€Π° Π½Π° Π²Ρ‚ΠΎΡ€ΠΎΠΉ. ΠŸΠΎΡΠΊΠΎΠ»ΡŒΠΊΡƒ Π²ΠΎΠ·Π²Ρ€Π°Ρ‰Π°Π΅ΠΌΠΎΠ΅ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ относится ΠΊ цСлочислСнному Ρ‚ΠΈΠΏΡƒ, функция Π½Π΅ ΠΏΡ€ΠΈΠ½ΠΈΠΌΠ°Π΅Ρ‚ ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ с ΠΎΠ±ΠΎΠ·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ΠΌ ΠΌΠ°ΡΡˆΡ‚Π°Π±Π½ΠΎΠ³ΠΎ мноТитСля
bcpow()Π’ΠΎΠ·Π²ΠΎΠ΄ΠΈΡ‚ ΠΏΠ΅Ρ€Π²Ρ‹ΠΉ ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ Π² ΡΡ‚Π΅ΠΏΠ΅Π½ΡŒ, ΡƒΠΊΠ°Π·Π°Π½Π½ΡƒΡŽ Π²Ρ‚ΠΎΡ€Ρ‹ΠΌ ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ΠΎΠΌ. ΠšΠΎΠ»ΠΈΡ‡Π΅ΡΡ‚Π²ΠΎ дСсятичных ΠΏΠΎΠ·ΠΈΡ†ΠΈΠΉ Π² Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚Π΅ опрСдСляСтся ΠΌΠ°ΡΡˆΡ‚Π°Π±Π½Ρ‹ΠΌ ΠΌΠ½ΠΎΠΆΠΈΡ‚Π΅Π»Π΅ΠΌ, Ссли ΠΎΠ½ Π·Π°Π΄Π°Π½
bcsqrt()Π’ΠΎΠ·Π²Ρ€Π°Ρ‰Π°Π΅Ρ‚ ΠΊΠ²Π°Π΄Ρ€Π°Ρ‚Π½Ρ‹ΠΉ ΠΊΠΎΡ€Π΅Π½ΡŒ ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€Π° с количСством дСсятичных ΠΏΠΎΠ·ΠΈΡ†ΠΈΠΉ, ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ΅ опрСдСляСтся Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ΠΌ Π½Π΅ΠΎΠ±ΡΠ·Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎΠ³ΠΎ ΠΌΠ°ΡΡˆΡ‚Π°Π±Π½ΠΎΠ³ΠΎ мноТитСля
bcscale()УстанавливаСт Π·Π°Π΄Π°Π½Π½Ρ‹ΠΉ ΠΏΠΎ ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ ΠΌΠ°ΡΡˆΡ‚Π°Π±Π½Ρ‹ΠΉ ΠΌΠ½ΠΎΠΆΠΈΡ‚Π΅Π»ΡŒ для ΠΏΠΎΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΡ… Π²Ρ‹Π·ΠΎΠ²ΠΎΠ² Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ BC

Π‘ΠΎΠ»ΡŒΡˆΠΈΠ½ΡΡ‚Π²ΠΎ ΠΈΠ· этих Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΉ ΠΏΡ€ΠΈΠ½ΠΈΠΌΠ°ΡŽΡ‚ Π² качСствС послСднСго ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€Π° Π½Π΅ΠΎΠ±ΡΠ·Π°Ρ‚Π΅Π»ΡŒΠ½Ρ‹ΠΉ ΠΌΠ°ΡΡˆΡ‚Π°Π±Π½Ρ‹ΠΉ ΠΌΠ½ΠΎΠΆΠΈΡ‚Π΅Π»ΡŒ (Ρ†Π΅Π»ΠΎΠ΅ число), ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ опрСдСляСт, ΠΊΠ°ΠΊΠΎΠ΅ количСство дСсятичных ΠΏΠΎΠ·ΠΈΡ†ΠΈΠΈ Π΄ΠΎΠ»ΠΆΠ½ΠΎ Π±Ρ‹Ρ‚ΡŒ Π² Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚Π΅. Если Ρ‚Π°ΠΊΠΎΠΉ ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ Π½Π΅ Π·Π°Π΄Π°Π½, Ρ‚ΠΎ Π² качСствС ΠΌΠ°ΡΡˆΡ‚Π°Π±Π½ΠΎΠ³ΠΎ мноТитСля ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ Π·Π°Π΄Π°Π½Π½Ρ‹ΠΉ ΠΏΠΎ ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ ΠΌΠ°ΡΡˆΡ‚Π°Π±Π½Ρ‹ΠΉ ΠΌΠ½ΠΎΠΆΠΈΡ‚Π΅Π»ΡŒ, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ, Π² свою ΠΎΡ‡Π΅Ρ€Π΅Π΄ΡŒ, ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ установлСн ΠΏΡƒΡ‚Π΅ΠΌ Π²Ρ‹Π·ΠΎΠ²Π° Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ bcscale(). Заданная ΠΏΠΎ ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ Π²Π΅Π»ΠΈΡ‡ΠΈΠ½Π° для этого Π·Π°Π΄Π°Π½Π½ΠΎΠ³ΠΎ ΠΏΠΎ ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ значСния (Ρ‚.Π΅. Π²Π΅Π»ΠΈΡ‡ΠΈΠ½Π°, которая ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ, Ссли Π² сцСнарии Π½Π΅ примСняСтся Π²Ρ‹Π·ΠΎΠ² Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ bcscale()) ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ Ρ‚Π°ΠΊΠΆΠ΅ Π·Π°Π΄Π°Π½Π° Π² Ρ„Π°ΠΉΠ»Π΅ ΠΈΠ½ΠΈΡ†ΠΈΠ°Π»ΠΈΠ·Π°Ρ†ΠΈΠΈ php.ini.

НиТС ΠΏΡ€ΠΈΠ²Π΅Π΄Π΅Π½ ΠΏΡ€ΠΈΠΌΠ΅Ρ€ использования Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ с ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ»ΡŒΠ½ΠΎΠΉ Ρ‚ΠΎΡ‡Π½ΠΎΡΡ‚ΡŒΡŽ для Ρ‚ΠΎΡ‡Π½ΠΎΠ³ΠΎ выполнСния цСлочислСнных арифмСтичСских ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΉ. Π’Ρ‹ΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰Π΅Π³ΠΎ ΠΊΠΎΠ΄Π°:

Код PHP ΠœΠ°Ρ‚Π΅ΠΌΠ°Ρ‚ΠΈΡ‡Π΅ΡΠΊΠΈΠ΅ ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΈ Π² php. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ Ρ„ΠΎΡ‚ΠΎ ΠœΠ°Ρ‚Π΅ΠΌΠ°Ρ‚ΠΈΡ‡Π΅ΡΠΊΠΈΠ΅ ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΈ Π² php. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΡƒ ΠœΠ°Ρ‚Π΅ΠΌΠ°Ρ‚ΠΈΡ‡Π΅ΡΠΊΠΈΠ΅ ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΈ Π² php. ΠšΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° ΠΏΡ€ΠΎ ΠœΠ°Ρ‚Π΅ΠΌΠ°Ρ‚ΠΈΡ‡Π΅ΡΠΊΠΈΠ΅ ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΈ Π² php. Π€ΠΎΡ‚ΠΎ ΠœΠ°Ρ‚Π΅ΠΌΠ°Ρ‚ΠΈΡ‡Π΅ΡΠΊΠΈΠ΅ ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΈ Π² phpΠ’ΠΎΡ‡Π½ΠΎΠ΅ вычислСниС астрономичСских Π²Π΅Π»ΠΈΡ‡ΠΈΠ½ с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΉ BC

Если Π±Ρ‹ для этих вычислСний использовался ΠΎΠ±Ρ‹Ρ‡Π½Ρ‹ΠΉ цСлочислСнный Ρ‚ΠΈΠΏ PHP, Ρ‚ΠΎ ΠΏΠ΅Ρ€Π΅ΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅ Ρ†Π΅Π»ΠΎΠ³ΠΎ числа ΠΏΡ€ΠΎΠΈΠ·ΠΎΡˆΠ»ΠΎ Π±Ρ‹ Π·Π°Π΄ΠΎΠ»Π³ΠΎ Π΄ΠΎ ΠΊΠΎΠ½Ρ†Π° вычислСния, поэтому Π² ΠΎΡΡ‚Π°Π»ΡŒΠ½ΠΎΠΉ части Ρ†ΠΈΠΊΠ»Π° расчСты Π²Ρ‹ΠΏΠΎΠ»Π½ΡΠ»ΠΈΡΡŒ Π±Ρ‹ Π² цСлях получСния ΠΏΡ€ΠΈΠ±Π»ΠΈΠΆΠ΅Π½Π½ΠΎΠ³ΠΎ числа с ΠΏΠ»Π°Π²Π°ΡŽΡ‰Π΅ΠΉ Ρ‚ΠΎΡ‡ΠΊΠΎΠΉ.

Π˜ΡΡ‚ΠΎΡ‡Π½ΠΈΠΊ

Π”ΠΎΠ±Π°Π²ΠΈΡ‚ΡŒ ΠΊΠΎΠΌΠΌΠ΅Π½Ρ‚Π°Ρ€ΠΈΠΉ

Π’Π°Ρˆ адрСс email Π½Π΅ Π±ΡƒΠ΄Π΅Ρ‚ ΠΎΠΏΡƒΠ±Π»ΠΈΠΊΠΎΠ²Π°Π½. ΠžΠ±ΡΠ·Π°Ρ‚Π΅Π»ΡŒΠ½Ρ‹Π΅ поля ΠΏΠΎΠΌΠ΅Ρ‡Π΅Π½Ρ‹ *