Реализация необходимых классов

for( suit = 0; suit < SUIT_NUM; suit ++ ) { for( value = 0; value < VALUE_NUM; value ++ )

{

// инициализация карты масти suit и значения // value • } .) ' Лишние фигурные скобки можно отбросить:

for( suit = 0; suit < SUIT_NUM; suit ++ )

for( value = 0; value < VALU-E_NUM; value ++ ) {

II, инициализация карты масти suit и значения // value ) Это классическая запись вложенных циклов.

Не надо забывать и про то, что инициализировать надо не одну колоду, а две, то есть вышеупомянутую конструкцию надо повторить два раза. В этом поможет еще один, третий цикл, только теперь его надо вынести «наружу», охватив им двойной цикл инициализации одной колоды (52 карты):

for( pack_num = 0; pack_num < PACK_NUM; pack_num ++ ) for( suit = 0; suit < SUIT_NUM; suit ++ )

for( value = 0; value < VALUE_NUM; value ++ ) {

// инициализация карты масти suit и //значения value }

Конечно, переменная-счетчик pack_num должна быть предварительно описана.

А как узнать, какую карту надо инициализировать? Так как процесс инициализации начнется с нулевой карты массива Cards, то надо добавить внутрь метода еще одну переменную card_num, присвоить ей ноль перед выполнением тройного цикла и использовать как индекс при инициалйза-

191