How to write a function to display two messages to the user (in Matbal 2011)?

1 次查看(过去 30 天)
Hello everyone. I've been reading a tutorial about Matlab 6.1 but I'm working with Matlab 2011.
(I'm sorry if I make a mistake talking about string/integer but I'm new to Matlab and I use to program in C/Java/...)
I have to write a simple function doing the following:
- it takes two string (name1 and name2)
- it returns two integer representing how many characters the two string have (size1 , size2)
- the function print two lines:
  • "Hello name1" (where name1 is what I pass to the function)
  • "Hello name2" ((where name2 is what I pass to the function)
The code (it works in Matlab 6.1) provided by the tutorial is:
function [size1,size2] = helloNames (name1,name2)
% print Hello + name 1 , Hello + name 2
[rowNumber,size1] = size(name1);
[rowNumber,size2] = size(name2);
disp(cat(2,'Hello ',name1));
disp(cat(2,'Hello ',name2));
But in Matbal 2011 it doesn't works and I've tried to modify it but I can't get the same result.
Any suggestion? And what's used for "cat"?
Thank you in advance

回答(3 个)

Sean de Wolski
Sean de Wolski 2012-2-24
doc cat
for more info on cats. That looks like it should work, what error are you recieving?
More per comments
A = rand(10,15);
%example1
[junk, sizeEX1] = size(A);
%example2
[~, sizeEX2] = size(A);
%example3
[sizeEX3] = size(A);
Compare the various variables.

Srinivas
Srinivas 2012-2-24
helloNames('name1', 'name2')
should work

Manuel
Manuel 2012-2-24
@Srinivas.. well its' strange It works now (but I'm sure it didn't worked). Just a question: function [size1,size2] = helloNames (name1,name2) % print Hello + name 1 , Hello + name 2 [rowNumber,size1] = size(name1); [rowNumber,size2] = size(name2); disp(cat(2,'Hello ',name1)); disp(cat(2,'Hello ',name2));
give the warning "rowNumber appears to not be used"(and I understand this)..If I click fix rowNumber is replaced witch "~". What does "~" means? And what's difference there is between:
[~,size1] = size(name1);
[~,size2] = size(name2);
and
[size1] = size(name1);
[size2] = size(name2);
?
  3 个评论
Manuel
Manuel 2012-2-24
Thank you for your answer. But I can't understand the explanation.
Could you make an example please?

请先登录,再进行评论。

类别

Help CenterFile Exchange 中查找有关 Environment and Settings 的更多信息

标签

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by