我有一个程序,所有函数都在for循环中。我想跳过一些变量,以便在条件成立时不做任何事情。例如:
for i=1:a
for j=1:b
if counter=101
%until i<21 do nothing then if i=21 continue the loop and do what I want
% until i=23, after that again i goes forward but don't do any thing
%until i=44 again do the progress and continue the loop.
end
%do what I want
end
end
但我无法得到正确的答案。 我把它写成下来:
if counter==101
j=1;
while (i < a/3+1)
i=i+1;
continue
end
end
if counter==201
j=1;
while (i < 2*a/3+1)
i=i+1;
continue
end
end
在这段代码中,在i = 21之后进行迭代,之后在for循环中我转到21之前的数字(例如3),但我不想要它。 如果有人有建议,我们将不胜感激。
答案 0 :(得分:3)
这种情况应该是你想要的:
$to = 'myemailaddress';
$subject = 'Registration Confirmation';
$message = "Hello User";
$message .= "Your Booking is confirmed \r\n\r\n";
$message .= "Your Number".$memvalue.",\r\n\r\n";
$message .= "Thanks!"."\r\n";
$headers = "From: Company Name <info@example.com>"."\r\n";
$mail = wp_mail( $to, $subject, $message, $headers );
您的代码中至少存在错误:for i=1:a
for j=1:b
if i < 21 || (i >= 23 && i < 44)
% Skip loop before 21 and between 23 and 43
continue
end
if counter == 101
% Do stuff
end
end
end
不是有效的比较,您将值101分配给计数器。你应该使用if counter=101
另外,我根本不了解你的第二段代码。至少,在为其分配值之前使用if counter==101
并且可能缺少外部循环。
编辑: 话虽这么说,您可能只想调整循环变量:
i