С Новым годом! Форум программистов, компьютерный форум, киберфорум
Visual Basic
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.62/13: Рейтинг темы: голосов - 13, средняя оценка - 4.62
3 / 3 / 3
Регистрация: 11.04.2012
Сообщений: 37

Табулирование функции и суммы функционального ряда

15.12.2014, 15:34. Показов 2754. Ответов 12
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Протабулировать

1. функцию y на отрезке [а, b] с шагом h.
2. сумму S функционального ряда разложения этой функции на отрезке [а, b] с шагом h.

Сравнить значения заданной функции и ее разложения.

Вид вычисляемой функции задать с помощью подпрограммы-функции. Функциональный ряд S вычисляется с точностью до e по соответствующей рекуррентной формуле.


S=1 + x/1! + x^2/2! + ... + x^n/n!
1<=x<=2
e=15^(-4)
y=e^x

Сумма и функция должны быть примерно одинаковыми. В теле программы "y" находит правильно, но в подпрограмме-функции почему-то считает неправильно.

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
37
Function f(ByVal x As Double) As Double
    e = 15 ^ (-4)
     y = e ^ x
     f = y
End Function
Function FAKT(p)
    If p > 1 Then
        FAKT = FAKT(p - 1) * p
    Else
    FAKT = 1
    End If
End Function
 
 
Private Sub Command1_Click()
a = Val(Text1)
b = Val(Text2)
h = Val(Text3)
p = 1
s = 1
e = 15 ^ (-4)
For x = a To (b + h) Step h
List2.AddItem f(x)
Next x
For x = a To (b + h) Step h
List1.AddItem x
Next x
For x = a To (b + h) Step h
s = s + x ^ p / FAKT(p)
p = p + 1
List3.AddItem s
Next x
For x = a To (b + h) Step h
y = e ^ x
List4.AddItem y
Next x
End Sub
Добавлено через 21 час 24 минуты
Уже все перепробовал. Не могу понять, почему подпрограмма неправильно считает f(x). Может я неправильно задание понял?
Цитата Сообщение от Lotesse Посмотреть сообщение
Вид вычисляемой функции задать с помощью подпрограммы-функции. Функциональный ряд S вычисляется с точностью до e по соответствующей рекуррентной формуле.
Функцию y надо задать с помощью подпрограммы?
0
Лучшие ответы (1)
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
15.12.2014, 15:34
Ответы с готовыми решениями:

Табулирование функции и суммы функционального ряда
Всем привет,может кто нить помочь прописать код в VB 6.0. На вашем форуме впервые,не знаю местных правил, Не знаете, так ознакомьтесь,...

Табулирование функции и суммы функционального ряда
visual basic 6.0 Протабулировать 1. функцию y на отрезке с шагом h. 2. сумму S функционального ряда разложения этой функции на...

Табулирование функции и суммы функционального ряда
Вид вычисляемой функции задать с помощью подпрограммы-функции. Функциональный ряд S вычисляется с точностью до e по рекуррентной формуле ...

12
 Аватар для Alex77755
11525 / 3812 / 683
Регистрация: 13.02.2009
Сообщений: 11,229
15.12.2014, 17:03
Подпрограмма не рекурентная
1
3 / 3 / 3
Регистрация: 11.04.2012
Сообщений: 37
15.12.2014, 17:20  [ТС]
Как из нее сделать рекуррентную? Не могу найти теорию по данному вопросу...
0
 Аватар для Alex77755
11525 / 3812 / 683
Регистрация: 13.02.2009
Сообщений: 11,229
15.12.2014, 17:34
Ну примерно так можно
Visual Basic
1
2
3
4
5
6
7
8
9
Function f(x, ByVal N As Long) As Double
    If N > 0 Then
        f = f + f(x, N - 1)
    Else
    f = 0
    End If
    f = f + x ^ N / FAKT(N)
    Debug.Print N + 1, f
