MATLAB爱好者论坛-LabFans.com

MATLAB爱好者论坛-LabFans.com (https://www.labfans.com/bbs/index.php)
-   资料存档 (https://www.labfans.com/bbs/forumdisplay.php?f=72)
-   -   如何在MATLAB中将变量值放入文本字符串中? (https://www.labfans.com/bbs/showthread.php?t=23104)

poster 2019-12-10 20:30

如何在MATLAB中将变量值放入文本字符串中?
 
我正在尝试编写一个简单的函数,该函数接受两个输入x和y ,并将它们传递给其他三个简单函数,这些函数将它们相加,相乘和相除。然后,main函数应将结果显示为包含x , y和总数的字符串。

我认为我对输出参数有些不了解。无论如何,这是我的(可怜)代码:

function a=addxy(x,y) a=x+y; function b=mxy(x,y) b=x*y; function c=dxy(x,y) c=x/y; 主要功能是:

function [def]=answer(x,y) d=addxy(x,y); e=mxy(x,y); f=dxy(x,y); z=[def] 如何将x , y , d , e和f转换为字符串?我尝试了不同的矩阵和类似的东西:

['the sum of' x 'and' y 'is' d] 但没有显示任何变量。

另外两个问题:
[LIST][*]为什么即使我没有要求z的长度,函数仍返回“ ans 3”?[*]如果有人可以为MATLAB脚本初学者推荐一本好书,我将不胜感激。[/LIST]
[B]回答:[/B]

正如[URL="https://stackoverflow.com/questions/2204579/getting-variable-values-into-a-text-string-matlab/2204594#2204594"]Peter[/URL]和[URL="https://stackoverflow.com/questions/2204579/getting-variable-values-into-a-text-string-matlab/2204631#2204631"]Amro所[/URL]说明的,您必须首先将数字值转换为格式化的字符串,以便显示它们或将它们与其他字符串连接在一起。您可以使用函数[URL="http://www.mathworks.com/access/helpdesk/help/techdoc/ref/fprintf.html"]FPRINTF[/URL] , [URL="http://www.mathworks.com/access/helpdesk/help/techdoc/ref/sprintf.html"]SPRINTF[/URL] , [URL="http://www.mathworks.com/access/helpdesk/help/techdoc/ref/num2str.html"]NUM2STR[/URL]和[URL="http://www.mathworks.com/access/helpdesk/help/techdoc/ref/int2str.html"]INT2STR进行此操作[/URL] 。

关于将ans = 3作为输出,可能是因为您没有将answer的输出分配给变量。如果要获取所有输出值,则必须通过以下方式调用answer :

[out1,out2,out3] = answer(1,2); 这会将值d放入out1 ,将值e放入out2 ,将值f放入out3 。当您执行以下操作时:

answer(1,2) MATLAB将自动将第一个输出d (在这种情况下,其值为3)分配给默认工作空间变量[URL="http://www.mathworks.com/access/helpdesk/help/techdoc/ref/ans.html"]ans[/URL] 。

关于建议学习MATLAB的良好资源,您不应低估MATLAB文档的价值。我已经学会了自己使用它的大部分知识。您可以[URL="http://www.mathworks.com/access/helpdesk/help/techdoc/learn_matlab/bqr_2pl.html"]在线[/URL]访问它,也可以使用[URL="http://www.mathworks.com/access/helpdesk/help/techdoc/ref/doc.html"]DOC[/URL] , [URL="http://www.mathworks.com/access/helpdesk/help/techdoc/ref/help.html"]HELP[/URL]或[URL="http://www.mathworks.com/access/helpdesk/help/techdoc/ref/helpwin.html"]HELPWIN[/URL]函数在您的MATLAB副本中访问它。



[url=https://stackoverflow.com/questions/2204579]更多&回答...[/url]


所有时间均为北京时间。现在的时间是 04:57

Powered by vBulletin
版权所有 ©2000 - 2025,Jelsoft Enterprises Ltd.