Forum

Forum (https://www.ms-office.gr/forum/)
-   Access - Ερωτήσεις / Απαντήσεις (https://www.ms-office.gr/forum/access-erotiseis-apantiseis/)
-   -   Συνδυασμοί γραμμάτων (https://www.ms-office.gr/forum/access-erotiseis-apantiseis/3239-syndyasmoi-grammaton.html)

alex 16-07-14 21:03

Συνδυασμοί γραμμάτων
 
Καλησπέρα σε όλους τους φίλους του forum
Γνωρίζει κάποιο μέλος να βοηθήσει στον παρακάτω προβληματισμό

Πώς μπορώ να βρώ τους συνδυασμούς πέντε γραμμάτων;
Παράδειγμα
Έστω ότι ΄εχω το συνδυασμό fdsjk
Γνωρίζω από τα μαθηματικά την παραγωγικότητα ότι από 5 γράμματα βγάζω 120 συνδυασμούς.Δηλαδή
5χ4χ3χ2χ1 = 120 συνδυασμοί.
Πώς μπορώ να τους σχηματίσω ώστε να τους βάλω σε ένα πίνακα;

kapetang 17-07-14 13:04

1 Συνημμένο(α)
Καλησπέρα

Αλέξανδρε, δες μια λύση στην επισυναπτόμενη ΒΔ.

Φιλικά/Γιώργος

alex 17-07-14 14:17

Φίλτατε Γιώργο,
Είσαι σπουδαίος.Δεν υπάρχουν λόγια.........
Σέυχαριστώ πολύ.

kapetang 18-07-14 09:26

1 Συνημμένο(α)
Καλημέρα

Αλέξανδρε, η λύση που δόθηκε στο προηγούμενο μήνυμά μου είναι προσαρμοσμένη στη δημιουργία λέξεων από 5 διαφορετικά γράμματα.

Το μειονέκτημά της είναι ότι δεν είναι ευέλικτη.

Στη νέα ΒΔ παρουσιάζω μια ευέλικτη λύση για τη δημιουργία λέξεων (μεταθέσεων) από Ν (Ν=1 έως 10) διαφορετικά γράμματα.

Η λύση παρουσιάζει ενδιαφέρον επειδή:

1) Χρησιμοποιεί μια αναδρομική διαδικασία. Δηλαδή μια διαδικασία που καλεί επανειλημμένα τον εαυτό της.

2) Χρησιμοποιεί βοηθητικά ένα αρχείο κειμένου (απαιτείται αναφορά στο Microsoft Scripting Runtime) για να γεμίσει τον πίνακα με τις λέξεις (μεταθέσεις), πράγμα που καθιστά τη μέθοδο πολύ γρήγορη.

Με 10 διαφορετικά γράμματα δημιουργούνται 3.628.800 διαφορετικές λέξεις (Μεταθέσεις) και στον υπολογιστή μου χρειάζεται περίπου 1 λεπτό.

Το τεράστιο πλήθος των λέξεων (μεταθέσεων) και του χρόνου υπολογισμού με οδήγησε στο περιορισμό Ν<=10.

Φιλικά/Γιώργος

alex 18-07-14 12:45

Γιώργο καλημέρα,

Φαίνεται ευέλικτο .Το δοκίμασα αλλά δεν μου βγάζει στο πίνακα τους συνδυασμούς.Βάζω το 10 να γίνει συνδυασμός με 10 γράμματα που είναι μέσα στο κώδικα βέβαια αργεί όπως είπες βγάζει το πλήθος ότι είναι 3.628.800 αλλά στον πίνακα δεν εμφανίζει συνδυασμούς.Πάντως είναι τρομερό, πάνω από δέκα θα κολλήσει δεν νομίζω να δουλέψει.

Αλέξανδρος

kapetang 18-07-14 13:42

Καλησπέρα

Αλέξανδρε, χωρίς να κάνουμε αλλαγές στον κώδικα, μπορούμε πληκτρολογώντας στο πεδίο της φόρμας μία τιμή (Ν) από 1 έως 10 να βρούμε τις λέξεις που έχουν Ν διαφορετικά γράμματα.

Ο δικός μου υπολογιστής, αν πληκτρολογήσω στη φόρμα 10, χρειάζεται περίπου 1 λεπτό να κάνει τους υπολογισμούς και να γεμίσει τον πίνακα με τις 3.628.800 λέξεις (εγγραφές).

Στον υπολογιστή σου πριν δοκιμάσεις τη μέγιστη τιμή (Ν=10) κάνε δοκιμές αυξάνοντας προοδευτικά των αριθμό γραμμάτων 4, 5, 6, 7, 8,… και βλέποντας το χρόνο υπολογισμού.

Φιλικά/Γιώργος

alex 18-07-14 14:31

Καλησπέρα ,

Γιώργο το έκανα οποιοδήποτε αριθμό και να βάλω μέχρι το δέκα το υπολογίζει δεν βγαζει τους συνδυασμούς αλλά μου βγάζει και σφάλμα χρόνου εκτέλεσης Run - time error 70 permission denied.

kapetang 18-07-14 14:54

Ο κώδικας δημιουργεί ένα αρχείο στο φάκελο c:\
Μήπως δεν επιτρέπεις εγγραφή και δημιουργία αρχείων σ' αυτόν το φάκελο;

alex 18-07-14 16:49

Γιώργο,
Για να πάω οποιοδήποτε αρχείο στο c:\ μου λέει να πάρω άδεια από τον διαχειριστή.
Πώς το απενεργοποιώ αυτό. Εχω Win 8,1 κάτι με είχε ρωτήσει τότε που έκανα αναβάθμιση από τα win 8 στα win 8,1 και τσεκάρισα νομίζω δεν αφήνει κανένα πρόγραμμα να εγκαταστήσει στο c:\ φάκελο ή αρχείο.
Μπορούμε να κάνουμε ένα φάκελο στην επιφάνεια εργασίας και να του δώσουμε διαδρομή εκεί;
Μήπως μπορούμε να το κάνουμε για διαδρομή οποιοδήποτε περιβάλλον της access ώστε να μήν υπάρχει πρόβλημα σε καμία έκδοση.
strFolderName = Environ("AppData") & "\Recursion" ή θα υπάρχει πρόβλημα πάλι με την άδεια για το c:\
Τελικά έβαλα αυτή την διαδρομή και το πήγε το αρχείο την Επιφάνεια εργασίας με όλους τους συνδυασμούς βάζοντας αυτή την διαδρομή αλλά δεν το βγάζει στπο πίνακα.
"c:\Users\alex\Desktop\xy~zxy~zxy_zx_yz.txt"
Τους βγάζει σε .txt xy~zxy~zxy_zx_yz.txt
Αλλά βγάζει και το σφάλμα 31519

kapetang 18-07-14 17:30

1 Συνημμένο(α)
Καλησπέρα

Αλέξανδρε, στη φόρμα πρόσθεσα και ένα δεύτερο κουμπί.

Ο κώδικας που τρέχει με το πάτημα του κουμπιού γεμίζει τον πίνακα tblWords, χωρίς να χρησιμοποιεί βοηθητικό αρχείο κειμένου.

Επίσης άλλαξα και τον κώδικα στο πρώτο κουμπί ώστε το βοηθητικό αρχείο Words.txt να δημιουργείται στο φάκελο Environ("AppData")

Φιλικά/Γιώργος

alex 18-07-14 18:55

Γιώργο,

Τώρα μπορούν και το το βλέπουν όλοι σε όλες τις εκδόσεις.Σ΄ευχαριστώ πολύ ο παραγοντισμός μέσα από το προγραμματισμό παρουσίασε ενδιαφέρον με την διαδικασία της εξέλιξης.Αυτό με βοήθησε αρκετά στην εργασία που κάνω. Νάσαι καλά φίλε μου.


Η ώρα είναι 04:24.

Ms-Office.gr - ©2000 - 2026, Jelsoft Enterprises Ltd.


Search Engine Optimization by vBSEO 3.3.2