I'd like to delete 24th one of "for 1:1:30"
    3 visualizaciones (últimos 30 días)
  
       Mostrar comentarios más antiguos
    
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 comentario
  the cyclist
      
      
 el 29 de En. de 2012
				In the future, I suggest that if you have two questions, split them up into two separate entries.
Respuesta aceptada
  Walter Roberson
      
      
 el 29 de En. de 2012
        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 comentarios
Más respuestas (2)
  the cyclist
      
      
 el 29 de En. de 2012
        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 comentarios
Ver también
Categorías
				Más información sobre Loops and Conditional Statements en Help Center y File Exchange.
			
	Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!


