Форум «Всё о Паскале» _ Теоретические вопросы _ case
Автор: sheka 4.06.2009 0:42
может ли case бытькакого-то такого вида case х,у of 1;2 : begin end; end; то есть выбирать действие в зависимости от 2х переменных?
Автор: volvo 4.06.2009 0:48
Нет, в Case селектор - это выражение перечислимого типа, ни о каких нескольких переменных даже не мечтай. Единственное, что можно попробовать - сделать функцию от этих двух переменных, которая вернет подходящий результат...
Какая задача стоит, уточни, может как-то по-другому можно сделать...
Автор: sheka 4.06.2009 1:09
Цитата(volvo @ 3.06.2009 20:48)
Какая задача стоит, уточни, может как-то по-другому можно сделать...
делаю просто крестики-нолики 3*3... перебирая все возможные комбинации, думал есть какая-то такая возможность чтобы под кейс подставить рядок и столбец, но здесь это не принципиально - взял 2 кейса - один для рядка, один для столбца. кстати, а какие еще есть методы решения крестиков-ноликов кроме "тупого перебора" из википедии? тот же вопрос для поля 15*15, где зачеркнутьлинию из 5 последовательных.
Автор: Гость 4.06.2009 2:38
А 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 последовательных.
Я не вполне понимаю выражение "решение" применительно к крестикам-ноликам. Ты имеешь в виду выбор следующего хода, то есть процесс игры?