Получить все уникальные значения массива - VB
Формулировка задачи:
Есть таблица 4х4, в ней 16 значений, из них от 2 до 8 уникальны, а остальные дублируют эти значения. Я пытаюсь вывести эти уникальные значения в текстовое поле, но что-то у меня не получается т.к. я проболел тему массивов Посмотрите, пожалуйста, и скажите, что я делаю не так.
Извините если это покажется слишком просто/смешно, но я действительно не понимаю массивы
с выводом разобрался, нужно было просто переименовать переменную
но теперь в текстовом поле не выводит первое значение, а вместо него идут 3 подряд повторяющихся значения а 2
а так всё работает, но мне нужно чтобы значения сами выстраивались один за одним, а не я указывал им место..
Вобщем, я понял в чём проблема, но до меня не доходит как её решить
Весь массив забивается последним значением, стирая предыдущие, а как это исправить я не знаю..
Решение задачи: «Получить все уникальные значения массива»
textual
Листинг программы
Option Explicit Private Sub Комманда1_Click() Dim M(3, 3) 'массив Dim S() Dim R, C ' переменные циклов Cls ' чистим форму Dim Dict As Object Set Dict = CreateObject("Scripting.Dictionary") Randomize 'инициализируем генератор сл. чисел With Dict For R = 0 To 3 'gо всем строкам For C = 0 To 3 'по всем столбцам M(R, C) = Int(9 * Rnd) 'назначаем случайные от 0 до 8 Print M(R, C); If .Exists(M(R, C)) Then .Item(M(R, C)) = .Item(M(R, C)) + 1 Else .Add M(R, C), 1 End If Next C Print ' печатаем на форму Next R End With Print Print "Количество повторений" S = Dict.keys For R = 0 To UBound(S) If Dict.Item(S(R)) <> 0 Then Print S(R) & " встретилась " & Dict.Item(S(R)) Next R End Sub
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д