1 Δημιουργήστε ένα νέο συνάρτηση της Visual Basic . Για παράδειγμα :
gcd Λειτουργία ( ByVal x As Integer , ByVal y ως Integer) Όπως IntegerEnd
Λειτουργία
Η λειτουργία αυτή θα υπολογίσει τον μέγιστο κοινό διαιρέτη δύο αριθμών 2
.
Προσθέστε μια δοκιμή μεταξύ της υπηρεσίας και τις γραμμές End Function να γίνει διάκριση μεταξύ του «βασικού υπόθεση" και την " αναδρομική περίπτωση . " Περιπτώσεις βάσης είναι πολύ σημαντικό σε αναδρομικές συναρτήσεις - χωρίς ο ένας , ο κώδικάς σας θα προκαλέσει συνήθως ένα άπειρο βρόχο και την πιθανή συντριβή το πρόγραμμά σας . Για παράδειγμα , η βασική περίπτωση για τη λειτουργία " gcd " μοιάζει με αυτό :
Αν y = 0 Then ' αυτό θα είναι η βάση caseElse « Αυτή θα είναι η αναδρομική caseEnd Αν
Η
3
Προσθέστε μια βασική υπόθεση . Αυτή είναι η τιμή που επιστρέφει η λειτουργία σας όταν αντιμετωπίζει ένα πρόβλημα τόσο μικρό που δεν μπορεί να σπάσει οποιαδήποτε περαιτέρω . Για τη λειτουργία " gcd " , μοιάζει με αυτό :
Επιστροφή x
Η 4
Προσθέστε μια αναδρομική περίπτωση . Όταν η λειτουργία σας επαναλαμβάνεται , η ίδια επικαλείται με ένα απλούστερο πρόβλημα που θα τη βοηθήσει να λύσει το μεγαλύτερο πρόβλημα . Στην περίπτωση της λειτουργίας του " gcd » , το απλούστερο πρόβλημα επιλέγεται έτσι ώστε το αποτέλεσμά της είναι στην πραγματικότητα το αποτέλεσμα για το σύνολο του σύνθετου αυτού προβλήματος. Μοιάζει με αυτό :
Επιστροφή gcd ( y , x Mod y )
5
Δοκιμάστε τη λειτουργία σας . Είναι πάντα σημαντικό να ελέγξετε αναδρομικές συναρτήσεις χρησιμοποιώντας τη βασική περίπτωση και κάποιες αναδρομικές περιπτώσεις ως είσοδο . Προσπαθήστε να σκεφτείτε των δοκιμών που θα μπορούσε να είναι έξω από τον κανόνα , όπως τους αρνητικούς αριθμούς .
Η
εικόνων
Πνευματικά δικαιώματα © Γνώση Υπολογιστών Όλα τα δικαιώματα κατοχυρωμένα