Форум программистов, компьютерный форум, киберфорум
VBA
Войти
Регистрация
Восстановить пароль
 
Заблокирован
1

Исправьте мои ошибки, где вычисляю сумму ряда и факториал

26.04.2017, 01:57. Просмотров 438. Ответов 2
Метки нет (Все метки)

Здравствуйте!
Прошу помощи. Не знаю, как правильно написать код, чтобы определить значения функций и сумму на всех четырёх этапах.
Пояснение по этапу, к примеру:
1-й этап: i = 0 и n! = 1.
2-й этап: i = 1 и n! = 24.
3-й этап: i = 2 и n! = 40320.
4-й этап: i = 3 и n! = 479001600.
Все этапы должны быть показаны в ячейках Эксель.

Пытаюсь вычислить сумму ряда вручную
N! = 1 = > N = 0
N! = 24 = > N = 4
N! = 40 320 = > N = 8
N! = 479001600 = > N = 12
Тогда
Y = (-1) ^ (0 + 1) * 2 ^ (4 *0 - 3) * (4 * 0 - 2) /1 = 1/4 = 0,25
Y = (-1) ^ (1 + 1) * 2 ^ (4 *1 - 3) * (4 * 1 - 2) / 24 = 4/24 = 1/6
Y = (-1) ^ (2 + 1) * 2 ^ (4 *2 - 3) * (4 * 2 - 2) / 40320 = -1/210
Y = (-1) ^ (3 + 1) * 2 ^ (4 *3 - 3) * (4 * 3 - 2) / 479001600 = 1/93555

1/4 + 1/6 - 1/210 + 1/93555 = 22021/53460 = 0,411915…
Проверяю на Вольфраме, всё верно.
Sum[(-1)^(i + 1) * 2^(4i - 3) * (4i - 2)/(4i)!, i=0..3] https://www.cyberforum.ru/newt... hread&f=30
Visual Basic
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
Sub NoizerFact()
Dim x%, i%, Y&, n#, Z#, S#
'--------------------
ActiveSheet.UsedRange.EntireRow.Delete
Cells.Clear
x = 2
For i = 0 To 3
  Y = (-1) ^ (i + 1) * x ^ (4 * i - 3) * (4 * i - x)
Next i
 
S = 0
For n = 0 To 12 Step 4
    Z = Y / f(n)
    S = S + Z
Next n
Cells(1, 5) = f(n)
Cells(1, 1) = "  Значение факториала  f(n) = "
Cells(3, 5) = Y
Cells(3, 1) = "     Значение функции  Y = "
Cells(5, 5) = Z
Cells(5, 1) = "     Значение функции  Z = "
Cells(7, 5) = S
Cells(7, 1) = "     Общая сумма ряда  S = "
End Sub
Function f(ByVal n As Double) As Double
If f = 0 Then f = 1
If n > 1 Then
  f = f(n - 1) * n
  End If
End Function
0
Миниатюры
Исправьте мои ошибки, где вычисляю сумму ряда и факториал  
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
26.04.2017, 01:57
Ответы с готовыми решениями:

Исправьте мои ошибки
Делаю скрипт для подсветки синтаксиса (нужен именно свой). Вот файл script.js var Syntax = new...

подскажите где мои ошибки
вот мои коды, но что то в них не то, укажите ошибки Составить программу для проверки...

Исправьте ошибки в программном коде расчета суммы сходящегося ряда
Задание: Найти сумму сходящегося ряда и вывести на экран кол-во членов ряда. Формула: x^n / n!...

Вычислить сумму ряда. Факториал
В задание нужно использовать оператор цикла с постусловием (repeat until Задание 1....

2
Заблокирован
26.04.2017, 02:07  [ТС] 2
Цитата Сообщение от MyExcel_17 Посмотреть сообщение
Проверяю на Вольфраме, всё верно.
Sum[(-1)^(i + 1) * 2^(4i - 3) * (4i - 2)/(4i)!, i=0..3] https://www.cyberforum.ru/newt... hread&f=30
Прошу прощения за описку, торопился.
Правильно: Sum[(-1)^(i + 1) * 2^(4i - 3) * (4i - 2)/(4i)!, i=0..3] http://www.wolframalpha.com/in... %3D0..3%5D

Смотрите картинку
0
Миниатюры
Исправьте мои ошибки, где вычисляю сумму ряда и факториал  
Заблокирован
26.04.2017, 22:16  [ТС] 3
Цитата Сообщение от MyExcel_17 Посмотреть сообщение
Не знаю, как правильно написать код, чтобы определить значения функций и сумму на всех четырёх этапах.
Visual Basic
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
Sub NoizerFact()
Dim x%, i%, Y As Single, t#, v#
Dim Z#, S#, k&, q&, r As Single
'--------------------
ActiveSheet.UsedRange.EntireRow.Delete
Cells.Clear
x = 2
k = 0: q = 0: r = 0: t = 0: v = 0: S = 0
For i = 0 To 4 Step 1
  If i >= 0 And f(0) = f(1) Then
  Y = (-1) ^ (i + 1) * x ^ (4 * i - 3) * (4 * i - x)
  Z = Y / f(4 * i)
  Range("D5").Offset(, k) = Y
  Range("D1").Offset(, q) = i
  Range("D7").Offset(, r) = Z
  Range("D9").Offset(, t) = S
  Range("D3").Offset(, v) = f(4 * i)
  k = k + 1
  q = q + 1
  r = r + 1
  S = S + Z
  v = v + 1
  End If
Next i
Cells(1, 1) = "   Значение аргумента  i = "
Cells(3, 1) = " Значение факториала  f(4 * i) = "
Cells(5, 1) = "     Значение функции  Y = "
Cells(7, 1) = "     Значение функции  Z = "
Cells(9, 1) = "     Общая сумма ряда  S = "
End Sub
Function f(ByVal i As Double) As Double
If f = 0 Then f = 1
If i > 1 Then
  f = f(i - 1) * i
  End If
End Function
0
Миниатюры
Исправьте мои ошибки, где вычисляю сумму ряда и факториал  
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
26.04.2017, 22:16

Заказываю контрольные, курсовые, дипломные и любые другие студенческие работы здесь.

Вычислить сумму ряда. Где-то напутал знаки или формула ряда не правильная. Посмотрите свежим взглядом.
Привет! Пишу простую контрольную, не могу понять, то ли я где-то со знаками туплю, то ли формула...

Вычислить сумму ряда (Ошибка, переполнение. Где?)
Вычисление суммы ряда. Program fuuuuu; Const e=0.0001; Var a,s,f,x:real; k:integer;...

Вычислить сумму ряда, где m и n заданные числа
Вычислить S=\sum_{i=m}^{n} (2*i), где m и n заданные числа. Помогите пожалуйста, если кто знает. У...

Ошибки мои
java.lang.RuntimeException: Unable to resume activity...

Найти сумму членов ряда. На экран вывести значение суммы, число членов ряда, вошедших в сумму, и последний член ряда
Помогите пожалуйста с заданием .

Найти сумму N первых членов ряда. Y=1+X/2+X/3+X[/SUP]/4+..., где Х - любое число.
Найти сумму N первых членов ряда. Y=1+X/2+X/3+X/4+..., где Х - любое число.


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
3
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2020, vBulletin Solutions, Inc.