2017-02-22 41 views
-1

Я создаю простую карточную игру, и мне нужно иметь возможность проверить флеши (пять карт одного и того же костюма). Мне нужно проверить, есть лиКак проверить, равны ли несколько переменных друг другу в пакетных файлах?

%suit1% = %suit2% = %suit3% = %suit4% = %suit5% 

и иметь возможность выполнить команду, если она истинна. Да, я понимаю, что в пакетных файлах я бы использовал == вместо =

Большое спасибо всем за то, что вы так быстро ответили. Есть ли у кого-нибудь предложения для кода, который будет проверять на наличие прямых? (2,3,4,5,6) (10, J, Q, K, A)

+0

Пожалуйста, примите ответ, то задать новый вопрос. В новом вопросе вам нужно будет опубликовать некоторый код, то есть, по крайней мере, что такое переменная, содержащая номинал? –

+0

Мне очень жаль. Как вы принимаете ответ? Ill опубликует новый поток с кодом – JohnBatch

+0

http://stackoverflow.com/help/someone-answers –

ответ

1

подражать AND вам нужно последовательно МСФ:

if %suit1% == %suit2% if %suit2% == %suit3% if %suit3% == %suit4% if %suit4% == %suit5% (
    echo do something 
) 
3
if %suit1%%suit1%%suit1%%suit1% == %suit2%%suit3%%suit4%%suit5% (
    echo do something 
) 

должны делать то, что вы хотите.

+0

Позвольте мне порекомендовать поставить кавычки вокруг двух сравнительных выражений ... – aschipfl

0

Для произвольного числа переменных, имена которых начинаются с suit, вы можете сделать это:

set "FLAG=" 
for /F "tokens=1,* delims==" %%V in ('set suit') do (
    if not "%suit1%"=="%%W" set "FLAG=#" 
) 
if not defined FLAG echo All variables `suit_` contain equal values.