Выбрать дату в календареВыбрать дату в календаре

Страницы: 1
Лото 7 из 34 и количество комбинаций с простыми числами
 
Цитата
MCH написал: Очень знакомый макрос
У вас позаимствовал.
И большое спасибо за помощь!
Лото 7 из 34 и количество комбинаций с простыми числами
 
Добрый день! Требуется помощь.
Есть лото 7 из 34 (5 379 616 комбинаций)
Также имеются простые числа (1, 2, 3, 5, 7, 11, 17, 19, 23, 29, 31)

Задача:
Узнать количество комбинацый которые содержать 1 простое число,2 ,3 ,4 ,5 ,6 и 7 простых чисел и также если нет ни одного простого числа.

Файл excel со всеми комбинациями выложить немогу так как весит более 100мб.
Есть макрос для всех комбинаций ))))
Код
Sub MyCombin()
    Dim a&(), i&, j&, m&, n&, p&, nRows&, rws&, clm&, nCombin&
    n = Val(InputBox("n =", , 10))
    m = Val(InputBox("m =", , 3))
    If n < m Or m < 1 Then Exit Sub
     
    nRows = Rows.Count 'количество строк на листе
    nCombin = WorksheetFunction.Combin(n, m) 'количество возможных сочетаний
 
    ReDim a&(1 To m), b&(1 To IIf(nCombin > nRows, nRows, nCombin), 1 To m)
    For i = 1 To m: a(i) = i: Next i
    If m = n Then p = 1 Else p = m
    Cells.ClearContents
 
    Do
        j = j + 1
        For i = 1 To m: b(j, i) = a(i): Next i
         
        If j = nRows Or j + rws = nCombin Then
            [a1].Offset(, clm).Resize(UBound(b), m) = b
            j = 0
            clm = clm + m + 1
            rws = rws + nRows
            If rws < nCombin Then ReDim b&(1 To IIf(nCombin - rws > nRows, nRows, nCombin - rws), 1 To m)
        End If
         
        If a(m) = n Then p = p - 1 Else p = m
        If p Then
            For i = m To p Step -1
                a(i) = a(p) + i - p + 1
            Next i
        End If
    Loop While p
End Sub
Изменено: ElmarB - 05.11.2016 20:09:46
Как сгенерировать все возможные варианты комбинаций лотереи 5из36 в Ecxel?, сгенерировать все 376992 комбинации в одной таблице
 
Цитата
Казанский написал:  ElmarB , например так
Благодарю)))
Как сгенерировать все возможные варианты комбинаций лотереи 5из36 в Ecxel?, сгенерировать все 376992 комбинации в одной таблице
 
Цитата
Казанский написал:
Формируйте 3 массива и записывайте их в соседние столбцы или на разные листы.
Как это сделать?
Страницы: 1
Наверх