Составить программу вычисления суммы: - VB
Формулировка задачи:
Составить программу вычисления суммы:
((x^1)/1!)- ((x^3)/3!)+ ((x^5)/5!)- ((x^7)/7!)+...-(-1)^n*((x^n)/n!)
При увеличении n эта сумма приближается к значению sin(x).
помогите пожалуйста,
есть вариант решения в паскале, но не понимаю как оно составлено
Листинг программы
- uses crt;
- var x,s,t:real;
- n,i:integer;
- begin
- clrscr;
- write('x=');readln(x);
- write('n=');readln(n);
- s:=x;t:=1;
- for i:=1 to n do
- begin
- t:=t*((-1)*x*x)/(2*i*(2*i+1));
- s:=s+t;
- end;
- writeln('Приближенное значение sinx=',s:10:8);
- writeln('Аналитическое значение sinx=',sin(x):10:8);
- readln
- end
Решение задачи: «Составить программу вычисления суммы:»
textual
Листинг программы
- Private Sub Command1_Click()
- Dim x!, s!, t!
- Dim n%, i%
- x = Replace(InputBox("x="), ".", ",")
- ' n<34
- n = Val(InputBox("n="))
- If n < 34 Then
- s = 0
- t = 1
- For i = 1 To n Step 2
- t = t * (-1)
- s = s + t * (-1) ^ i * x ^ i / f(i)
- Next
- MsgBox "Приближенное значение sinx=" & Round(s, 8) & vbNewLine & _
- "Аналитическое значение sinx=" & Round(Sin(x), 8) ' writeln('Приближенное значение sinx=',s:10:8);
- Else
- MsgBox "Слишком большое n"
- End If
- End Sub
- Function f(n%) As Single
- If n = 0 Then
- f = 1
- Else
- f = n * f(n - 1)
- End If
- End Function
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д