Можно ли использовать две переменные в выражении switch?

Приветствую.

Вы хотите узнать, есть ли возможность добавить в конструкцию switch дополнительную переменную для проверки в каждом варианте case?
  • 10 ноября 2023 г. 9:29
Ответы на вопрос 3
Нет, нельзя использовать две переменные внутри выражения switch. Конструкция switch в языке программирования предназначена для выполнения различных действий в зависимости от значения одной переменной. Вы можете проверить значение разных переменных в каждом случае, но каждая проверка должна быть отдельной инструкцией if. Примерно так:

```c++
int var1 = 1;
int var2 = 2;
int choice = 1;

switch(choice) {
    case 1:
        if(var1 == 1 && var2 == 2) {
            // Код, выполняющийся, если choice равно 1 и var1 равно 1, а var2 равно 2
        }
        break;
    case 2:
        if(var1 == 3 && var2 == 4) {
            // Код, выполняющийся, если choice равно 2 и var1 равно 3, а var2 равно 4
        }
        break;
    default:
        // Код, выполняющийся по умолчанию, если choice не соответствует ни одному из предыдущих случаев
        break;
}
```
switch ([$color, $size]) {
    case ['blue', 'small']:
        echo 'blue and small';
        break;
    case ['red', 'large']:
        echo 'red and large';
        break;
}


if ($color == 'blue' && $size == 'small') {
    echo "blue and small";
} elseif ($color == 'red' && $size == 'large') {
    echo "red and large";
} else {
    echo 'nothing';
}
Похожие вопросы