Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > C/C++ программирование > Общие вопросы C/C++
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 02.06.2011, 21:13   #1
X@OC
Форумчанин
 
Аватар для X@OC
 
Регистрация: 18.06.2010
Сообщений: 273
Вопрос перестановки или комбинации

Все доброго времени суток

все знают перестановки 3, 4, 5 чисел в массиве
а как сделать такие перестановки или комбинации не знаю как назвать

1__1__1
1__0__0
0__1__0
0__0__1
1__1__0
1__0__1
0__1__1
0__0__0

если кто знает подскажите как это сделать пожалуйста

зарание спасибо
X@OC вне форума Ответить с цитированием
Старый 02.06.2011, 22:13   #2
Syuf
Форумчанин
 
Аватар для Syuf
 
Регистрация: 02.02.2010
Сообщений: 599
По умолчанию

Так подойдет?
Код:
printf("1__1__1\n
            1__0__0\n
            0__1__0\n
            0__0__1\n
            1__1__0\n
            1__0__1\n
            0__1__1\n
            0__0__0\n");
"Лишь то читается легко, что написано с трудом; что в час написано, то в час и позабыто."
Syuf вне форума Ответить с цитированием
Старый 02.06.2011, 22:18   #3
X@OC
Форумчанин
 
Аватар для X@OC
 
Регистрация: 18.06.2010
Сообщений: 273
По умолчанию

так и я магу )
есть идея написать функцию с двумерным циклом если получится
то покажу
X@OC вне форума Ответить с цитированием
Старый 02.06.2011, 22:27   #4
Syuf
Форумчанин
 
Аватар для Syuf
 
Регистрация: 02.02.2010
Сообщений: 599
По умолчанию

Я понял по какому принципу вы их тут написали: из n битов инвертируем n-1 - то правых, то левых, то правых, то левых, ...
Осталось понять, чего вы хотите от тех, кто рискнет ответить на эту тему...
"Лишь то читается легко, что написано с трудом; что в час написано, то в час и позабыто."
Syuf вне форума Ответить с цитированием
Старый 02.06.2011, 22:35   #5
Granus
С++
Форумчанин
 
Аватар для Granus
 
Регистрация: 22.09.2008
Сообщений: 791
По умолчанию

а их надо именно в такой последовательности?
потому что то, что Вы написали - это числа от 0 до 7 в двоичном коде. По идее, проходимся от 0 до 2^N-1 (где N - количество двоичных цифр) и переводим каждое в двоичную

позже

понял, что дело именно в последовательности)
опишите, пожалуйста, как именно она создается?
Форматируйте код, будьте людьми.

Последний раз редактировалось Granus; 02.06.2011 в 22:39.
Granus вне форума Ответить с цитированием
Старый 02.06.2011, 23:01   #6
X@OC
Форумчанин
 
Аватар для X@OC
 
Регистрация: 18.06.2010
Сообщений: 273
По умолчанию

я не объяснил извините
1 = вкл
0 = выкл
либо
1 = true
0 = false

чтобы много не писать
_________________________
есть значит массив и в нем три boolean значения

была значит идея
все true
в функцию передаю false
и он по очереди все дает false
Код:
вроде так нет возможности проверить
void k_v(boolean z)
{
boolean t[3] = {true, true, true}
int i,j;
for(i=0; i<3; i++)
 for(j=i; j<3; j++){
   t[i]=false;
   t[j]=true;
  }
}
0 1 1
1 0 1
1 1 0
и потом на оборот передавать true а все отсальное false
1 0 0
0 1 0
1 1 0

можно сделать чтобы не передавать ни каких значений
а сразу получить то что необходимо

Последний раз редактировалось X@OC; 02.06.2011 в 23:06.
X@OC вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
C# Перестановки pro100saniok Помощь студентам 5 21.12.2010 00:12
перестановки символов mrkheggy Помощь студентам 7 12.12.2010 23:39
Перестановки N чисел SOKOLDANGER Общие вопросы C/C++ 0 10.10.2010 20:02
перестановки fedd Помощь студентам 2 27.11.2009 22:59
Перестановки H'orn Общие вопросы .NET 4 11.11.2009 03:08