Форум программистов, компьютерный форум, киберфорум
VBA
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.67/6: Рейтинг темы: голосов - 6, средняя оценка - 4.67
0 / 0 / 0
Регистрация: 09.04.2016
Сообщений: 2

Error 9: Subscript out of range

15.12.2017, 23:23. Показов 1132. Ответов 4
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Добрый вечер! Получилось написать код решения системы оду методом Рунге-Кутты, но выдает ошибку Error 9: Subscript out of range на строчке Y0(0) = 340. Что следует изменить?


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
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
Option Explicit
 
Sub R_K()
Dim T0, T1, T As Single
Dim K1, K2, K3, K4, Q1, Q2, Q3, Q4 As Single
 
Dim H As Single
Dim Y0() As Single
Dim Y1() As Single
Dim N As Integer
Dim I As Integer
Dim J As Integer
T0 = 0: T1 = 100: N = 15
H = (T1 - T0) / N
Y0(0) = 340
Y1(0) = 35
T = T0
For I = 0 To N
For J = 0 To N
T = T + H
K1 = F1(T, Y0(I), Y1(I))
Q1 = F2(T, Y0(J), Y1(J))
K2 = F1(T + H / 3, Y0(I) + (H / 3) * K1, Y1(I) + H * Q1 / 3)
Q2 = F2(T + H / 3, Y0(J) + (H / 3) * K1, Y1(J) + H * Q1 / 3)
K3 = F1(T + 2 * H / 3, Y0(I) - (H * K1 / 3) + H * K2, Y1(I) - (H * Q1 / 3) + H * Q2)
Q3 = F2(T + 2 * H / 3, Y0(J) - (H * K1 / 3) + H * K2, Y1(J) - (H * Q1 / 3) + H * Q2)
K4 = F1(T + H, Y0(I) + H * K1 - H * K2 + H * K3, Y1(I) + H * K1 - H * K2 + H * K3)
Q4 = F2(T + H, Y0(J) + H * K1 - H * K2 + H * K3, Y1(J) + H * K1 - H * K2 + H * K3)
Y0(I + 1) = Y0(I) + (K1 + 3 * K2 + 3 * K3 + K4) * H / 8
Y1(J + 1) = Y1(J) + (Q1 + 3 * Q2 + 3 * Q3 + Q4) * H / 8
Next J
Next I
 
 
For I = 0 To N
For J = 0 To N
Worksheets("Output").Cells(I + 1).Value = Y0(I)
Worksheets("Output").Cells(I + 2).Value = Y1(J)
Next J
Next I
 
End Sub
 
Function F1(T As Single, Y0 As Single, Y1 As Single) As Single
Dim A As Single
Dim B As Single
Dim C As Single
A = 0.05: B = 0.00005: C = 0.002
F1 = Y0(A - B * Y0) - C * Y1
End Function
Function F2(T As Single, Y0 As Single, Y1 As Single) As Single
Dim D As Single
Dim E As Single
E = 0.002: D = 0.03
F2 = Y1(E * Y0 - D)
End Function
0
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
15.12.2017, 23:23
Ответы с готовыми решениями:

Error 9: Subscript out of range
Всем здравствуйте, нужно данные сводной на другой лист выдает ошибку Error 9: Subscript out of range помогите разобраться...

Error 9: Subscript out of range
Господа, всем добрый день мне нужно исправить ошибку в программе для Microsoft Excel 2003 После ввода данных в форму, вылезает...

Error 9: Subscript out of range
Делаю работу на VBA , выдает данную ошибку,причина неизвестна мне пока,прошу помощи Dim Tab11(6, 4), Tab12(6, 4) As String Dim...

4
es geht mir gut
 Аватар для SoftIce
11274 / 4760 / 1183
Регистрация: 27.07.2011
Сообщений: 11,439
15.12.2017, 23:36
Visual Basic
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
'.....................
'.....................
Dim H As Single
Dim Y0() As Single
Dim Y1() As Single
Dim N As Integer
Dim I As Integer
Dim J As Integer
T0 = 0: T1 = 100: N = 15
ReDim Y0(N),Y1(N) 
H = (T1 - T0) / N
Y0(0) = 340
Y1(0) = 35
T = T0
For I = 0 To N-1
For J = 0 To N-1
'.....................
'.....................
0
0 / 0 / 0
Регистрация: 09.04.2016
Сообщений: 2
16.12.2017, 10:35  [ТС]
Теперь ошибка expected array в функции F1, не записывает значение в Y0
0
oh my god
 Аватар для fever brain
