在数组中添加数字

1次观看(过去30天)
穆罕默德·乌斯曼
穆罕默德·乌斯曼 2021年2月13日
评论道: 史蒂文的主 2021年2月16日
假设我有两个向量
X = [7 4 6];
Y = [1 4 4];
但这些不仅仅是向量,把它们看成一个数字,比如746和144。现在我想把这些数字相加(就像我们在纸上做的那样,进位法)。
所以答案应该是890。
并且要像这样显示:
7 4 6
1 4 4
-----
8 9 0
请帮我编码。
谢谢

接受的答案

埃米尔哈姆萨
埃米尔哈姆萨 2021年2月13日
这是一种方法
X = [7 4 6];
Y = [1 4 4];
Z = sscanf(sprintf(' % d ', x),' % d ') + sscanf (sprintf (' % d ', y)' % d ')
4评论
史蒂文的主
史蒂文的主 2021年2月16日
您的数字太大,无法保证它们可以精确地存储为双精度数字。
X = 96130549848139976391;
快速眼动(x, 10)% 1位数
Ans = 8
间距= eps(x)
间距= 16384
x附近的连续可表示数之间的间距为16384。它太大了,甚至不能精确地存储为 uint64 号码。
Y = uint64(96130549848139976391)%饱和在intmax
y =uint6418446744073709551615
您将需要存储您的数字并在任意精度算术中执行计算,如在符号数学工具箱中。
S = sym(“96130549848139976391”)
s =
96130549848139976391

登录评论。

更多答案(0)

标签

社区寻宝

在MATLAB Central中找到宝藏,并发现社区如何帮助您!

开始狩猎!