Найти в матрице число, в двоичном представлении которого больше всего единиц - VBA

Узнай цену своей работы

Формулировка задачи:

Условие. Размерности массивов вводить с клавиатуры. Исходные данные и результаты выводить на экран дисплея в табличном виде. Задача. Дана последовательность целых чисел. Найти в ней число, в двоичном представлении которого больше всего единиц.

Решение задачи: «Найти в матрице число, в двоичном представлении которого больше всего единиц»

textual
Листинг программы
Function tt(rng As Range) As String
    Dim arr(), arr1(), i As Long, m As Long
    arr = rng
    ReDim arr1(1 To UBound(arr))
    For i = 1 To UBound(arr)
        arr1(i) = Len(Replace(WorksheetFunction.Dec2Bin(arr(i, 1)), "0", ""))
    Next
    m = WorksheetFunction.Max(arr1)
    For i = 1 To UBound(arr)
        If arr1(i) = m Then
            If Len(tt) = 0 Then tt = arr(i, 1) Else tt = tt & ", " & arr(i, 1)
        End If
    Next
End Function

ИИ поможет Вам:


  • решить любую задачу по программированию
  • объяснить код
  • расставить комментарии в коде
  • и т.д
Попробуйте бесплатно

Оцени полезность:

11   голосов , оценка 3.727 из 5
Похожие ответы