【问题标题】:Matlab: printing symbolic equationsMatlab:打印符号方程
【发布时间】:2011-07-22 01:16:21
【问题描述】:

我有一个符号方程 a la 2x + 3y +4z = 0。问题是我想把它连同我正在输入的完整句子一起打印到屏幕上。我希望在终端中显示:“整流平面的方程是:2x + 3y + 4z = D。”我是 Matlab 新手,无法找到适合此功能的函数!

谢谢, 蛇

【问题讨论】:

    标签: matlab


    【解决方案1】:

    您可以使用CHAR 方法将符号对象转换为字符串,并使用FPRINTF 函数将字符串打印到屏幕上。这是一个例子:

    syms x y z;        %# Define symbolic variables
    eq = 2*x+3*y+4*z;  %# Create symbolic equation
    fprintf('The equation for the rectifying plane is: %s = D.\n',char(eq));
    

    这将显示以下内容:

    The equation for the rectifying plane is: 2*x + 3*y + 4*z = D.
    

    【讨论】:

      【解决方案2】:

      我相信fprintf(args...) 是 MatLab 中的一个函数,我在 Google 上的简短搜索支持这一点。 调查一下。

      【讨论】:

      • 太棒了,找到了实现它的方法。非常感谢!
      【解决方案3】:

      当然,Matlab 有类似于 C 的命令,只是稍有变化,如果你想使用 %i。您可以使用与 C 的 printf 命令类似的格式,即 fprintf,但我认为这也可以在任何仪器上打印。

      完整格式如下:

                     fprintf(fileID, format, A, ...)
      

      这里的格式可以指定%i

      还可以通过按 F1 写入 fprintf 来查看完整的详细信息。

      【讨论】:

      • 当你有足够的声望这样做时,回来投票并接受这个作为答案。
      【解决方案4】:
      disp('is what you are looking for?');
      

      【讨论】:

      • 嗯,差不多,但有什么办法可以放入类似 C 的 %i 参数?
      【解决方案5】:

      如果我正确理解你的等待,有几种方法,你可以这样做,以防你只想打印

      syms x y z;
      q = 2*x + 3*y + 4*z;
      
      disp('Displayed equation :');
      pretty(q);
      

      或者尝试使用pretty_equation()

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2013-11-19
        • 2020-06-30
        • 2022-08-23
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2011-04-10
        • 1970-01-01
        相关资源
        最近更新 更多