Помощь - Поиск - Пользователи - Календарь
Полная версия: case
Форум «Всё о Паскале» > Pascal, Object Pascal > Теоретические вопросы
sheka
может ли case бытькакого-то такого вида
case х,у of
1;2 : begin end;
end;
то есть выбирать действие в зависимости от 2х переменных?
volvo
Нет, в Case селектор - это выражение перечислимого типа, ни о каких нескольких переменных даже не мечтай. Единственное, что можно попробовать - сделать функцию от этих двух переменных, которая вернет подходящий результат...

Какая задача стоит, уточни, может как-то по-другому можно сделать...
sheka
Цитата(volvo @ 3.06.2009 20:48) *

Какая задача стоит, уточни, может как-то по-другому можно сделать...

делаю просто крестики-нолики 3*3...
перебирая все возможные комбинации, думал есть какая-то такая возможность чтобы под кейс подставить рядок и столбец, но здесь это не принципиально - взял 2 кейса - один для рядка, один для столбца.
кстати, а какие еще есть методы решения крестиков-ноликов кроме "тупого перебора" из википедии?
тот же вопрос для поля 15*15, где зачеркнутьлинию из 5 последовательных.
Гость
А volvo дело говорит, можно функцией реализовать. Вот так:
case х*10+у of
12 : begin end;
end

- это если x и y меньше 10. А если больше, но меньше 100, то так:
case х*100+у of
0102 : begin end;
end

Только я не вполне понимаю, зачем это тебе могло понадобиться..

Цитата(sheka @ 3.06.2009 21:09) *
делаю просто крестики-нолики 3*3...
...
а какие еще есть методы решения крестиков-ноликов кроме "тупого перебора" из википедии?
тот же вопрос для поля 15*15, где зачеркнутьлинию из 5 последовательных.
Я не вполне понимаю выражение "решение" применительно к крестикам-ноликам. Ты имеешь в виду выбор следующего хода, то есть процесс игры?
Это текстовая версия — только основной контент. Для просмотра полной версии этой страницы, пожалуйста, нажмите сюда.