批次为/ L(0,1,100)仅循环偶数?
问题描述:
我想在.csv文件中传输1到100之间的所有偶数。我试过这个:批次为/ L(0,1,100)仅循环偶数?
SET CSV_Name=
SET /P CSV_Name=Please enter the CSV Name.
ECHO Number;Square;Cubic >> C:\Users\A78100264\Desktop\%CSV_Name%.csv
FOR /L %%A IN (0, 1, 100) DO (
SET /A d=%%A/2
SET /A e=%d% * 2
IF %%A == %e% (
ECHO %%A
ECHO %%A >> C:\Users\A78100264\Desktop\%CSV_Name%.csv
)
)
但是这不起作用。有人有更好的主意吗?
答
我才意识到我可以这样做:
FOR /L %%A IN (0, 2, 100) DO (
ECHO %%A
ECHO %%A >> C:\Users\A78100264\Desktop\%CSV_Name%.csv
)
+0
是的。它帮助您阅读帮助文件。 '(开始,步骤,结束)' – Squashman
答
你自己的答案居然输出之间的所有偶数0和100(含):
FOR /L %%A IN (0 2 100) DO …
从技术上讲,这将实现你的问题的目标,(所有偶数在1和100之间):
FOR /L %%A IN (2 2 98) DO …
你是什么意思“d没有工作“?任何错误?获得奇数,以及?你可以解释吗? – Tom
搜索_delayed expansion_。就像你所做的那样,当'for'循环开始时,'%d%'和'%d%'的值被扩展_once_,而不是每个循环周围的重新评估。 – TripeHound