【问题标题】:Why won't the following operations work in Matlab为什么以下操作在 Matlab 中不起作用
【发布时间】:2019-10-23 10:31:39
【问题描述】:
如果输入到 Matlab 脚本中,以下内容被认为是不可接受的:
i) 8.8*e-2
ii) 3.2e1.5
iii) 1.25e+005
但为什么 i)、ii) 和 iii) 不起作用?
是因为e 未定义吗?
我原以为 i) 的原因是因为不必要的 *,但在 ii) 或 iii) 中都没有 *,我认为它们也是不可接受的。
【问题讨论】:
标签:
matlab
scientific-notation
operation
【解决方案1】:
我:
>> 8.8*e-2
Undefined function or variable 'e'.
这是不言自明的;您要求与 * 运算符相乘。应该是8.8e-2
二:
>> 3e1.5
3e1.5
↑
Error: Unexpected MATLAB expression.
来自维基百科(重点是我的):
科学记数法(在英国也称为科学形式或标准索引形式,或标准形式)是一种表示数字太大或太小而不能方便地以十进制形式书写的方式。 [...]
在科学计数法中,所有数字都以m × 10^n 的形式书写
(m 乘以 10 的 n 次方),其中指数 n 为整数,系数 m 为任意实数。
你想用
>> 3*10^1.5
ans =
94.8683
三:
>> 1.25e+005
ans =
125000
有什么问题?
2 是可以接受的:6,10 和 .0
你能澄清一下这个问题吗?这似乎与科学记数法无关。
>> 6,10
ans =
6
ans =
10
>> .0
ans =
0