Σχεδόν όλα στον κόσμο μας υπακούουν σε κάποιο είδοςνόμοι και κανονισμοί. Η σύγχρονη επιστήμη δεν παραμένει ακίνητη, χάρη στην οποία η ανθρωπότητα γνωρίζει πολλούς τύπους και αλγόριθμους, ακολουθώντας τις οποίες, μπορείτε να υπολογίσετε και να αναδημιουργήσετε πολλές δράσεις και δομές που δημιουργήθηκαν από τη φύση και να αναβιώσετε τις ιδέες που εφευρέθηκαν από τον άνθρωπο.
Σε αυτό το άρθρο, θα αναλύσουμε τις βασικές έννοιες του αλγορίθμου.
Ο αλγόριθμος είναι μια ιδέα που εμφανίστηκε τον XII αιώνα. Η ίδια η λέξη "αλγόριθμος" προέρχεται από τη λατινική ερμηνεία του ονόματος του διάσημου μαθηματικού της Μέσης Ανατολής, Muhammad al Khorezmi, ο οποίος έγραψε το βιβλίο "On Indian Account". Αυτό το βιβλίο περιγράφει πώς να γράφετε σωστά φυσικούς αριθμούς χρησιμοποιώντας αραβικούς αριθμούς και παρέχει μια περιγραφή του αλγορίθμου για λειτουργίες σε μια στήλη πάνω από αυτούς τους αριθμούς.
Τον XII αιώνα, το βιβλίο "On Indian Account" μεταφράστηκε στα λατινικά και στη συνέχεια εμφανίστηκε αυτός ο ορισμός.
Η δημιουργία αλγορίθμου απαιτεί δημιουργικότητα,Επομένως, μόνο ένα ζωντανό ον μπορεί να δημιουργήσει μια νέα λίστα διαδοχικών ενεργειών. Αλλά για την εκτέλεση ήδη υπαρχόντων οδηγιών, δεν είναι απαραίτητο να έχουμε φαντασία, ακόμη και μια άψυχη τεχνική μπορεί να το αντιμετωπίσει.
Ένα εξαιρετικό παράδειγμα της ακριβούς εκτέλεσης μιας δεδομένης εντολής είναι ένας άδειος φούρνος μικροκυμάτων που συνεχίζει να λειτουργεί παρά την έλλειψη φαγητού μέσα.
Ένα θέμα ή αντικείμενο που δεν χρειάζεταιτο να εμβαθύνει στην ουσία του αλγορίθμου ονομάζεται επίσημος εκτελεστής. Ένα άτομο μπορεί επίσης να γίνει επίσημος ερμηνευτής, αλλά σε περίπτωση μη αποδοτικότητας αυτής ή αυτής της δράσης, ένας ερμηνευτής σκέψης μπορεί να κάνει τα πάντα με τον δικό του τρόπο. Ως εκ τούτου, οι κύριοι εκτελεστές είναι υπολογιστές, φούρνοι μικροκυμάτων, τηλέφωνα και άλλος εξοπλισμός. Η έννοια ενός αλγορίθμου στην επιστήμη των υπολογιστών είναι η πιο σημαντική. Κάθε αλγόριθμος καταρτίζεται με την προσδοκία ενός συγκεκριμένου θέματος, λαμβάνοντας υπόψη τις επιτρεπόμενες ενέργειες. Τα αντικείμενα στα οποία το υποκείμενο μπορεί να εφαρμόσει οδηγίες αποτελούν το περιβάλλον του εκτελεστή.
Σχεδόν όλα στον κόσμο μας υπακούουν σε κάποιο είδοςνόμοι και κανονισμοί. Η σύγχρονη επιστήμη δεν παραμένει ακίνητη, χάρη στην οποία η ανθρωπότητα γνωρίζει πολλούς τύπους και αλγόριθμους, ακολουθώντας τους οποίους είναι δυνατόν να υπολογίσουμε και να αναδημιουργήσουμε πολλές δράσεις και δημιουργίες της φύσης και να ζωντανέψουμε τις ιδέες που εφευρέθηκαν από τον άνθρωπο. Σε αυτό το άρθρο, θα αναλύσουμε τις βασικές έννοιες του αλγορίθμου.
Οι περισσότερες από τις ενέργειες στις οποίες εκτελούμεκατά τη διάρκεια της ζωής τους, απαιτούν συμμόρφωση με διάφορους κανόνες. Η ποιότητα και το αποτέλεσμα των καθηκόντων που του έχουν ανατεθεί εξαρτάται από το πόσο σωστό ένα άτομο έχει μια ιδέα για το τι, πώς και με ποια σειρά πρέπει να κάνει. Από την παιδική ηλικία, οι γονείς προσπαθούν να αναπτύξουν έναν αλγόριθμο για βασικές ενέργειες στο παιδί τους, για παράδειγμα: ξυπνήστε, φτιάξτε το κρεβάτι, πλύνετε και βουρτσίζετε τα δόντια σας, κάνετε ασκήσεις, κάνετε πρωινό, κ.λπ.
Ένας αλγόριθμος είναι μια έννοια που υποδηλώνει μια συλλογή οδηγιών που πρέπει να ακολουθήσει ένα άτομο για να λύσει ένα συγκεκριμένο πρόβλημα.
Σε γενικές γραμμές, ο αλγόριθμος έχει πολλούς ορισμούς, αρκετοί επιστήμονες το χαρακτηρίζουν με διαφορετικούς τρόπους.
Εάν ένας αλγόριθμος που εφαρμόζεται από ένα άτομο σε καθημερινή βάση έχειτο καθένα είναι δικό του και μπορεί να αλλάξει ανάλογα με την ηλικία και τις καταστάσεις στις οποίες βρίσκεται ο ερμηνευτής, τότε το σύνολο των ενεργειών που πρέπει να εκτελεστούν για την επίλυση ενός μαθηματικού προβλήματος ή για τη χρήση της τεχνολογίας είναι το ίδιο για όλους και παραμένει πάντα αμετάβλητο.
Υπάρχει μια διαφορετική έννοια ενός αλγορίθμου, οι τύποι αλγορίθμων διαφέρουν επίσης - για παράδειγμα, για ένα άτομο που επιδιώκει έναν στόχο και για την τεχνολογία.
Στην εποχή μας της πληροφορικής, οι άνθρωποικάθε μέρα εκτελούν ένα σύνολο οδηγιών που έχουν δημιουργηθεί από άλλα άτομα πριν από αυτούς, επειδή η τεχνική απαιτεί μια σειρά ενεργειών κατά τη χρήση της ακριβούς εκτέλεσης. Επομένως, το κύριο καθήκον των δασκάλων στα σχολεία είναι να διδάξουν στα παιδιά πώς να χρησιμοποιούν αλγόριθμους, να κατανοούν γρήγορα και να αλλάζουν τους υπάρχοντες κανόνες σύμφωνα με την τρέχουσα κατάσταση. Η δομή του αλγορίθμου είναι μία από αυτές τις έννοιες που διδάσκονται στην τάξη των μαθηματικών και της επιστήμης των υπολογιστών σε κάθε σχολείο.
1. Διακριτικότητα (ακολουθία ξεχωριστών ενεργειών) - οποιοσδήποτε αλγόριθμος θα πρέπει να παρουσιάζεται ως μια σειρά απλών ενεργειών, καθεμία από τις οποίες πρέπει να ξεκινά μετά την ολοκλήρωση της προηγούμενης.
2. Σίγουρα - κάθε ενέργεια του αλγορίθμου πρέπει να είναι τόσο απλή και κατανοητή ώστε ο ερμηνευτής να μην έχει ερωτήσεις και να μην έχει καμία ελευθερία δράσης.
3. Αποτελεσματικότητα - η περιγραφή του αλγορίθμου πρέπει να είναι σαφής και πλήρης, έτσι ώστε μετά την ολοκλήρωση όλων των οδηγιών, η εργασία να φτάσει στο λογικό της τέλος.
4. Μαζικότητα - ο αλγόριθμος πρέπει να ισχύει για μια ολόκληρη κατηγορία προβλημάτων, τα οποία μπορούν να επιλυθούν μόνο με την αλλαγή των αριθμών στον αλγόριθμο. Αν και υπάρχει η άποψη ότι το τελευταίο σημείο δεν ισχύει για αλγόριθμους, αλλά γενικά για όλες τις μαθηματικές μεθόδους.
Συχνά στα σχολεία για καλύτερη κατανόηση στα παιδιάπεριγραφή αλγορίθμων, οι καθηγητές αναφέρουν ως παραδείγματα μαγειρικής από ένα βιβλίο μαγειρικής, κάνοντας μια συνταγογραφούμενη ιατρική ή μια διαδικασία παρασκευής σαπουνιού με βάση μια κύρια τάξη. Ωστόσο, δεδομένης της δεύτερης ιδιότητας του αλγορίθμου, που λέει ότι κάθε σημείο του αλγορίθμου πρέπει να είναι τόσο ξεκάθαρο ώστε να μπορεί να το εκτελέσει απολύτως οποιοδήποτε άτομο, ακόμη και μια μηχανή, μπορούμε να καταλήξουμε στο συμπέρασμα ότι οποιαδήποτε διαδικασία απαιτεί τουλάχιστον κάποιο είδος φαντασίας δεν μπορεί να κατονομαστεί. Και το μαγείρεμα και η χειροτεχνία απαιτούν ορισμένες δεξιότητες και μια καλά ανεπτυγμένη φαντασία.
Υπάρχουν διαφορετικοί τύποι αλγορίθμων, αλλά υπάρχουν τρεις κύριοι.
Σε αυτόν τον τύπο, ορισμένα σημεία επαναλαμβάνονται πολλές φορές. Η λίστα των ενεργειών που πρέπει να επαναληφθούν για την επίτευξη του στόχου ονομάζεται το σώμα του αλγορίθμου.
Η επανάληψη βρόχου είναι η εκτέλεση όλων των στοιχείων που περιλαμβάνονται στο σώμα του βρόχου.
Τα μέρη ενός βρόχου που εκτελούν συνεχώς έναν ορισμένο αριθμό φορών ονομάζονται βρόχος σταθερής επανάληψης.
Αυτά τα μέρη του κύκλου, ο ρυθμός επανάληψης των οποίων εξαρτάται από έναν αριθμό συνθηκών, ονομάζονται απροσδιόριστοι.
Ο απλούστερος τύπος βρόχου είναι σταθερός.
Υπάρχουν δύο τύποι αλγορίθμων βρόχου:
Βρόχος με προϋπόθεση. Σε αυτήν την περίπτωση, το σώμα του βρόχου ελέγχει την κατάστασή του πριν εκτελεστεί.
Βρόχος με μετα-κατάσταση. Σε έναν βρόχο με μετα-κατάσταση, η κατάσταση ελέγχεται μετά το τέλος του βρόχου.
Οι οδηγίες τέτοιων συστημάτων εκτελούνται μία φοράη ακολουθία στην οποία παρουσιάζονται. Για παράδειγμα, η διαδικασία δημιουργίας κρεβατιού ή βουρτσίσματος δοντιών μπορεί να θεωρηθεί γραμμικός αλγόριθμος. Επίσης, αυτός ο τύπος περιλαμβάνει μαθηματικά παραδείγματα, όπου υπάρχουν μόνο ενέργειες προσθήκης και αφαίρεσης.
Σε έναν διχαλωτό τύπο, υπάρχουν πολλές επιλογές για ενέργειες, οι οποίες θα εφαρμοστούν ανάλογα με την κατάσταση.
Παράδειγμα. Ερώτηση: "Βρέχει;" Επιλογές απάντησης: "Ναι" ή "Όχι". Εάν "ναι" - ανοίξτε την ομπρέλα, εάν "όχι" - βάλτε την ομπρέλα στην τσάντα.
Ο βοηθητικός αλγόριθμος μπορεί να χρησιμοποιηθεί σε άλλους αλγόριθμους καθορίζοντας μόνο το όνομά του.
Κατάσταση βρίσκεται μεταξύ των λέξεων "if" και "then".
Για παράδειγμα: εάν γνωρίζετε αγγλικά, πατήστε ένα. Σε αυτήν την πρόταση, η συνθήκη είναι μέρος της φράσης "ξέρετε αγγλικά".
Δεδομένα - πληροφορίες που φέρουν ένα ορισμένο σημασιολογικό φορτίο και παρουσιάζονται με τέτοιο τρόπο ώστε να μπορούν να μεταδίδονται και να χρησιμοποιούνται για αυτόν τον αλγόριθμο.
Αλγοριθμική διαδικασία - επίλυση ενός προβλήματος από έναν αλγόριθμο χρησιμοποιώντας ορισμένα δεδομένα.
Ο αλγόριθμος μπορεί να έχει διαφορετική δομή.Για να περιγράψετε έναν αλγόριθμο, η έννοια του οποίου εξαρτάται επίσης από τη δομή του, μπορείτε να χρησιμοποιήσετε διάφορες μεθόδους, για παράδειγμα: λεκτική, γραφική, χρησιμοποιώντας μια ειδικά αναπτυγμένη αλγοριθμική γλώσσα.
Ποια από τις μεθόδους θα χρησιμοποιηθεί εξαρτάται από διάφορους παράγοντες: από την πολυπλοκότητα του προβλήματος, από το πόσο χρειάζεστε για να αναλύσετε λεπτομερώς τη διαδικασία επίλυσης του προβλήματος κ.λπ.
Ένας γραφικός αλγόριθμος είναι μια έννοια που συνεπάγεται την αποσύνθεση των ενεργειών που πρέπει να εκτελεστούν για την επίλυση μιας συγκεκριμένης εργασίας, σύμφωνα με ορισμένα γεωμετρικά σχήματα.
Τα γραφικά διαγράμματα δεν απεικονίζονται τυχαία. Για να τα καταλάβει κάθε άτομο, συνήθως χρησιμοποιούνται τα διαγράμματα μπλοκ και τα διαρθρωτικά διαγράμματα του Nassi-Shneiderman.
Επίσης, τα διαγράμματα μπλοκ εμφανίζονται σύμφωνα με τα GOST-19701-90 και GOST-19.003-80.
Τα γραφικά σχήματα που χρησιμοποιούνται στον αλγόριθμο χωρίζονται σε:
Οι κυριότερες. Οι βασικές εικόνες χρησιμοποιούνται για να υποδείξουν τις λειτουργίες που απαιτούνται για την επεξεργασία δεδομένων κατά την επίλυση ενός προβλήματος.
Βοηθητική. Απαιτούνται βοηθητικές εικόνες για να υποδείξουν μεμονωμένα, όχι τα πιο σημαντικά στοιχεία επίλυσης του προβλήματος.
Στα γραφικά, τα γεωμετρικά σχήματα που χρησιμοποιούνται για την αναπαράσταση δεδομένων ονομάζονται μπλοκ.
Όλα τα μπλοκ είναι στη σειρά "από πάνω προς τα κάτω"και "αριστερά προς τα δεξιά" είναι η σωστή κατεύθυνση ροής. Με τη σωστή ακολουθία, οι γραμμές που συνδέουν τα μπλοκ δεν δείχνουν την κατεύθυνση. Διαφορετικά, η κατεύθυνση των γραμμών υποδεικνύεται με βέλη.
Ένα σωστό διάγραμμα ροής δεν πρέπει να έχει περισσότερες από μία εξόδους από μπλοκ επεξεργασίας και λιγότερες από δύο εξόδους από μπλοκ υπεύθυνα για λογικές λειτουργίες και να ελέγχει την εκπλήρωση των προϋποθέσεων.
Πώς να φτιάξετε έναν αλγόριθμο σωστά;
Η δομή του αλγορίθμου, όπως αναφέρθηκε παραπάνω, πρέπει να κατασκευαστεί σύμφωνα με το GOST, διαφορετικά δεν θα είναι κατανοητή και προσβάσιμη σε άλλους.
Η γενική μεθοδολογία καταγραφής περιλαμβάνει τα ακόλουθα σημεία:
Το όνομα με το οποίο θα είναι σαφές ποιο πρόβλημα μπορεί να λυθεί χρησιμοποιώντας αυτό το σχήμα.
Κάθε αλγόριθμος πρέπει να έχει ξεκάθαρη αρχή και τέλος.
Οι αλγόριθμοι πρέπει να περιγράφουν με σαφήνεια και σαφήνεια όλα τα δεδομένα, τόσο την είσοδο όσο και την έξοδο.
Κατά την κατάρτιση του αλγορίθμου, θα πρέπει να σημειωθεί οι ενέργειες που θα επιτρέψουν την εκτέλεση των ενεργειών που απαιτούνται για την επίλυση του προβλήματος στα επιλεγμένα δεδομένα. Ένα παράδειγμα του αλγορίθμου:
Η σωστή κατασκευή του κυκλώματος θα διευκολύνει σημαντικά τον υπολογισμό των αλγορίθμων.
Οριζόντια τοποθετημένη οβάλ - αρχή και τέλος (τελικό σημάδι).
Ένα οριζόντιο ορθογώνιο - υπολογισμός ή άλλες ενέργειες (σημάδι διαδικασίας).
Ένα οριζόντιο παραλληλόγραμμο - είσοδος ή έξοδος (σήμα δεδομένων).
Οριζόντιος ρόμβος - έλεγχος κατάστασης (σημάδι λύσης).
Ένα επίμηκες, οριζόντια τοποθετημένο εξάγωνο είναι μια τροποποίηση (σημάδι προετοιμασίας).
Τα μοντέλα αλγορίθμου φαίνονται στο παρακάτω σχήμα.
Έκδοση τύπου-λέξης της κατασκευής αλγορίθμου.
Οι αλγόριθμοι τύπου-λέξης είναι γραμμένοισε αυθαίρετη μορφή, στην επαγγελματική γλώσσα του πεδίου στον οποίο ανήκει το έργο. Η περιγραφή των ενεργειών με αυτόν τον τρόπο πραγματοποιείται χρησιμοποιώντας λέξεις και τύπους.
Στην πληροφορική, όλα βασίζονται σε αλγόριθμους.Χωρίς σαφείς οδηγίες που έχουν εισαχθεί με τη μορφή ειδικού κώδικα, καμία τεχνική ή πρόγραμμα δεν θα λειτουργήσει. Στα μαθήματα της επιστήμης των υπολογιστών, οι μαθητές προσπαθούν να δώσουν τις βασικές έννοιες των αλγορίθμων, να τους διδάξουν πώς να τους χρησιμοποιήσουν και να τους δημιουργήσουν μόνοι τους.
Η δημιουργία και χρήση αλγορίθμων στην επιστήμη των υπολογιστών είναι μια πιο δημιουργική διαδικασία από ό, τι, για παράδειγμα, ακολουθώντας οδηγίες για την επίλυση ενός προβλήματος στα μαθηματικά.
Υπάρχει επίσης ένα ειδικό πρόγραμμαΟ "Αλγόριθμος", που βοηθά άτομα που δεν γνωρίζουν τον προγραμματισμό, να δημιουργούν τα δικά τους προγράμματα. Ένας τέτοιος πόρος μπορεί να γίνει απαραίτητος βοηθός για όσους κάνουν τα πρώτα τους βήματα στην επιστήμη των υπολογιστών και θέλουν να δημιουργήσουν τα δικά τους παιχνίδια ή άλλα προγράμματα.
Από την άλλη πλευρά, οποιοδήποτε πρόγραμμα είναι ένας αλγόριθμος.Αλλά εάν ο αλγόριθμος πραγματοποιεί μόνο ενέργειες που πρέπει να εκτελεστούν εισάγοντας τα δεδομένα του, τότε το πρόγραμμα μεταφέρει ήδη έτοιμα δεδομένα. Μια άλλη διαφορά είναι ότι το πρόγραμμα μπορεί να κατοχυρωθεί με δίπλωμα ευρεσιτεχνίας και αποκλειστικό, αλλά ο αλγόριθμος δεν μπορεί. Ένας αλγόριθμος είναι μια ευρύτερη έννοια από ένα πρόγραμμα.
Σε αυτό το άρθρο, εξετάσαμε την έννοια ενός αλγορίθμου και τους τύπους του και μάθαμε πώς να γράφουμε σωστά γραφικά σχήματα.