如何在matlab中为数值矩阵添加字符?

如何在matlab中为数值矩阵添加字符?,matlab,matrix,Matlab,Matrix,在matlab中,我们通常使用fprintf命令添加一个标题 当表的大小取决于输入,并且超过某个范围(超过命令窗口中能够显示的列总数)时,这是一个问题 出现这种情况时,我们先前使用fprintf命令指定的标头将与当前输出数据不兼容 我想知道有没有一种方法,比如在某种迭代过程中将字符串添加到矩阵的第一行。我努力了,但仍然找不到解决这个问题的正确方法 或者这实际上是无法在matlab中实现的 乙二醇 清晰;clc A=[2831;022-14;7-212;-1052] B=[-2;4;3;5] Es

在matlab中,我们通常使用
fprintf
命令添加一个标题

当表的大小取决于输入,并且超过某个范围(超过命令窗口中能够显示的列总数)时,这是一个问题

出现这种情况时,我们先前使用
fprintf
命令指定的标头将与当前输出数据不兼容

我想知道有没有一种方法,比如在某种迭代过程中将字符串添加到矩阵的第一行。我努力了,但仍然找不到解决这个问题的正确方法

或者这实际上是无法在matlab中实现的

乙二醇

清晰;clc
A=[2831;022-14;7-212;-1052]
B=[-2;4;3;5]
Es=1e-5
n=长度(B);
x=零(n,1);
Ea=一(n,1);
iter=0;
而max(Ea)>=Es

如果iter如果表格的大小取决于输入,则使用单元格数组,使用c=cell(…)。
在每次迭代中,只需调用c{i,j}而不是c[i,j]。

你能给出一个例子,说明你在尝试什么以及你得到的结果吗?@grantnz我编辑了我的问题。我真的很想知道怎么做。谢谢!现在还不清楚你在做什么时遇到了问题。您提到使用fprintf生成头,但您的代码不使用fprintf,也不生成头。您是在尝试生成带有标题行的matlab矩阵,还是打印带有标题行的打印输出的matlab矩阵?@LeeorI添加了一个示例,我想知道在这种情况下如何添加标题,以及如何根据输入数据灵活地添加标题
clear;clc
A = [2 8 3 1;0 2 -1 4;7 -2 1 2;-1 0 5 2]
B = [-2;4;3;5]
Es = 1e-5


n = length(B);
x = zeros(n,1);
Ea = ones(n,1);
iter = 0;

while max(Ea) >= Es
    if iter <= 30
        iter = iter + 1;
        x_old = x;
        for i = 1:n
           j = 1:n;
           j(i) = [];
            x_cal = x;
            x_cal(i) = [];
            x(i) = (B(i) - sum(A(i,j) * x_cal)) / A(i,i);
        end
    else
        break
    end

    x_ans(:,iter) = x;
    Ea(:,iter) =abs(( x - x_old) ./ x);

    end

result = [1:iter; x_ans; Ea]'