End Function
вызов:
Visual Basic
1
2
3
Dim q
q = 0.5
f q, (b - a) / h
1
3 / 3 / 3
Регистрация: 11.04.2012
Сообщений: 37
15.12.2014, 17:36  [ТС]
Теперь стало более-менее понятно. А литературу не подскажете какую-нибудь по данной теме?
0
 Аватар для Alex77755
11525 / 3812 / 683
Регистрация: 13.02.2009
Сообщений: 11,229
15.12.2014, 17:46
И потом, кажется не правильно:
Visual Basic
1
2
For x = a To (b + h) Step h
    S + x ^ p / FAKT(p)
Ведь в формуле ряда x не меняется
Visual Basic
1
S=1 + x/1! + x^2/2! + ... + x^n/n!
1
3 / 3 / 3
Регистрация: 11.04.2012
Сообщений: 37
15.12.2014, 17:59  [ТС]
Хм...И правда, х не должен меняться.Но сумму функционального ряда вроде бы правильно считает

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

Добавлено через 4 минуты
В итоге и подпрограмма оказывается работает правильно.Мда...Совсем переучился. Спасибо еще раз!
0
 Аватар для Alex77755
11525 / 3812 / 683
Регистрация: 13.02.2009
Сообщений: 11,229
15.12.2014, 17:59
Там как-то так надо
Visual Basic
1
2
3
4
For x = 0 To (b - a) / h
    S = S + q ^ x / FAKT(x)
    List3.AddItem S
Next x
1
3 / 3 / 3
Регистрация: 11.04.2012
Сообщений: 37
15.12.2014, 18:10  [ТС]
Выводит двойки. Я не понимаю чему должен равняться x в функциональном ряде, если он не изменяется?
0
 Аватар для Alex77755
11525 / 3812 / 683
Регистрация: 13.02.2009
Сообщений: 11,229
15.12.2014, 18:18
В условии записано 1<=x<=2
1
3 / 3 / 3
Регистрация: 11.04.2012
Сообщений: 37
15.12.2014, 20:07  [ТС]
Примерно так я думаю...Надо же с точностью "e". Но все равно не сходится.
Visual Basic
1
2
3
4
5
6
7
8
For x = a To (b + h) Step h
 Do
  s_old = s
  s = s + x ^ p / FAKT(p)
  p = p + 1
  Loop while Abs(s - s_old) > e
List3.AddItem s
Next x
Добавлено через 28 минут
Оказывается при подсчете функции "у" используется экспонента, а не переменная "e".Теперь другая проблема. При подсчете функционального ряда считает только один раз. Как исправить не знаю.
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
37
38
39
40
Function f(ByVal x As Double) As Double
    
     y = 2.7182 ^ x
     f = y
End Function
Function FAKT(p)
    If p > 1 Then
        FAKT = FAKT(p - 1) * p
    Else
    FAKT = 1
    End If
End Function
 
 
Private Sub Command1_Click()
a = Val(Text1)
b = Val(Text2)
h = Val(Text3)
p = 1
s = 1
e = 15 ^ (-4)
For x = a To (b + h) Step h
List2.AddItem f(x)
Next x
For x = a To (b + h) Step h
List1.AddItem x
Next x
For x = a To (b + h) Step h
  Do
  s_old = s
  s = s + x ^ p / FAKT(p)
  p = p + 1
  Loop While Abs(s - s_old) > e
  List5.AddItem s_old
  List6.AddItem s
List3.AddItem s
Next x
For x = a To (b + h) Step h
y = 2.7182 ^ x
List4.AddItem y
0
 Аватар для Alex77755
11525 / 3812 / 683
Регистрация: 13.02.2009
Сообщений: 11,229
15.12.2014, 23:22
Лучший ответ Сообщение было отмечено Lotesse как решение

Решение

Функция написана неверно
Точнее это не та функция
Должна быть рекурентная по условию

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
Function f(x, ByVal N As Long, B, E) As Double
    If x ^ N / FAKT(N) > E Then
        f = f + f(x, N + 1, f, E)
    Else
    f = 1
    End If
    f = f + x ^ N / FAKT(N)
