Четверг, 2026-05-28

Professor VB - примеры на VB.net и C#
Меню сайта
Вход на сайт
Категории раздела
Уроки VB.net [25]
VB.net и математика [13]
Random VB [4]
VB.net - разное [7]
VB.net - Примеры программ [2]
Главная » Статьи » VB.net » Уроки VB.net

VB.net - Параллельное перемешивание массивов

VB.net - Параллельное перемешивание

массивов (mixx2)



  Кроме перемешивания одномерного массива, бывает необходимость перемешать двумерный, или параллельно 2 одномерных массива.

  Для этого воспользуемся следующим кодом.


  'перемешивание 2 массивов
    Public Sub mixx2(mas As Array, mas2 As Array)
        Dim element1, element2, x, y, element12, element22, x2, y2
        Randomize()
        For i = 0 To 10000
        x = Int(Rnd() * mas.Length)
  'Определили знач случ массива с номером х
        y = Int(Rnd() * mas.Length)  'Определили случ элемент массива с номером y
        x2 = x
        y2 = y

        element1 = mas(x)           'Запомнили значение случайного X-элем массива
        element2 = mas(y)           'Запомнили значение случайного Y-элем массива
         mas(y) = element1           'Присвоили случ X элем знач y элем
         mas(x) = element2           'Присвоили случ Y элем значение x элемента

         element12 = mas2(x2)           'Запомнили значение случ X-элеммассива
         element22 = mas2(y2)           'Запомнили значение случ Y-элем массива
         mas2(y2) = element12           'Присвоили случ X элем значение Y элемента
         mas2(x2) = element22           'Присвоили случ Y элем значение X элемента

        Next
 
   End Sub


* знач случ = значение случайного

 

  В данном случае случайные элементы динаковы для обоих массивов.
Если элемент первого массива поменял свое место с 1 на 3, то элемент второго массива сделал также.

  Процедура имеет зависимость от 2 массивов, которые надо перемешать.

Где это может пригодится?

  Я расскажу о том, где я использовал эту процедуру:

- Словарь. В первый массив помещаем слова на РУССКОМ языке, а во второй - иностранные слова. В результате перемешивания - оригинал и перевод имеют одинаковый индекс.

- Сравнение картинок. В игре меморина необходимо было сравнить картинки, но не ссылки ни сами картинки, простым способом не сравнить. По этому я дал каждой паре картинок свой уникальный номер, который и поместил во второй массив. В первом массиве были ссылки на картинки. После перемешивания я сравнивал уникальные идентификаторы, не трогая сами картинки.

 

 

В начало

Перемешивание массива

Тренировка мозга 1

 

 



 

Категория: Уроки VB.net | Добавил: ProfessorVB (2016-07-01)
Просмотров: 1360 | Теги: параллельное перемешивание, перемешивание массива, Vb.net, массив | Рейтинг: 5.0/1
Всего комментариев: 0
avatar
Облако тегов
Поиск
Друзья сайта
  • www.youtube.com

  • vk.com/professorvb

  • Партнерка AIR

  • Партнерка VSP Group
  • Поделись с друзьям
    Теги
    урок C# си шарп видео hello world Генератор имен MenuStrip случайные числа програмное нажатие кнопки Switch дроби решебник Алгебра системы уравнения геометрия Vb.net генератор уроки математика программа условия Math видеоуроки удаление записи из xml поиск удалить из xml создать XML анекдот калькулятор НОД нок конструкторы тест сокращение дробей десятичные дроби тренажер русский память английский развитие мнемоника шульте иностранные слова переменные Сборник программ random рандом professorvb смена раскладки OpenFileDialog Timer mindgames цикл словарь база пароль слова Существительные sin cos комплексные числа Скачать вирус процесс массив классы массивы многомерные While do Обработка событий Обработка нажатий клавиш Создание элементов создание кнопки система уравнений XML база данных xml поиск значений xml создание soft pirat обход блокировки AntiCenz fri-gate proxy запрещенные сайты save Open TopMost календарь DateTimePicker между датами перемешивание массива Рифмоплет Ребусы Анаграммы Сравнение дробей скорочтение Меморина использование
    Copyright ProfessorVB © 2026