Προγραμματισμός FORTRAN > Μαθήματα > Εντολές Επανάληψης | |
|
Οι εντολές της Fortran εκτελούνται με τη σειρά που εμφανίζονται στο πρόγραμμα από πάνω προς τα κάτω (top-down). Αυτό ίσως είναι αρκετό για μερικά απλά προγράμματα. Όμως, το βασικό προσόν και ο λόγος δημιουργίας των μηχανών και του Η/Υ ειδικότερα, είναι η αδιαμαρτύρητη και γρήγορη επανάληψη όποιας ενέργειας τους αναθέτουμε. Με τις εντολές επανάληψης DO ... END DO και DO WHILE ... END DO μπορούμε να επαναλάβουμε ένα τμήμα του προγράμματος, έτσι ώστε αυτό να εκτελεστεί ταχύτατα, όσες φορές θέλουμε, και μάλιστα, με διαφορετικές τιμές των μεταβλητών κάθε φορά. Σε πολλούς αλγορίθμους όπου χρειάζεται να διακοπεί η επανάληψη πρόοωρα χρησιμοποιούμε και τις εντολές εξόδου EXIT και CYCLE. Η ΕΝΤΟΛΗ DO ... END DO Για να επαναλάβουμε πολλές φορές μια ομάδα εντολών, πρέπει να την εντάξουμε μέσα σε ένα γκρουπ εντολών επανάληψης DO ... END DO. Το γκρουπ των εντολών επανάληψης έχει σαν πρώτη εντολή την εντολή DO, η οποία περιέχει και τον μετρητή των επαναλήψεων ή δείκτη, και σαν τελευταία εντολή την εντολή END DO (ή ENDDO). Η γενική μορφή της εντολής DO είναι η παρακάτω:
Η επανάληψη DO λειτουργεί ως εξής:
Η ΕΝΤΟΛΗ DO WHILE ... END DO Η εντολή DO εκτελεί πάντα ένα συγκεκριμένο αριθμό επαναλήψεων, σταθερό και γνωστό πριν τη έναρξη του βρόγχου. Επιπλέον, περιέχει τη πιθανότητα να μην εκτελεστεί καθόλου ο βρόγχος αν η συνθήκη δεν ικανοποιείται. Όταν ο αριθμός των επαναλήψεων δεν είναι γνωστός πριν την έναρξη του βρόγχου, ή/και, όταν πρέπει να εξασφαλίσουμε ότι ο βρόγχος θα εκτελεστεί τουλάχιστον μια φορά, χρησιμοποιούμε την εντολή DO WHILE ... END DO, η οποία έχει παρόμοια δομή με τη DO.
Οι επαναλήψεις μέσα στη DO WHILE πραγματοποιούνται μόνον εφόσον η λογική έκφραση είναι αληθής (παίρνει τη τιμή TRUE). Η εντολή WHILE είναι απαραίτητη για προγράμματα που λύνουν προσεγγιστικά προβλήματα μηχανικών με αριθμητική ανάλυση, πεπερασμένα στοιχεία, κ.ά. όπου, χρειάζεται οπωσδήποτε μια αρχική εκτίμηση, ενώ ο αριθμός των επαναλήψεων προσδιορίζεται αργότερα από το βαθμό ή την ακρίβεια προσέγγισης στη βέλτιστη λύση. Συχνά, η λογική έκφραση που ακολουθεί το WHILE, περιέχει περισσότερες από μια συνθήκες που συνδέονται με λογικά AND και OR. Ο τρόπος γραφής και οι κανόνες αυτών των λογικών εκφράσεων και συνθηκών, αναφέρονται λεπτομερώς κατά τη παρουσίαση των εντολών ελέγχου (IF). ΟΙ ΕΝΤΟΛΕΣ EXIT & CYCLE Οι EXIT & CYCLE χρησιμοποιούνται για τον πρόωρο τερματισμό των βρόγχων. Στο προγραμματισμό παίζει σημαντικό ρόλο η ταχύτητα εκτέλεσης ενός προγράμματος. Συχνά είναι σκόπιμο να τερματιστεί πρόωρα μια εντολή επανάληψης. Για παράδειγμα μια εντολή DO που πρόκειται να εκτελεστεί μερικές εκατοντάδες ή χιλιάδες φορές αναζητώντας μια τιμή σε ένα σύνολο δεδομένων, είναι σκόπιμο να τερματιστεί αμέσως μόλις τη βρει. Αυτό μπορεί να συμβεί από τις πρώτες επαναλήψεις και έτσι να συντομεύσει σημαντικά ο χρόνος εκτέλεσης του προγράμματος. Η εντολή EXIT διακόπτει τελείως τη εκτέλεση του βρόγχου και μεταφέρει την εκτέλεση στην εντολή που βρίσκεται μετά την END DO. Με την EXIT δεν πραγματοποιούνται οι υπόλοιπες επαναλήψεις του DO. Η εντολή CYCLE μεταφέρει την εκτέλεση πίσω στη DO για την επόμενη επανάληψη χωρίς να εκτελέσεις τις υπόλοιπες εντολές που περιέχονται μεταξύ της CYCLE και της END DO. Με την CYCLE πραγματοποιούνται οι υπόλοιπες επαναλήψεις του DO αλλά είναι πιο σύντομες γιατί εκτελούν λιγότερες εντολές. |
|
©2006 Δρ. Β. Χ. Μούσας, Επικ. Καθ., e-mail | Τ.Ε.Ι. Αθήνας Τμήμα Πολιτικών Έργων Υποδομής |