Python, программирование, число пи - Компьютерные вопросы
  • Чаты 4chT.com в телеграмм
    Наши группы в телеграмм

Вопрос Python, программирование, число пи

Регистрация
28 Сен 2013
Сообщения
95
Репутация
0
Спасибо
0
Монет
0
Почему эта программа ничего не выводит? (если что, то я скопировал ее, поэтому вообще не разбираюсь что тут не так)

from decimal import *

getcontext().prec = 100



def nilakantha(reps):

result = Decimal(3.0)

op = 1

n = 2

for n in range(2 ,2*reps+1 ,2):

result += 4/Decimal(n*(n+1)*(n+2)*op)

return result

print(result)
 
Регистрация
16 Дек 2013
Сообщения
65
Репутация
0
Спасибо
0
Монет
0
Во-первых, пайтон чувствителен к отступам, а значит описанный код в текущем состоянии вызовет кучу ошибок. Во-вторых, рекомендую ознакомиться с синтаксисом языка и его особенностями, и тогда все вопросы исчезнут.
 
Регистрация
30 Июн 2013
Сообщения
78
Репутация
0
Спасибо
0
Монет
0
Вот так вот всё работает:
294565678_c18d1e42cbf90d40e509954213fa7641_800.jpg

Только непонятно что при этом за ерунда считается:
294565678_6864dca07f937ac7209f2c504a4d0b86_800.jpg

А вот как можно вычислять число π с требуемой точностью:
294565678_d1d1dd131f6bccca8e665863be481289_800.jpg

И сразу пример:
294565678_9e0da31e6aa4ab140ee78e414073a779_800.jpg

 
Регистрация
8 Сен 2013
Сообщения
86
Репутация
0
Спасибо
0
Монет
0
с соблюдением табуляции
def nilakantha(reps):
result = Decimal(3.0)
op = 1
n = 2
for n in range(2, 2 * reps + 1, 2):
result += 4/Decimal(n*(n+1)*(n+2)*op)
return result

reps = int(input()) # или float? Смотря что требуется.
print(nilakantha(reps))
 
Сверху Снизу