алгоритм

Программирование на Visual Basic, главный форум. Обсуждение тем программирования на VB 1—6.
Даже если вы плохо разбираетесь в VB и программировании вообще — тут вам помогут. В разумных пределах, конечно.
Правила форума
Темы, в которых будет сначала написано «что нужно сделать», а затем просьба «помогите», будут закрыты.
Читайте требования к создаваемым темам.
KiLLBiLL
Начинающий
Начинающий
 
Сообщения: 9
Зарегистрирован: 03.02.2006 (Пт) 21:42

алгоритм

Сообщение KiLLBiLL » 31.07.2006 (Пн) 19:04

Нужен сабж перебора символов
тоесть по 5 символов из 30.
В одной комбинации символы не могут повторятся.

Вот что то у меня с этим плохо помогите..
Заранее благодарен

tyomitch
Пользователь #1352
Пользователь #1352
Аватара пользователя
 
Сообщения: 12822
Зарегистрирован: 20.10.2002 (Вс) 17:02
Откуда: חיפה

Сообщение tyomitch » 31.07.2006 (Пн) 19:08

Пять вложенных циклов от 1 до 30, вот и весь алгоритм.
Изображение

KiLLBiLL
Начинающий
Начинающий
 
Сообщения: 9
Зарегистрирован: 03.02.2006 (Пт) 21:42

Сообщение KiLLBiLL » 31.07.2006 (Пн) 19:20

tyomitch писал(а):Пять вложенных циклов от 1 до 30, вот и весь алгоритм.


cседня 5ть завтро 10ть...
это не вариант =(

tyomitch
Пользователь #1352
Пользователь #1352
Аватара пользователя
 
Сообщения: 12822
Зарегистрирован: 20.10.2002 (Вс) 17:02
Откуда: חיפה

Сообщение tyomitch » 31.07.2006 (Пн) 19:22

Продвинутые идут на http://algolist.manual.ru/maths/combina ... tities.php
Изображение

KiLLBiLL
Начинающий
Начинающий
 
Сообщения: 9
Зарегистрирован: 03.02.2006 (Пт) 21:42

Сообщение KiLLBiLL » 31.07.2006 (Пн) 19:31

tyomitch писал(а):Продвинутые идут на http://algolist.manual.ru/maths/combina ... tities.php

не сильно умно =)

tyomitch
Пользователь #1352
Пользователь #1352
Аватара пользователя
 
Сообщения: 12822
Зарегистрирован: 20.10.2002 (Вс) 17:02
Откуда: חיפה

Сообщение tyomitch » 31.07.2006 (Пн) 19:34

Ты хотел алгоритм? там алгоритм.
Изображение

KiLLBiLL
Начинающий
Начинающий
 
Сообщения: 9
Зарегистрирован: 03.02.2006 (Пт) 21:42

Сообщение KiLLBiLL » 31.07.2006 (Пн) 19:43

tyomitch писал(а):Ты хотел алгоритм? там алгоритм.

=(

через цыклы получается повторение чисел..., а если делаешь проверку по предыдущему числу, то не все комбинаци.. получаются..

tyomitch
Пользователь #1352
Пользователь #1352
Аватара пользователя
 
Сообщения: 12822
Зарегистрирован: 20.10.2002 (Вс) 17:02
Откуда: חיפה

Сообщение tyomitch » 31.07.2006 (Пн) 19:57

Значит, по ссылке не сходил.
Изображение

KiLLBiLL
Начинающий
Начинающий
 
Сообщения: 9
Зарегистрирован: 03.02.2006 (Пт) 21:42

Сообщение KiLLBiLL » 31.07.2006 (Пн) 20:02

tyomitch писал(а):Значит, по ссылке не сходил.

сходил но не понял...
а с циклами моя машинка, зависат... =(

tyomitch
Пользователь #1352
Пользователь #1352
Аватара пользователя
 
Сообщения: 12822
Зарегистрирован: 20.10.2002 (Вс) 17:02
Откуда: חיפה

Сообщение tyomitch » 31.07.2006 (Пн) 20:11

Чини руки.
Код: Выделить всё
Option Explicit
DefInt A-Z

Sub Main()
Dim i1, i2, i3, i4, i5
For i1 = 1 To 30
    For i2 = 1 To 30
        If i2 <> i1 Then
            For i3 = 1 To 30
                If i3 <> i2 And i3 <> i1 Then
                    For i4 = 1 To 30
                        If i4 <> i3 And i4 <> i2 And i4 <> i1 Then
                            For i5 = 1 To 30
                                If i5 <> i4 And i5 <> i3 And i5 <> i2 And i5 <> i1 Then
                                    Debug.Print i1, i2, i3, i4, i5
                                End If
                            Next i5
                        End If
                    Next i4
                End If
            Next i3
        End If
    Next i2
Next i1
End Sub
Изображение

KiLLBiLL
Начинающий
Начинающий
 
Сообщения: 9
Зарегистрирован: 03.02.2006 (Пт) 21:42

Сообщение KiLLBiLL » 31.07.2006 (Пн) 20:25

tyomitch писал(а):Чини руки.
Код: Выделить всё
Option Explicit
DefInt A-Z

Sub Main()
Dim i1, i2, i3, i4, i5
For i1 = 1 To 30
    For i2 = 1 To 30
        If i2 <> i1 Then
            For i3 = 1 To 30
                If i3 <> i2 And i3 <> i1 Then
                    For i4 = 1 To 30
                        If i4 <> i3 And i4 <> i2 And i4 <> i1 Then
                            For i5 = 1 To 30
                                If i5 <> i4 And i5 <> i3 And i5 <> i2 And i5 <> i1 Then
                                    Debug.Print i1, i2, i3, i4, i5
                                End If
                            Next i5
                        End If
                    Next i4
                End If
            Next i3
        End If
    Next i2
Next i1
End Sub

Спосиб понял ошибку, пошел чинить руки

Efiop
Обычный пользователь
Обычный пользователь
Аватара пользователя
 
Сообщения: 69
Зарегистрирован: 06.06.2006 (Вт) 12:14
Откуда: РК

Сообщение Efiop » 01.08.2006 (Вт) 9:58

KiLLBiLL, держи.
Вложения
Перебор без повторений.rar
(2.31 Кб) Скачиваний: 32

tyomitch
Пользователь #1352
Пользователь #1352
Аватара пользователя
 
Сообщения: 12822
Зарегистрирован: 20.10.2002 (Вс) 17:02
Откуда: חיפה

Сообщение tyomitch » 01.08.2006 (Вт) 10:55

Efiop, у тебя ведь там просто перестановки, а не выбор из множества: так?
Изображение

Efiop
Обычный пользователь
Обычный пользователь
Аватара пользователя
 
Сообщения: 69
Зарегистрирован: 06.06.2006 (Вт) 12:14
Откуда: РК

Сообщение Efiop » 01.08.2006 (Вт) 11:41

tyomitch так ведь он и написал
В одной комбинации символы не могут повторятся.

Че, трудно переделать на перебор из 30 символов, по пять. Или любое другое кол-во?


Вернуться в Visual Basic 1–6

Кто сейчас на конференции

Сейчас этот форум просматривают: Google-бот и гости: 132

    TopList