查看: 953|回复: 2|关注: 0

[已解决] 求助符号变量问题

[复制链接]

新手

7 麦片

财富积分


050


1

主题

2

帖子

0

最佳答案
f=sym(1/3,'f')
d=sym(1/3,'d')

f=6004799503160661/18014398509481984
d=0.333333333333333......
f和d是属于什么类型的 为什么结果是这样的

MATLAB 基础讨论
版块优秀回答者

中级

548 麦片

财富积分


5001500


0

主题

732

帖子

112

最佳答案
  • 关注者: 19
发表于 2018-4-16 17:47:10 | 显示全部楼层 |此回复为最佳答案
'f' stands for 'floating point'.  All values are transformed from
    double precision to exact numeric values N*2^e for integers N and e.

d' stands for 'decimal'.  The number of digits is taken from the
    current setting of DIGITS used by VPA.  Using fewer than 16 digits
    reduces accuracy, while more than 16 digits may not be warranted.
    For example, with digits(10), sym(4/3,'d') is 1.333333333, while
    with digits(20), sym(4/3,'d') is 1.3333333333333332593,
    which does not end in a string of 3's, but is an accurate decimal
    representation of the double-precision floating point number nearest
    to 4/3.

也就是说,f表示浮点数,d表示小数,你help sym 自己查证一下!

新手

7 麦片

财富积分


050


1

主题

2

帖子

0

最佳答案
 楼主| 发表于 2018-4-16 19:06:55 | 显示全部楼层
土木小王子 发表于 2018-4-16 17:47
'f' stands for 'floating point'.  All values are transformed from
    double precision to exact num ...

浮点型为什么表示1/3是那么大数值的一个分式呀
您需要登录后才可以回帖 登录 | 注册

本版积分规则

关闭

站长推荐上一条 /3 下一条

快速回复 返回顶部 返回列表