2014 dxdy logo

Научный форум dxdy

Математика, Физика, Computer Science, Machine Learning, LaTeX, Механика и Техника, Химия,
Биология и Медицина, Экономика и Финансовая Математика, Гуманитарные науки




Начать новую тему Ответить на тему
 
 MATLAB разные ответы для одного и того же
Сообщение20.02.2023, 12:42 
Заслуженный участник
Аватара пользователя


22/01/11
2641
СПб
Вычисляю некоторую величину в исполняемом m-файле
Код:
N=100;
%code A
disp(max(T));

и в другом файле
Код:
disp(Ts(100));

который ссылается на
Код:
function T=Ts(N)
%code A
end

Как такое может быть, что ответы разные? $T$ это вектор.

 Профиль  
                  
 
 Re: MATLAB разные ответы для одного и того же
Сообщение20.02.2023, 16:40 
Заслуженный участник
Аватара пользователя


11/04/08
2749
Физтех
Перейдите в режим дебага и построково пройдитесь по вычислениям, так узнаете в чем дело.

 Профиль  
                  
 
 Re: MATLAB разные ответы для одного и того же
Сообщение20.02.2023, 17:28 
Заслуженный участник
Аватара пользователя


01/09/13
4656
а почему ответы должны быть одинаковые? - по первому файлу связь $N$ и $T$ не понятна, а во втором файле не понятно что вообще возвращает функция $Ts$
Если же под "code A" имеется ввиду один и тот же код "без побочных эффектов", то в первом случае выводиться будет число, а во втором случае - массив.... Но, полагаю, такая разница была бы слишком очевидной. Значит либо код разный, либо он не является "чистым".

 Профиль  
                  
 
 Re: MATLAB разные ответы для одного и того же
Сообщение20.02.2023, 19:06 
Заслуженный участник


18/09/21
1756
alcoholist в сообщении #1582443 писал(а):
Как такое может быть, что ответы разные?
В первом случае есть "max", во втором нету.

 Профиль  
                  
 
 Re: MATLAB разные ответы для одного и того же
Сообщение21.02.2023, 04:23 
Заслуженный участник
Аватара пользователя


22/01/11
2641
СПб
да, в обоих случаях max выводится, конечно

-- Вт фев 21, 2023 04:24:22 --

ShMaxG
там итераций 100500

-- Вт фев 21, 2023 04:25:49 --

Geen в сообщении #1582479 писал(а):
Значит либо код разный, либо он не является "чистым"

вот один в один code A, там внутри где-то N

 Профиль  
                  
 
 Re: MATLAB разные ответы для одного и того же
Сообщение21.02.2023, 05:59 
Заслуженный участник


18/09/21
1756
Code A, тот который не в функции, находится в глобальном окружении и видит доступные переменные. Может он от них что-то использует и работает по другому.
(А то может скинуть сюда этот code A, может яснее станет.)

 Профиль  
                  
 
 Re: MATLAB разные ответы для одного и того же
Сообщение21.02.2023, 09:49 
Заслуженный участник
Аватара пользователя


22/01/11
2641
СПб
zykov в сообщении #1582547 писал(а):
находится в глобальном окружении

я перезагружался

 Профиль  
                  
 
 Re: MATLAB разные ответы для одного и того же
Сообщение21.02.2023, 11:03 
Заслуженный участник
Аватара пользователя


01/09/13
4656
есть ли в этом коде обработчики ошибок?

 Профиль  
                  
Показать сообщения за:  Поле сортировки  
Начать новую тему Ответить на тему  [ Сообщений: 8 ] 

Модераторы: Karan, Toucan, PAV, maxal, Супермодераторы



Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей


Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете добавлять вложения

Найти:
Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group