バッチスクリプト(.bat
)で数字が奇数か偶数かを検出できるかどうかを知りたいと思います。 例:imputが奇数の場合は、偶数の場合はこれを行います。 これは私の次のプロジェクトにとって非常に役に立ちます。バッチスクリプトで奇数と偶数を検出する
ありがとうございます!
バッチスクリプト(.bat
)で数字が奇数か偶数かを検出できるかどうかを知りたいと思います。 例:imputが奇数の場合は、偶数の場合はこれを行います。 これは私の次のプロジェクトにとって非常に役に立ちます。バッチスクリプトで奇数と偶数を検出する
ありがとうございます!
set /a dummy=%var% %% 2
if %dummy% == 0 (echo even) else (echo odd)
%
ので、それをエスケープする必要があり、剰余演算子とも特殊文字です。モジュロ演算子はdivisonの残り返し
set number=6
set /a even=number %% 2
if %even%==0 (echo even) else (echo odd)
:%
のエスケープ文字は、あなたがモジュロ演算子を使用することができます別の%
.operator
ある5 modulo 2
(または5 % 2
を)5がで割った」意味2は2(無視されます)であり、1の残りの部分が保持されます(これが結果です)。
<x> modulo <n>
は常に0との間の値を返します。 n=2
が0または1のいずれかです。
注:モジュロ演算子が%
ですが、あなたは方法のため、バッチファイル内の別の%
でそれをエスケープする必要があり、インタプリタは各ラインを処理します。要するに
:直接コマンドラインで、%%
バッチスクリプトを使用して、バッチファイル内で、%
を使用するには、モジュロ演算子%%
をサポートしています。ここにある例:
@ECHO OFF
SET /P number=The number is:
SET /a modulo=%number% %% 2
IF %modulo%==0 (
ECHO The number is even!
) ELSE (
ECHO The number is odd!
)
モジュロは、言語に関係なく、それを行う方法です。バイナリコンピュータで動作する別の方法は、最下位ビットを確認することです –
あなたの質問への答えは:私たちはあなたがそれを作ることができないかどうかわからない... – aschipfl
なぜ、StackOverflowやGoogle for **バッチを検索していないのですか?ファイル偶数**?あなたは質問をすることなくあなたの答えを見つけました。 – Squashman