Помогите с рандомизацией данных массива
- Войдите на сайт для отправки комментариев
Чт, 30/08/2018 - 17:16
Имеется массив,допустим вот такой:
byte massiv[][2] = { {B11100000, B11110111}, {B11000000, B11110111}, {B11111011, B10000001}, {B11111011, B11010111}, {B11111111, B11000001}, {B11011011, B11110111}, {B10000000, B00000111}, {B00001111, B11110001}, };
Как можно рандомизировать бинарные значения внутри массива? Я пытался рандомизировать индекс массива,но это не помогло изменить данные внутри массива.
а что вы понимаете под рандомизацией? "Перемешивание" заданных значений, по типу тасования колоды? Или заполнение массива случайными числами?
Заполнение массива случайными значениями 0 и 1,максимальное количество чисел-8,но в целом можно и перемешивание значений,если это проще реализовать,главное чтобы каждое новое исполнение loop'а было значение,отличающееся от предыдущего
Заполнение массива случайными значениями 0 и 1
Случайные значения 0 и 1 - это массив
а у вас явно используются числа в диапазоне 0-255
Перед вызовом random() измените seed: randomSeed(analogRead(A0));
A0 не должен быть подключен ни к чему, т.е. хорошенечко шуметь.
Да, в двоичном коде,вот его мне и надо перемешивать или рандомизировать
Да, в двоичном коде,вот его мне и надо перемешивать или рандомизировать
если честно, я так и не понял, что конкретно вам нужно.
Чтобы значения массива(двоичный код) постоянно менялись,не важно как
Допустим,было изначально что-то вроде такого:
А после значения изменились,допустим,на такие:
Извиняюсь за несвязную речь,просто очень устал,очень долго пытался что-то придумать,решил вот спросить у понимающих людей
Вам нужны на каждом запуске МК уникальные значения или одни и те же, но перемешанные по-разному?
Уникальные
Тогда применяйте способ из #4.
Если этого не делать, генератор ПСЧ будет постоянно выдавать одни и те же значения на каждом запуске.
Хорошо,а в массиве значения как указывать?
Просто в цикле последовательно перебираете индекс массива и кладете в элемент значение random(min,max)
главное чтобы каждое новое исполнение loop'а было значение,отличающееся от предыдущего
Держи, не благодари:
всем спасибо,попробую дальше сам разобраться
Когда-то по молодости пробовал проверять, как тусуются карты, функцией "рандомайз", чтобы хорошо перемешалось, нужно было довольно много циклов, чтобы ускорить процесс, применил псевдослучайную смену карт между собой, классно перемешивалось за очень короткое время.)
Когда-то по молодости пробовал проверять, как тусуются карты, функцией "рандомайз", чтобы хорошо перемешалось, нужно было довольно много циклов, чтобы ускорить процесс, применил псевдослучайную смену карт между собой, классно перемешивалось за очень короткое время.)
Достаточно единственного цикла.
Точно. Вроде обычное народное наблюдение, для того что бы карты в колоде были расположены случайным образом их надо !!!!!!!перетасовать. Но почему-то некоторые для программирования ищут другие чудесные способы.
Прямо юность вспомнил.
На Фортране писал "Дурака" и тоже изощрялся в создании случайного расклада, пока не додумался перемешать карты :)