Предмет: Информатика, автор: kotyara18149

Помогите пожалуйста составить программу (желательно для LibreOffice, но подойдет и для VBA) :
Нужно составить программу S = pi - tg(pi/2) + tg(pi/4) - tg(pi/6) + tg(pi/8) - ... Расчет производить до тех пор, пока слагаемое по абсолютной величине не станет меньше заданной точности Е. Подсчитать число слагаемых. Значение Е задать вводом.


kotyara18149: Сама программа написана, но ее нужно редактировать, и для этого нужна общая формула нахождения S как например : 1/((2n-1)*x^(2n1))
kotyara18149: И по-моему нужно использовать в данной задаче цикл Do ... While
kotyara18149: Хм... в задании написана такая формула в теме методы интераций...
kotyara18149: Ой, не методы интераций а интерационные формулы
kotyara18149: Сейчас узнал, сказали можно исключить tg(pi/2)

Ответы

Автор ответа: DonPedro80
0
Sub Iter()
    Dim s As Double, pi As Double, e As Double, a As Double
    Dim i As Long, znak As Integer, k As Long
    e = InputBox("введите значение eps")
    pi = 4 * Atn(1)
    s = pi
    i = 2
    znak = 1
    k = 0
    a = Tan(pi / (2 * i))
    Do While a >= e
        s = s + znak * a
        i = i + 1
        a = Tan(pi / (2 * i))
        znak = -znak
        k = k + 1
    Loop
    MsgBox "Сумма равна " + Str(s) + ", количество слагаемых " + Str(k)
End Sub
Похожие вопросы
Предмет: Математика, автор: Ася9841064