Εμφάνιση ενός μόνο μηνύματος
  #1  
Παλιά 19-08-17, 19:41
kapetang Ο χρήστης kapetang δεν είναι συνδεδεμένος
Όνομα: Γιώργος
Έκδοση λογισμικού Office: Ms-Office 2010
Γλώσσα λογισμικού Office: Ελληνική, Αγγλική
 
Εγγραφή: 18-06-2010
Μηνύματα: 3.674
Προεπιλογή Δημιουργία όλων των συνδυασμών, μεταθέσεων, διατάξεων και υποσυνόλων.

Δημιουργός: Γιώργος Καπετανόπουλος (19/8/2017)

Με το συνημμένο πρόγραμμα μπορούμε, από ένα σύνολο {A0, A1, …, An-1} n διαφορετικών στοιχείων, να δημιουργήσουμε, και να αποθηκεύσουμε σε πίνακα:
  • Τους συνδυασμούς ανά r (0 < r <= n).
  • Τους συνδυασμούς ανά r (r > 0), με επανάληψη.
  • Τις μεταθέσεις.
  • Τις διατάξεις ανά r (0 < r <= n).
  • Τις διατάξεις ανά r (r > 0) με επανάληψη.
  • Τα υποσύνολα (δυναμοσύνολο).
Ειδικά, για τα υποσύνολα, στον πίνακα tblSubSets, εκτός από τα υποσύνολα, αποθηκεύεται και το πλήθος των στοιχείων τους.

Έτσι δίνεται η δυνατότητα κατάλληλης ταξινόμησης (ή και φιλτραρίσματος) στο ερώτημα qrySubSets.

Η περίπτωση εύρεσης των μεταθέσεων σε σύνολο με μη διαφορετικά στοιχεία δεν καλύπτεται.

Αν και έψαξα στο Internet, δε βρήκα, κάποιο αλγόριθμο.

Για περιορισμένο αριθμό στοιχείων (n<11) θα μπορούσε να εφαρμοστεί η παρακάτω λύση.

Αν έχουμε 3 στοιχεία τύπου Α, 2 τύπου Β και 4 τύπου Γ, συμπληρώνουμε στο σχετικό πεδίο της καρτέλας μεταθέσεων τη συμβολοσειρά Α|Α|Α|Β|Β|Γ|Γ|Γ|Γ και πατούμε το κουμπί.

Θα υπολογιστούν οι μεταθέσεις σαν να είχαμε 9 (3+2+4), διαφορετικά στοιχεία και θα αποθηκευτούν στον πίνακα tblPermutations.

Με το συγκεντρωτικό ερώτημα qryPermutations λαμβάνουμε μόνο τις διαφορετικές.

Σχόλια και προτάσεις για διορθώσεις και βελτιώσεις είναι πάντα ευπρόσδεκτα.
Συνημμένα Αρχεία
Τύπος Αρχείου: accdb PermutCombin.accdb (1,19 MB, 120 εμφανίσεις)

Τελευταία επεξεργασία από το χρήστη kapetang : 20-08-17 στις 08:12.
Απάντηση με παράθεση