Как возвести число в степень.
|
|
Gcuper | Дата: Пятница, 21 Сентября 2012, 18:24 | Сообщение # 1 |
частый гость
Сейчас нет на сайте
| Итак, задача такая.Возвести в степень число на ГМЛ.Например мне лень писать p2=p*p Мне нужен оператор который возводит числа в степень. Жду ответа. Очень нужно.
Как я сюда попал....Эх тыж бессердечная винда ты моя.
|
|
| |
LunarPixel | Дата: Пятница, 21 Сентября 2012, 18:26 | Сообщение # 2 |
старожил
Сейчас нет на сайте
| Справку читаем!
power(x,n) - возвращает x в степени n
|
|
| |
Maxaon | Дата: Среда, 26 Сентября 2012, 15:03 | Сообщение # 3 |
участник
Сейчас нет на сайте
| x=get_lnteger('','') p=get_integer('','') s=x; for(a=p;a>=0;a-=1) { x=x*s; } return x;
Сообщение отредактировал Maxaon - Четверг, 27 Сентября 2012, 16:33 |
|
| |
MrAkakuy | Дата: Среда, 26 Сентября 2012, 15:08 | Сообщение # 4 |
участник
Сейчас нет на сайте
| Maxaon, ты наркоман что-ли? или школьник? прокрути в голове мысленно весь цикл: Шаг 1: х = 5 (допустим изначально) х = х*х = 5*5 = 25 Шаг 2: х = 25 х = 25*25 = 625 И получается у тебя полая ересь, так как 5^3 = 125 а не 625. Не проверил однако.
Сообщение отредактировал MrAkakuy - Среда, 26 Сентября 2012, 15:09 |
|
| |
EF61 | Дата: Среда, 26 Сентября 2012, 15:25 | Сообщение # 5 |
был не раз
Сейчас нет на сайте
| Quote (MrAkakuy) или школьник? Ох, как же это смешно звучит из уст школьника. Разве в gml нельзя использовать x=y^n?
|
|
| |
Rumata | Дата: Среда, 26 Сентября 2012, 15:32 | Сообщение # 6 |
почетный гость
Сейчас нет на сайте
| Quote (EF61) Разве в gml нельзя использовать x=y^n? Я, конечно, не со всеми языками программирования знаком, но такой оператор впервые вижу. Это ж где его можно использовать?
|
|
| |
Dva_Kota | Дата: Среда, 26 Сентября 2012, 15:36 | Сообщение # 7 |
заслуженный участник
Сейчас нет на сайте
| EF61, нельзя (точнее можно, но это будет не возведение в степень). Добавлено (26.09.2012, 15:36) --------------------------------------------- Rumata, например в Excel.
Новый пример инвентаря! /20.06.2012/
Energy Wars
|
|
| |
EF61 | Дата: Среда, 26 Сентября 2012, 15:39 | Сообщение # 8 |
был не раз
Сейчас нет на сайте
| Rumata, в питоне что-то подобное было. Просто вспомнилось.
|
|
| |
Maxaon | Дата: Пятница, 28 Сентября 2012, 21:25 | Сообщение # 9 |
участник
Сейчас нет на сайте
| MrAkakuy, чукча, посмотри внимательнее
|
|
| |
Rean | Дата: Суббота, 29 Сентября 2012, 01:09 | Сообщение # 10 |
участник
Сейчас нет на сайте
| Maxaon, а алгоритм действительно кривой. Причем это очевидно. MrAkakuy, конечно, не прав, но ошибка следующая:
При x = 3, p = 2 При таком раскладе будет выполнено три итерации (а = 2, а = 1, а = 0). Что имеем в результате? Code Первый проход. x = 3 * 3 = 9 Второй проход. x = 9 * 3 = 27 Третий проход. x = 27 * 3 = 81
В итоге получаем, что 3 во 2 степени у нас равно 81.
И вообще, зачем все так усложнять, можно было ведь проще сделать: Code s = 1; for (i = 0; i < p; i += 1) s = s * x; return s;
|
|
| |
Naza | Дата: Суббота, 29 Сентября 2012, 13:06 | Сообщение # 11 |
GMUser
Сейчас нет на сайте
| Quote (Rean) зачем все так усложнять, можно было ведь проще сделать: А еще проще, как указал LunarPixel: pow(x, p); Тему, кстати, можно закрыть. Автор получил ответ, и, тем более в бане.
|
|
| |