What would I need to make 'i' allow all matrices?

2 次查看(过去 30 天)
clc,clear
prompt = 'Give a matrix of 4x4: ';
x = input(prompt);
for i=1:16
if x(i)<=0
disp('Error one of the numbers put in was either a zero or negative, Fix it and start over.')
if i~=1:16
disp('The matrix is not a 4x4 please start again and fix the error.')
end
end
end
disp(x)
Cause at the moment Im only allowed to do 4x4 or 4x5 or 4x6 i cant do 3x3 or 4x3 etc...
  1 个评论
John D'Errico
John D'Errico 2016-3-31
Please don't post the same question again just to make a minor edit to the first one.

请先登录,再进行评论。

采纳的回答

MHN
MHN 2016-3-31
编辑:MHN 2016-3-31
prompt = 'Give a matrix of 4x4: ';
x = input(prompt);
[m,n] = size(x);
if m~=4 | n~= 4
disp('The matrix is not a 4x4 please start again and fix the error.')
else
for i=1:16
if x(i)<=0
disp('Error one of the numbers put in was either a zero or negative, Fix it and start over.')
end
end
end
disp(x)

更多回答(1 个)

MHN
MHN 2016-4-1
prompt = 'Give a matrix of 4x4: ';
flag = 0;
while flag ==0
x = input(prompt);
[m,n] = size(x);
if m==4 && n==4
flag = 1;
else
disp('The matrix is not a 4x4 please start again and fix the error.')
end
if ~isempty(find(x<=0,1))
disp('Error one of the numbers put in was either a zero or negative, Fix it and start over.')
flag = 0;
end
end

类别

Help CenterFile Exchange 中查找有关 Large Files and Big Data 的更多信息

Community Treasure Hunt

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

Start Hunting!

Translated by