|
14 / 13 / 1
Регистрация: 18.12.2018
Сообщений: 422
|
|||||||||||
Не работает цикл while25.11.2019, 12:31. Показов 2370. Ответов 12
Всем привет. Формировал метод Якоби, хотел сделать вектор решений, где x_vectors[i][1] результат решения последней итерации, а x_vectors[i][0] результат предпоследней:
0
|
|||||||||||
| 25.11.2019, 12:31 | |
|
Ответы с готовыми решениями:
12
Почему не работает цикл for in range . То есть он не повторяет вложенный в него цикл while
Цикл: как работает цикл в цикле |
|
|
|
| 25.11.2019, 14:20 | |
|
SalavatGood, чудес не бывает.
Избавьтесь от глобалок, так вы точно ничего не отследите. И протестируйте ваши функции по отдельности. Добавлено через 38 секунд Да, и ещё можно использовать векторную запись numpy.
0
|
|
|
2382 / 1666 / 279
Регистрация: 29.05.2011
Сообщений: 3,402
|
||||||
| 25.11.2019, 15:07 | ||||||
|
Неправильными выглядят строки 7, 8, 9. Похоже там пытались умножить строку матрицы на вектор, а вышло совсем не то.
Ну и ещё. В цикле while после первой итерации delta, очевидно, равна -1.6, что меньше, чем 0.01. Возможно сравнивать надо модуль delta?
1
|
||||||
|
14 / 13 / 1
Регистрация: 18.12.2018
Сообщений: 422
|
||||||
| 26.11.2019, 10:52 [ТС] | ||||||
|
grizlik78, в данной функции я пытался реализовать формулу(на фото):
0
|
||||||
|
|
|
| 26.11.2019, 11:03 | |
|
SalavatGood, во-первых, не надо менять значения in-place. Запутаетесь. (Это допустимо в редких случаях ради быстродействия, тут не тот случай.)
Во-вторых, почему бы не использовать векторную запись? Похоже на обычное матричное произведение.
0
|
|
|
14 / 13 / 1
Регистрация: 18.12.2018
Сообщений: 422
|
|
| 26.11.2019, 11:12 [ТС] | |
|
grizlik78, матрица x_vectors это вектор решений, где(как бы мне хотелось) 0-й столбец результат иксов предпоследней итерации, а 1-й столбец иксы последней итерации. Такая матрица мне как раз нужна, чтобы вычислить значение delta(максимальное значение/разница разности между иксами последней и предпоследней итерации). И delta сама же и является условием выхода из цикла, поскольку как только delta станет, допустим, < 0.01, то необходимая точность как раз таки будет достигнута. Задача вроде бы вполне легкая, но мне кажется, что мне знаний где-то не хватает, по скольку у меня когда я ввожу функции решения уравнения и перестановок столбцов(x_solving, permutation) в цикл while, у меня напрочь отказывается все работать как надо...
Добавлено через 2 минуты dondublon, матрицы тут не причем, я умножаю между собой элементы матриц с которыми работаю
0
|
|
|
14 / 13 / 1
Регистрация: 18.12.2018
Сообщений: 422
|
|||
| 26.11.2019, 11:30 [ТС] | |||
|
dondublon,
0
|
|||
|
14 / 13 / 1
Регистрация: 18.12.2018
Сообщений: 422
|
||||||||||||||||
| 26.11.2019, 12:18 [ТС] | ||||||||||||||||
|
dondublon, спасибо и вот еще я применил модуль для delta, но у меня функция перестановки(permutation) не корректно работает в цикле while:
![]() Вот функция перестановки, кстати:
0
|
||||||||||||||||
|
14 / 13 / 1
Регистрация: 18.12.2018
Сообщений: 422
|
|||||||||||
| 06.12.2019, 12:21 [ТС] | |||||||||||
|
dondublon, я сам неправильно реализовал функцию permutation(не те столбцы присвоил), однако просто присвоение столбцов чуть чуть по другому сделал и все заработало:
0
|
|||||||||||
|
|
|
| 06.12.2019, 13:24 | |
|
SalavatGood, во-первых, в моём варианте используется векторность numpy.
Во-вторых, in-place - меняем прямо на месте, в противоположность подходу, когда старую переменную не меняем, а для результата создаём новую. Это в итоге проще для понимания.
1
|
|
| 06.12.2019, 13:24 | |
|
Помогаю со студенческими работами здесь
13
Нерабочий цикл. Я не понимаю почему он не работает. Я выделил нерабочий цикл пометками. Знает ли кто то причину? Почему цикл for (java script) не работает в браузерах от гугла, яндекса, но работает в IE
Почему не работает цикл for in range . То есть for in range не повторяет вложенный в него цикл while Цикл работает неправильно, в то время как POST работает Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |
|
Новые блоги и статьи
|
|||
|
Подключение Box2D v3 к SDL3 для Android: физика и отрисовка коллайдеров
8Observer8 29.01.2026
Содержание блога
Box2D - это библиотека для 2D физики для анимаций и игр. С её помощью можно определять были ли коллизии между конкретными объектами. Версия v3 была полностью переписана на Си, в. . .
|
Инструменты COM: Сохранение данный из VARIANT в файл и загрузка из файла в VARIANT
bedvit 28.01.2026
Сохранение базовых типов COM и массивов (одномерных или двухмерных) любой вложенности (деревья) в файл, с возможностью выбора алгоритмов сжатия и шифрования.
Часть библиотеки BedvitCOM
Использованы. . .
|
Загрузка PNG с альфа-каналом на SDL3 для Android: с помощью SDL_LoadPNG (без SDL3_image)
8Observer8 28.01.2026
Содержание блога
SDL3 имеет собственные средства для загрузки и отображения PNG-файлов с альфа-каналом и базовой работы с ними. В этой инструкции используется функция SDL_LoadPNG(), которая. . .
|
Загрузка PNG с альфа-каналом на SDL3 для Android: с помощью SDL3_image
8Observer8 27.01.2026
Содержание блога
SDL3_image - это библиотека для загрузки и работы с изображениями. Эта пошаговая инструкция покажет, как загрузить и вывести на экран смартфона картинку с альфа-каналом, то есть с. . .
|
|
Влияние грибов на сукцессию
anaschu 26.01.2026
Бифуркационные изменения массы гриба происходят тогда, когда мы уменьшаем массу компоста в 10 раз, а скорость прироста биомассы уменьшаем в три раза. Скорость прироста биомассы может уменьшаться за. . .
|
Воспроизведение звукового файла с помощью SDL3_mixer при касании экрана Android
8Observer8 26.01.2026
Содержание блога
SDL3_mixer - это библиотека я для воспроизведения аудио. В отличие от инструкции по добавлению текста код по проигрыванию звука уже содержится в шаблоне примера. Нужно только. . .
|
Установка Android SDK, NDK, JDK, CMake и т.д.
8Observer8 25.01.2026
Содержание блога
Перейдите по ссылке: https:/ / developer. android. com/ studio и в самом низу страницы кликните по архиву "commandlinetools-win-xxxxxx_latest. zip"
Извлеките архив и вы увидите. . .
|
Вывод текста со шрифтом TTF на Android с помощью библиотеки SDL3_ttf
8Observer8 25.01.2026
Содержание блога
Если у вас не установлены Android SDK, NDK, JDK, и т. д. то сделайте это по следующей инструкции: Установка Android SDK, NDK, JDK, CMake и т. д.
Сборка примера
Скачайте. . .
|