1456 / 796 / 161
Регистрация: 05.01.2016
Сообщений: 2,307
Записей в блоге: 8
16.12.2017, 12:09
я тебя не узнал )) ты что картинку поменял ? оставь как было саву !

Добавлено через 2 минуты
Кстати есть разговор
0
es geht mir gut
 Аватар для SoftIce
11274 / 4760 / 1183
Регистрация: 27.07.2011
Сообщений: 11,439
16.12.2017, 12:11
Цитата Сообщение от Jane7447 Посмотреть сообщение
Теперь ошибка expected array в функции F1, не записывает значение в Y0
А как Вы хотели ? Там же массив. И в функции F2 тоже.

Хотя, как это должно работать, для меня загадка...
Visual Basic
1
2
3
4
5
6
Function F2(T As Single, Y0 As Single, Y1 As Single) As Single
Dim D As Single
Dim E As Single
E = 0.002: D = 0.03
F2 = Y1(E * Y0 - D) ' Y1  вроде бы элемент массива с загадочным индексом, Y0 тоже непонятно что.
End Function
Добавлено через 46 секунд
Цитата Сообщение от fever brain Посмотреть сообщение
оставь как было саву !
Так новый год на носу.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
16.12.2017, 12:11
Помогаю со студенческими работами здесь

Error 9: Subscript out of range
Здравствуйте, прошу помочь -- при запуске программы возникает ошибка "Subscript out of range " на строке f(i) = Mid(alf, i, 1). В чём...

Error 9: Subscript out of range - VBA
Выходит ошибка, не знаю в чём проблема? Sub задача() Dim h0 As Single, h11 As Single, h12 As Single Dim R As Single, Rmin...

Word: Error - Subscript Out of Range
ReDim mas(1 To kd, 1 To 1) ... ReDim Preserve mas(kd, 1 To UBound(mas, 2) + 1)Ругается на эту строчку, не понимаю что в ней такого...

'Runtime error '9': Subscript out of range'
Приветствую. Это шаблон EXCEL, для вставки фото, на второй строчке выходит ошибка 'Runtime error '9': Subscript out of range', помогите...

Run-time error '9': Subscript out of range
Выдаёт ошибку Run-time error '9': Subscript out uf range Sub ConstTest() Dim A() As Integer Dim B() As Integer Dim i, N...


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

Или воспользуйтесь поиском по форуму:
5
Ответ Создать тему
Новые блоги и статьи
Программный контроль заполнения реквизита табличной части документа
Maks 02.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "СписаниеМатериалов", разработанного в конфигурации КА2. Задача: реализовать контроль заполнения реквизита "ПричинаСписания". . .
wmic не является внутренней или внешней командой
Maks 02.04.2026
Решение: DISM / Online / Add-Capability / CapabilityName:WMIC~~~~ Отсюда: https:/ / winitpro. ru/ index. php/ 2025/ 02/ 14/ komanda-wmic-ne-naydena/
Программная установка даты и запрет ее изменения
Maks 02.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "СписаниеМатериалов", разработанного в конфигурации КА2. Задача: при создании документов установить период списания автоматически. . .
Вывод данных в справочнике через динамический список
Maks 01.04.2026
Реализация из решения ниже выполнена на примере нетипового справочника "Спецтехника" разработанного в конфигурации КА2. Задача: вывести данные из ТЧ нетипового документа. . .
Программное заполнения текстового поля в реквизите формы документа
Maks 01.04.2026
Алгоритм из решения ниже реализован на нетиповом документе "ВыдачаОборудованияНаСпецтехнику" разработанного в конфигурации КА2, в дополнении к предыдущему решению. На форме документа создается. . .
К слову об оптимизации
kumehtar 01.04.2026
Вспоминаю начало 2000-х, университет, когда я писал на Delphi. Тогда среди программистов на форумах активно обсуждали аккуратную работу с памятью: нужно было следить за переменными, вовремя. . .
Идея фильтра интернета (сервер = слой+фильтр).
Hrethgir 31.03.2026
Суть идеи заключается в том, чтобы запустить свой сервер, о чём я если честно мечтал давно и давно приобрёл книгу как это сделать. Но не было причин его запускать. Очумелые учёные напечатали на. . .
Модель здравосоХранения 6. ESG-повестка и устойчивое развитие; углублённый анализ кадрового бренда
anaschu 31.03.2026
В прикрепленном документе раздумья о том, как можно поменять модель в будущем
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru