Calculating dot product of 2 3 dimensional row vectors

1 view (last 30 days)
x=input('Enter the 1st pair of 3 vector elements in [square brackets]: ');
if (x~=3);
disp('The vectors elements cannot contain < or > 3 elements.');
else
y=input('Enter the 2nd pair of 3 vector elements in [square brackets]: ');
if (y~=3);
disp('The vectors cannot contain < or > 3 elements.');
else
z=dot(x,y);
disp('The dot product of the entered vectors is: ');
disp(z)
end
Hi,
I am a new user on MATLAB and trying to figure out what is wrong with the code. After the first line, the code does not respond. Any suggestions would be welcome.
Thank you.
  3 Comments
Mughees Asif
Mughees Asif on 20 Feb 2019
Edited: Mughees Asif on 20 Feb 2019
I inputted x = [1 2] , that should give an error as my 'if statement' states x has to be equal to 3. I am trying to ensure the inputs are always equal to 3 elements.
Rik
Rik on 20 Feb 2019
You are not returning an error, and the code you showed is missing an end.

Sign in to comment.

Accepted Answer

Matt J
Matt J on 20 Feb 2019
Edited: Matt J on 20 Feb 2019
I think this is what you want:
x=input('Enter the 1st pair of 3 vector elements in [square brackets]: ');
if (numel(x)~=3);
disp('The vectors elements cannot contain < or > 3 elements.');
else
y=input('Enter the 2nd pair of 3 vector elements in [square brackets]: ');
if (numel(y)~=3);
disp('The vectors cannot contain < or > 3 elements.');
else
z=dot(x,y);
disp('The dot product of the entered vectors is: ');
disp(z)
end
end

More Answers (0)

Categories

Find more on Migrate GUIDE Apps in Help Center and File Exchange

Tags

Community Treasure Hunt

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

Start Hunting!