1 страниц (4 вхождений)
Ошибки в строковых функциях - Сообщения
#1 Опубликовано: 28.11.2012 15:23:00
#2 Опубликовано: 28.11.2012 19:20:56
В последнем примере результат функции findstr - это матрица. Сравнивать её со скалярным нулём некорректно. К сожалению, из функций проверки типов есть только IsString. (Пожелание: ввести функцию типа typeOf(), возвращающую, например, числовую константу, обозначающую тип результата выражения: 1-число, 2-матрица, 3-строка, 4-система... Кроме того, функции типа findstr() могли бы в случае неудачи возвращать матрицу нулевого размера, что позволило бы просто использовать для контроля результата функцию length().)
Вы могли бы сделать примерно так:
---
Чего-то я наусложнял. Прямая проверка прекрасно работает:
[MATH lang=ENG](matrix(1,1)≡-1)=0[/MATH]
Не работает сравнение "больше/меньше" между разнородными значениями, но это только логично.

Вы могли бы сделать примерно так:
---
Чего-то я наусложнял. Прямая проверка прекрасно работает:
[MATH lang=ENG](matrix(1,1)≡-1)=0[/MATH]
Не работает сравнение "больше/меньше" между разнородными значениями, но это только логично.
С уважением,
Михаил Каганский
#3 Опубликовано: 29.11.2012 05:35:44
Спасибо.
Значит локализовалась ошибка только со str2num для формул, содержащих запятую
Строки 2.sm (13 КиБ) скачан 31 раз(а).
Значит локализовалась ошибка только со str2num для формул, содержащих запятую
Строки 2.sm (13 КиБ) скачан 31 раз(а).
#4 Опубликовано: 29.11.2012 10:07:58
Провел маленькое исследование.
В общем если ничего не трогать в настройках, то например команды wfile и rfile работают, и содержимое файла такое :
"sys(sin(1);cos(1);2;1)"
Результат операции num2str такой:
"sys(sin(1),cos(1),2,1)"
При этомзамена разделителя аргументов в настройках никоим образом не влияет на num2str ..
З.ы. вот этот вариант не работает:
S:num2str(sys(sin(x),cos(x),2,1))
S="sys(sin(1),cos(1),2,1)"
wfile(S,test)
rfile(test)=#
а этот работает:
S:num2str(sys(sin(x),cos(x),2,1))
S="sys(sin(1),cos(1),2,1)"
S:strrep(S,",",";" )
wfile(S,test)
rfile(test)=#
В общем если ничего не трогать в настройках, то например команды wfile и rfile работают, и содержимое файла такое :
"sys(sin(1);cos(1);2;1)"
Результат операции num2str такой:
"sys(sin(1),cos(1),2,1)"
При этомзамена разделителя аргументов в настройках никоим образом не влияет на num2str ..
З.ы. вот этот вариант не работает:
S:num2str(sys(sin(x),cos(x),2,1))
S="sys(sin(1),cos(1),2,1)"
wfile(S,test)
rfile(test)=#
а этот работает:
S:num2str(sys(sin(x),cos(x),2,1))
S="sys(sin(1),cos(1),2,1)"
S:strrep(S,",",";" )
wfile(S,test)
rfile(test)=#
Не официальный справочник http://sites.google.com/site/mikkhalichlab/
jabber конференция smath@conference.jabber.ru
1 страниц (4 вхождений)
-
Новые сообщения
-
Нет новых сообщений