Есть ли способ вычесть один результат из предыдущего результата? - PullRequest
2 голосов
/ 06 апреля 2019

Я пытаюсь ответить на проблему с книгой, заданную моим учителем, и мне сложно найти способ вычесть предыдущий результат из следующего. Проблема запрашивает цикл результатов, пока предыдущий результат, вычтенный из следующего результата, не будет иметь допуск 1e-10. Уравнение:

H + = sqrt (Ka * (c - n))

, в которой Ka = 1,78e-5

с = 0,01

n = начинается с нуля

Итерации продолжаются до тех пор, пока H + не изменится менее чем на некоторое заранее определенное малое значение допуска, в данном случае TOL = 1e-10.

Я посмотрел некоторые вопросы, основанные на таких вещах, здесь, так как я очень плохо знаком с программированием на Python (меньше месяца работал с ним), но я не нашел ничего полезного для этого, так как в большинстве из них вы получаете столбец, а затем вычитаете результаты из этого, как этот ( Как вычесть результат из предыдущего ряда? ), но я не могу этого сделать.

n = 0
Ka = 1.78e-5
c = 0.01
q = Ka * (c - n)

H = q ** 0.5
H1 = q ** 0.5

while n < 10:
     print(H)
     if (H1 - H == 1e-10):
         break

Это то, что мне удалось сделать, но это заставляет меня давать бесконечные результаты, потому что я не знаю, как вычесть предыдущий результат из следующего. Может кто-нибудь, пожалуйста, пролить немного света на это?

...