I'd like to delete 24th one of "for 1:1:30"
조회 수: 2 (최근 30일)
이전 댓글 표시
Hi.
I'd like to delete 24th one of "for 1:1:30" Actually, I can run twice to simulate it as below.
for 1:1:23 and for 24:1:30
However, I'd like to do it in one loop.
I have one more question. Can you let me know a function to return number 1( or zero) when an input is negative value like -5.
a= somefuntion (-5)
ANSWER : 1 (or 0)
Thank you.
Best regards,
Jaeyoung Park
댓글 수: 1
the cyclist
2012년 1월 29일
In the future, I suggest that if you have two questions, split them up into two separate entries.
채택된 답변
Walter Roberson
2012년 1월 29일
There are a number of different ways:
for K = 1 : 30 %#1
if K == 24; continue; end
...
end
for K = setdiff(1:30,24) %#2
...
end
KV = 1:30; KV(24) = []; %#3
for K = KV
...
end
For your second question, again there are multiple ways:
function r = somefunction(v) %#1
if v < 0
r = 1;
else
r = 0;
end
end
function r = somefunction(v) %#2
r = 0 + (v < 0);
end
somefunction = @(v) v < 0; %#3
댓글 수: 0
추가 답변 (2개)
the cyclist
2012년 1월 29일
Not sure I understand what you mean by your first question, but for your second one:
function out = isNegative(x)
out = double(x<0); % Using "double" to convert from logical to numerical value
end
But why not just put "x<0" right in your code, rather than writing a function?
댓글 수: 0
참고 항목
카테고리
Help Center 및 File Exchange에서 Loops and Conditional Statements에 대해 자세히 알아보기
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!