End Function
 
Function FAKT(p)
    If p > 1 Then
        FAKT = FAKT(p - 1) * p
    Else
    FAKT = 1
    End If
End Function
 
Private Sub Комманда1_Click()
Dim i
a = 1 'Val(Text1)
B = 2 'Val(Text2)
h = 0.1 'Val(Text3)
N = (B - a) / h + 1
p = 1
S = 1
E = 15 ^ (-4)
 
For x = 1 To N Step h
B = f(x, 1, 1, E)
Список1.AddItem B ' сумма ряда
Список2.AddItem Exp(x) ' экспонента
Next x
 
End Sub
1
3 / 3 / 3
Регистрация: 11.04.2012
Сообщений: 37
16.12.2014, 18:26  [ТС]
Спасибо, что так долго возились со мной. Теперь я точно все понял.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
16.12.2014, 18:26
Помогаю со студенческими работами здесь

Табулирование функции и Вычисление суммы (произведений) ряда
Задания на скриншоте

Табулирование функции и суммы функционального ряда
Протабулировать 1. функцию y на отрезке с шагом h. 2. сумму S функционального ряда разложения этой функции на отрезке с шагом...

Табулирование функции и суммы функционального ряда
Протабулировать 1. Функцию y на отрезке с шагом h. 2.Сумму S функционального ряда разложения разложения этой функции на отрезке с...

Табулирование функции и суммы функционального
Табулирование функции и суммы функционального ряда. 1. 3. 7 задан?

Табулирование функции и бесконечного функционального ряда разложения функции на данном отрезке
Всем доброго времени суток, Написал код для табулирования функции и функционального ряда и оценки средних погрешностей - все...


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

Или воспользуйтесь поиском по форуму:
13
Ответ Создать тему
Новые блоги и статьи
сукцессия микоризы: основная теория в виде двух уравнений.
anaschu 11.01.2026
https:/ / rutube. ru/ video/ 7a537f578d808e67a3c6fd818a44a5c4/
WordPad для Windows 11
Jel 10.01.2026
WordPad для Windows 11 — это приложение, которое восстанавливает классический текстовый редактор WordPad в операционной системе Windows 11. После того как Microsoft исключила WordPad из. . .
Classic Notepad for Windows 11
Jel 10.01.2026
Old Classic Notepad for Windows 11 Приложение для Windows 11, позволяющее пользователям вернуть классическую версию текстового редактора «Блокнот» из Windows 10. Программа предоставляет более. . .
Почему дизайн решает?
Neotwalker 09.01.2026
В современном мире, где конкуренция за внимание потребителя достигла пика, дизайн становится мощным инструментом для успеха бренда. Это не просто красивый внешний вид продукта или сайта — это. . .
Модель микоризы: классовый агентный подход 3
anaschu 06.01.2026
aa0a7f55b50dd51c5ec569d2d10c54f6/ O1rJuneU_ls https:/ / vkvideo. ru/ video-115721503_456239114
Owen Logic: О недопустимости использования связки «аналоговый ПИД» + RegKZR
ФедосеевПавел 06.01.2026
Owen Logic: О недопустимости использования связки «аналоговый ПИД» + RegKZR ВВЕДЕНИЕ Введу сокращения: аналоговый ПИД — ПИД регулятор с управляющим выходом в виде числа в диапазоне от 0% до. . .
Модель микоризы: классовый агентный подход 2
anaschu 06.01.2026
репозиторий https:/ / github. com/ shumilovas/ fungi ветка по-частям. коммит Create переделка под биомассу. txt вход sc, но sm считается внутри мицелия. кстати, обьем тоже должен там считаться. . . .
Расчёт токов в цепи постоянного тока
igorrr37 05.01.2026
/ * Дана цепь постоянного тока с сопротивлениями и источниками (напряжения, ЭДС и тока). Найти токи и напряжения во всех элементах. Программа составляет систему уравнений по 1 и 2 законам Кирхгофа и. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru