Jump to content
  • 0

Возведение в степень целого числа


rus
 Share

Question

Решил проверить правда ли невозможно вычислить значение 2 в 32 степени, написал простенький скрипт:

<?php
$num = 2;
for($i=1;$i<32;$i=$i+1)
{
$num = $num*$num;
}

echo $num;
?>

Выводит INF, короче не справляется.

Может есть другие способы решения этой задачи, или все таки не подсчитает?

Link to comment
Share on other sites

15 answers to this question

Recommended Posts

  • 0

Вань что такое степень знаем?

Число помноженное само на себя.

2 в квадрате - 4

в кубе - 16

в четвертой степени - 256

и так далее...

Твой вариант выводит: 4294967296 - но это не так.

Учитывая то что 2 в десятой степени будет: 1.34078079299E+1544294967296

А в 11 уже: INF

Link to comment
Share on other sites

  • 0
Вань что такое степень знаем?

Число помноженное само на себя.

2 в квадрате - 4

в кубе - 16

в четвертой степени - 256

и так далее...

Твой вариант выводит: 4294967296 - но это не так.

Учитывая то что 2 в десятой степени будет: 1.34078079299E+1544294967296

А в 11 уже: INF

специально для дураков

0 :1

1 :2

2 :4

3 :8

4 :16

5 :32

6 :64

7 :128

8 :256

9 :512

10:1024

11:2048

12:4096

13:8192

14:16384

15:32768

16:65536

17:131072

18:262144

19:524288

20:1048576

21:2097152

22:4194304

23:8388608

24:16777216

25:33554432

26:67108864

27:134217728

28:268435456

29:536870912

30:1073741824

31:2147483648

32:4294967296

Link to comment
Share on other sites

  • 0

Народ! Вы о чем спорите? Как товаришчь возводит в степень? :rolleyes:

2*2 = 4

4*4 = 16

16*16 = ....

И так 32 раза. Естественно у него не хватает выделенной памяти под переменную и получает INF (переполнение)

Для быстрого получения степени двойки можно использовать сдвиг влево

$mun = 2 << 31;

вроде бы так

Link to comment
Share on other sites

  • 0
Рус, ты сам нехрена не знаешь ;)

Знал..., когда учился в школе, видимо забыл. :rolleyes:

специально для дураков

Обойдемся без переходов на личности. :unsure:

Поспешил немного, действительно 2 в кубе будет 8, а не 16...

Просто когда еще в школе учился мне учитель по информатике тогда говорил что невозможно вычислить 2 в 32 степени, вот и решил попробовать.

Link to comment
Share on other sites

  • 0
Google - название поисковой системы, а 10 в 100 - googol. Не исключено, конечно, что имя поисковика - искаженное название числа...

Да, совершенно верно, а я к стати не обратил внимание на эти слова: гугол и гугл (соответственно: google и googol).

Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Answer this question...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

 Share

×
×
  • Create New...

Important Information

We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue. See more about our Guidelines and Privacy Policy