Κεφ 2 & κεφ 7 Flashcards
Να δώσετε του ορισμό του αλγορίθμου
Αλγόριθμος είναι μια πεπερασμένη σειρα ενεργειών αυστηρα καθορισμένων οι οποίες εκτελούνται σε πεπερασμένο χρονο και έχουν στόχο την επίλυση ενος προβλήματος
Ποια είναι τα κριτήρια τα οποια πρέπει να ικανοποιεί ένας σωστος αλγόριθμος
κάθε αλγόριθμος πρέπει απαραίτητα να ικανοποιεί τα παρακάτω πεντε κριτήρια::
•Είσοδος: πρέπει καμια, μια ή περισσότερες τιμες δεδομένων να δίνονται ως είσοδοι σ’ αυτόν. Όταν δεν δίνονται τιμες δεδομένων σαν είσοδος, σημαίνει ότι ο ιδιος ο αλγόριθμος δημιουργεί και επεξεργάζεται πρωτογενείς τιμες που προέρχονται από μια συνάρτηση που παράγει τυχαιαη αριθμους ή δημιουργεί τις τιμες μετη βοήθεια αλλων απλών εντολών
• Έξοδος : Ο καθε ασγοριθμοι πρέπει να δημιουργει μία ή περισσότερες τιμες δεδομένων ως αποτέλεσμα είτε προς τον χρήστη είτε προς έναν άλλον αλγόριθμο για να ικανοποιεί το κριτήριο εξόδου
• Καθοριστικότητα: Ενα s αλγόριθμος πρέπει καθε εντολή του να εναι γραμμένη με τέτοιο τρόπο, που να μην αφήνει καμια αμφιβολία για τον τροπο εκτέλεση τις. Λόγου χάρινστη διαίρεση δυο αριθμων πρέπει να εξετάζεται και η περίπτωση που ο διαιρέτης λάβει τη μηδενική τιμή
• Περατότητα: πρέπει ο αλγόριθμος να τελειώνει μετά από ενα συγκέντρωνεο ( πεπερασμένο) αριθμό βημάτων εκτέλεσης των εντολών του Μια διαδικασια που δεν τελειωνει ετα από ένα συγκεκριμεν αριθμο βημάτων ονομάζεται υπολογιστική διαδικασια και δεν αποτελεί αλγόριθμο
• Αποτελεσματικότητα εναι αλγόριθμος ικανοποιεί το κριτήριο όταν η καθε εντολή του είναι απλή. Δηλαδή η καθε μια εντολή του δεν αρκεί να εχι ορισθεί, αλλα να μπορεί να εκτελεστεί
Να διατυπώσετε την απόψη σας για το εαν η έννοια του αλγορίθμου συνδέεται αποκλειστικα μόνο με τα προβλήματα της πληροφορικης
Η έννοια του αλγορίθμου δεν συναντάται μουν στα προβληματα της πληροφορικής και δεν συνδέεται αποκλειστικα μονο με αυτα, καθως αλγορίθμους συναντάμε και στη καθημερινή μου ζωην. Για παράδειγμα αν πρέπει να μαγειρέψουμε ένα φαγητο τότε πρέπει να εκτελέσουμε μια σειρα ενεργειών που εναι: να συγκεντρώσουμε όλα τα υλικά που θα χρησιμοποιήσουμε, να ορίσουμε τη κατάλληλες ποσότητας από τα παραπάνω υλικα να προετοιμάσουμε τα σκευη μαγειρικά, να ρίξουμε τα νεακα ιστο κατάλληλο σκεύος μαγειρική με τη σωστή σειρα. και να αφήσουμε να ψηθεί το φαγητο όση ώρα χρειάζεται. Ολες οι παραπάνω ενέργειες μπορούνε να απότέλεσημε του αλγόριθμο που δίνει λύση στο προβλημα τα μαγειρεύοντας ανοι φαγητότι διότι για την ετοιμασία του φαγητού ακόλουθουμε μια πεπερασμένη σειρά βηματων που εκτε λούνται διαδοχικά σε πεπερασμένο χρόνο και σκοπό έχουν να δώσουν λυση στο πρόβλημα
Γιατί η έννοια του αλγορίθμου είναι θεμελιώδης για την επιστήμη και πληροφορικης
Για την επιστήμη της πληροφορικής η έννοια του αλγορίθμου είναι Θεμελιώδες και η μελετη αυτών εναι πολύ ενδιαφερουσα, καθως είναι η πρωτη υλη για τη μελετη και εμβάθυνσ σε παρα πολλες γνωστικές περιοχές της επιστήμης αυτης
Από ποιες σκοπιές η πληροφορική ως επιστήμη μελετά τους αλγορίθμους Να γίνει μια σύντομη περιγραφη της καθε μία σκοπιάς
πληροφορική ως επιστήμη μελετάει τους αλγορίθμους από τις ακόλουθες σκοπιες:
•** υλικού **. Η σκοπιά αυτή εξετάζει πώς επηρεάζεται η ταχύτητα εκτέλεσης ενός αλγορίθμου από τις διάφορες τεχνολογίες υλικού που χρησιμοποιούνται σε εναν υπολογιστή, δηλαδή από τον τρόπο που είναι δομημένα τα διάφορα συστατικά του υπολογιστή σε μια ενιαία αρχιτεκτονική, όπως, με το αν ο υπολογιστής έχει κρυφή μνήμη και πόση, ή ανάλογα με την ταχύτητα της κύριας και δευτερεύουσας μνήμης, και πολλά άλλα.
• **Γλωσσών προγραμματισμού **: Η σκοπιά αυτή εξετάζει nus το είδος της γλώσσας προγραμματισμού, δηλαδή αν θα είναι χαμηλού ή υψηλού επιπέδου, που θα χρησιμοποιηθεί για την δημιουργία του αλγορίθμου, επηρεάζει τον ίδιο τον αλγόριθμο και συγκεκριμένα τη δομή και τον αριθμό εντολών του. Για Παράδειγμα μία γλώσσα που είναι χαμηλού επιπέδου (όπως η assembly ή η γλώσσα C) είναι ταχύτερη από μία άλλη γλώσσα που είναι υψηλού επιπέδου (όπως η Basic ή Pascal). Επίσης λαμβάνεται υπόψη και το πότε εμφανίστηκε μια γλώσσα προγραμματισμού, καθώς παλιότερες γλώσσες δεν έχουν τις ίδιες δυνατότητες με τις νεότερες, όπως τη δυνατότητα της αναδρομής.
•Θεωρητική; Στη σκοπιά αυτή εξετάζεται αν πραγματικά υπάρχει ή όχι κάποιος αποδοτικός αλγόριθμος για την επίλυση ενός προβλήματος και προσδιορίζει τα όρια της λύσης που θα βρεθεί σε σχέση με το πρόβλημα.
•Αναλυτική. Στη σκοπιά αυτή εξετάζονται οι υπολογιστικοί πόροι που απαιτούνται από έναν αλγόριθμο, όπως: ο χρόνος που απαιτείται για τις λειτουργίες CPU, ο χρόνος για λειτουργίες εισόδου/εξόδου, το μέγεθος της κύριας και της δευτερεύουσας μνήμης.
Να αναφέρετε τους τρόπους αναπαράστασης ενος αλγορίθμου
Με ελεύθερο κείμενο: σύμφωνα με αυτόν τον τρόπο αναπαράστασης, παρουσιά ζεται η μέθοδος επίλυσης του προβλήματος σε μορφή έκθεσης. Αποτελεί τον πιο αδόμητο και μη επεξεργασμένο τρόπο παρουσίασης αλγορίθμου και υπάρχει πάντα κίνδυνος να δημιουργηθεί ένας αλγόριθμος που να μη μπορεί να εκτελεστεί, παραβιάζοντας έτσι το κριτήριο της αποτελεσματικότητας.
Με διαγραμματικές τεχνικές: συνιστούν ένα γραφικό τρόπο παρουσίασης του αλγορίθμου. Η πιο παλια και πιο γνωστή διαγραμματική τεχνική είναι το διάγραμμα ροής. Η παρουσίαση ενός αλγορίθμου με τη χρήση διαγραμμάτων ροής δεν είναι η καλύτερη λύση, γι’ αυτό και εμφανίζεται όλο και σπανιότερα στην πράξη .
**Με φυσική γλώσσα κατα βήματα **: στην περίπτωση αυτή ο αλγόριθμος αποδίδεται σε φυσική γλώσσα με ιεράρχηση των ενεργειών κατά βήματα, με κίνδυνο να παραβιαστεί το της κριτήριο της καθοριστικότητας
**Με κωδικοποίηση ** δηλαδή με ένα προγραμμα που έχει γραφεί χρησιμοποιώντας είτε κάποια γλώσσα προγραμματισμου ειτε σε μια ψευδογλώσσα, που οταν όμως εκτελεσθεί θα δωσει τοι ιδια ακριβως αποτελεσματα με αυτά του αλγορίθμου
α. Τι είναι το διάγραμμα ροής?
β. Ποια είναι τα κυριότερα γεωμετρικά σχήματα σε ένα διαγραμμα ρους και τι ενεργεια κή λειτουργία δηλωνει το καθένα?
a. Ένα διαγραμμα ρους είναι ένα συνολο γεωμετρικών σχημάτων με το καθένα από αυτα τα σχήματα να καθορίζει μία συγκεκριμένη ενέργεια ή λειτουργία. Τα αυτά γεωμετρικά σχήματα που χρησιμοποιούνται με διάγραμμα ροής, ενώνονται μεταξύ τους με βέλη, τα οποία δείχνουν τη σειρά με την οποία θα εκτελεστούν οι ενέργειες αυτες
β. Τα κυριότερα γεωμετρικά σχήματα που χρησιμοποιούνται για το σχεδιασμό ενός διαγράμματος ροής είναι:
Έλλειψη: δηλώνει και καθορίζει την αρχή και το τέλος ενός αλγορίθμου,
Ρόμβος, δηλώνει μία ερώτηση με δύο ή περισσότερες εξόδους. Ο ρόμβος που υπάρχει στα παραδείγματα του σχολικού βιβλίου έχει δύο εξόδους
Ορθογώνιο: δηλώνει την εκτέλεση μιας ή πολλών πράξεων.
Πλάγιο παραλληλόγραμμο: δηλώνει την είσοδο ή την έξοδο των στοιχείων. Το σχήμα αυτό, δεν είναι πάντα το ίδιο, αλλά μπορεί να διαφοροποιείται, για να φαίνεται το είδος της συσκευής απ’ όπου θα γίνεται η είσοδος ή έξοδος των στοιχείων
** βέλη κατευθυνσητης**
Πως αρχίζει και πως τελειωνει ένας αλγόριθμος γραμμένος σε ψευδογλώσσα
Ο αλγόριθμος αρχίζει παντα με τη λέξη αλγόριθμοι και διπλά το όνομα του αλγορίθμου και ολοκληρώνεται παντα με τη λέξη τέλος και διπλά το Ονομα του αλγορίθμου
πότε ένα όνομα αλγορίθμου Θεωρείται ως έγκυρο
έγκυρο είναι το όνομα ενος Αλγορίθμου όταν δεν είναι δεσμευμένη λεξη, υποχρεωτικά αρχίζει με γραμμα, χρησιμοποιεί μόνο τα γραμματα ( ελληνικά ή λατινικά) πεζά και κεφαλαια, τα ψηφία (0-9) και τον χαρακτηρα της κάτω πουλας’_’ (underscore )
Τι είναι μια εντολή στην ψευδο γλώσσα; Ποια είδα εντόλαν υπαρχουν;
εντολή αποκαλείται καθε μια λέξη της ψευδογλωσσας που προσδιορίζει
μια σαφή και συγκεκριμένη ενέργεια.
Υπάρχουν δυο είδη συτόλων: οι δηλωτικες και οι εκτελέστεες. Μια εκτελεστεα εντολή εκτελεί μια συγκεκριμενη λειτουργία, ενώ μια δηλωτικό εντολή δηλώνει και δεν εκτελεί κάποια ενέργεια
Τι είναι μια εντολή εισόδου και τι μια εντολή εξοδου ? Ποιες εντολες εισόδου και εξοδου υποστηρίζει η ψευδο γλωσσα?
Μία εντολή εισόδου είναι μια εντολή που χρησιμοποιείται για την εισαγωγή των Δεδομένων από μία μονάδα εσόδου (π.χ. πληκτρολόγιο) χρησιμοποιείται για την έξοδο των αποτελεσματων σε μια μονάδα σε μια μοναδα εξοδου (π.χ. εκτυπωτής, οθόνη).
Η ψευδογλώσσα υποστηρίζει τις παρακάτω εντολές εισόδου:
~την εντολή «Διάβασε» για εισαγωγή δεδομένων από το πληκτρολόγιο,
~ την εντολή «Δεδομένα» για τη δήλωση των δεδομένων εισόδου.
Η ψευδογλώσσα υποστηρίζει τις παρακάτω εντολές εξόδου
~την εντολή «Εμφάνισε» για έξοδο των αποτελεσμάτων στην οθόνη,
~ την εντολή « εκτύπωσε » για την εξοδο των αποτελεσμάτων στον εκτυπωτή
~την εντολή «Αποτελέσματα» για τη δήλωση των αποτελεσμάτων
Τι είναι τα δεδομενα σε έναν αλγόριθμο και πως δηλώνονται με την εντολή εισόδου « δεδομένα》
Είναι στοιχεία που δίνονται με τη μορφή μεταβλητών, χωρίς να ζητείται το διαβασμα αυτών, αποτελούν είσοδο στον αλγόριθμο και δηλώνονται μία μόνο φορά στην επόμενη γραμμή μετα το ονομα του αλγορίθμου χρησιμοποιωντας τη λεξη 《δεδομενα》 και τοποθετώντας μέσα στα σύμβολα «//….//» τις μεταβλητές που έχουν χαρακτηριστεί ως δεδομένα
Τι είναι τα αποτελέσματα σε έναν αλγόριθμο και πως δηλώνονται με την εντολή εξόδου « Αποτελέσματα»
Στα «Αποτελέσματα» γράφονται οι μεταβλητές που περιέχουν μεγέθη που ζητείται να υπολογιστούν και όχι να εμφανιστούν ή να εκτυπωθούν. Γράφονται στην τελευταία γραμμή πριν το τέλος του αλγόριθμου, χρησιμοποιώντας τη λέξη 《Αποτελέσματα» και τοποθετώντας μέσα στα σύμβολα《 //……./» τις μεταβλητές που χαρακτηρίστηκαν ως αποτελέσματα.
Τι εννοούμε με τον όρο αλγοριθμική δομή?
Να αναφέρετε ονομαστικά τις τρεις βασικές δομές που χρησι μοποιούνται για την ανάπτυξη αλγορίθμων.
Με τον όρο αλγοριθμική δομή εννοούμε τον τρόπο με το οποίο εκτελούνται οι εντολές που υπάρχουν σε έναν αλγόριθμο.
Οι αλγοριθμικές δομές (συνιστώσες) που χρησιμοποιούνται σε έναν αλγόριθμο είναι η Δομή Ακολουθίας, η Δομή Επιλογής, η Δομή Επανάληψης,
Ποια χαρακτηριστικά έχει η 《δομή ακολουθίας》
Χαρακτηριστικά της δομής ακολουθίας είναι:
▪︎οι εντολές εκτελούνται η μία μετά την άλλη με τη σειρά που είναι γραμμένες (σειριακή εκτέλεση των εντολών),
▪︎ χρησιμοποιείται για την αντιμετώπιση απλών προβλημάτων, όπου είναι δεδομένη η σειρά εκτέλεσης ενός συνόλου ενεργειών,
▪︎Ο αλγόριθμος που χρησιμοποιεί μόνο τη δομή ακολουθίας αποτελείται μόνο από εντολές εισόδου, εντολές εξόδου, και εντολές εκχώρησης,
▪︎εκτελούνται υποχρεωτικά όλες οι εντολές του αλγορίθμου μία μόνο φορά.
Από τι εξαρτάται η επιλογή μιας γλώσσας προγραμματισμου για τη δημιουργια ενος προγραμματος
εξαρταται από τις γνώσεις και τις προτιμήσεις του προγραμματιστή από το είδος του προγράμματος που θα αναπτυχθεί, και το διαθεσιμο εξοπλισμό που υπαρχει
Γενικά στοιχεία για τις γλώσσες προγραμματισμού
Απάνσε γλώσσα προγραμματισμού έχει σχεδιαστεί για συγκεκριμένο σκοπό Η κάθε, έμφαση σε κάποια χαρακτηριστικαλύτερη γλώσσα μέτρων άλλων. Στην πραγματικότητα, μια πλάι η καλύτερη γλώσσα προγραμματισ την δεν υπάρχει, αλλά απλά υπάρχει η γλώσσα που είναι η πιο κατάλληλη για την ανάπτυξη εφαρμογών συγκεκριμένου τύπου,
•Η καθε γλώσσα προγραμματισμού έχει σχεδιαστεί για συγκεκριμένο σκοπο δίνοντας έμφαση σε κάποια χαρακτηριστικά σε βάρος ορισμένων αλλων. στην πραγματικότητα, για γλωσσα που να είναι η καλύτερη γλώσσα προγραμματισμου δεν υπάρχει αλλά απλά υπάρχει η γλώσσα που είναι η πιο κατάλληλη για την ανάπτυξη εφαρμογων συγκεκριμένου τύπου.
•Οι γλώσσες προγραμματισμου περιέχουν πληροφορίες που σχετίζονται με διάφορα τεχνικά θέματα τα οποία αλλάζουν αρκετά συχνά, καθώς εξαρτώνται από του εξοπλισμό και το λειτουργικό σύστημα. Αν και οι νεώτερες εκδόσεις των γλώσσων διαθέτουν ρεπερτόριο εντολών πιο πλούσιο και έχουν περισσότερες δυνατότητες σε σχέση με τις παλαιότερες εκδόσεις του, εντούτοις τα στοιχεία αυτά δε βοηθούν ουσιαστικά στην εκμάθηση της δημιουργίας σωστών προγραμμάτων.
•Οι γλώσσες προγραμματισμού έχουν κοινά χαρακτηριστικά, γιατί επεξεργάζονται τους ίδιους τύπους δεδομένων, έχουν παρόμοιες εντολές και υποστηρίζουν τις ίδιες βασικές δομές.
Από τι αποτελείτα το αλφάβητο της ΓΛΩΣΑΣ
Αποτελείται από:
○Γράμματα: τα κεφαλαία (Α - Ω) και τα πεζά (α – ω) γράμματα του ελληνικού αλφαβήτου καθώς και τα κεφαλαία (Α-Ζ) και πεζά (α – z) γράμματα του λατινικού αλφαβήτου.
○Ψηφία: 0, 1, 2, 3, 4, 5, 6, 7, 8, 9.
○Ειδικούς χαρακτήρες: +-*/ =(), .!’1&κενός χαρακτήρας Λ. η ανήκουν και οι αγκύλες , καθώς χρησιμοποιούνται στη δομή δεδομένων, «πίνακας» που θα δούμε σε επόμενα κεφάλαια
Τι καλείται ως «Τύπος δεδομενων »? ποιοι είναι οι κυριότεροι τυποι δεδομένων που υποστηρίζονται από τη ΓΛΩΣΣΑ
όλα τα δεδομένα που επεξεργάζονται οι υπολογιστές δεν είναι ίδια και για να μπορεσει ο υπολογιστής να τα επεξεργαστεί, ομαδοποιουνται σε κατηγορίες. Η κάθε κατηγορία των δεδομένων ονομάζεται «τύπος δεδομένων》και κυριότεροι τύποι δεδομενων είναι οι
●Ακέραιος τύπος. Ο τύπος αυτός περιλαμβάνει όλους τους ακέραιους αριθμούς που είναι γνωστοί από τα μαθηματικά και μπορούν να είναι θετικοί, αρνητικοί ή μηδέν. Παραδείγματα ακεραίων είναι οι αριθμοί 1, 3409,0,-980
○Πραγματικός τύπος. Ο τύπος αυτός περιλαμβάνει όλους τους πραγματικούς αριθμούς που είναι γνωστοί από τα μαθηματικά και μπορούν να είναι θετικοί αρνητικοί ή μηδέν, Παραδείγματα πραγματικών αριθμοί είναι οι αριθμοί 3.14159 2.71828,-112.45, 0.45.
Χαρακτήρας. Ο τύπος αυτός περιγράφει έναν ή περισσότερους χαρακτήρες. Ένα δεδομένο τύπου χαρακτήρα, μπορεί να περιέχει οποιοδήποτε χαρακτήρα που προέρχεται από το πληκτρολόγιο. Οι χαρακτήρες πρέπει υποχρεωτικά να βρίσκονται μέσα σε μονά (“) ή διπλά (“ “) εισαγωγικά. Παραδείγματα χαρακτήρων είναι’ κ’ “ Γιώργο “” ανάπτυξη Εφαρμογών”, τα δεδομένα αυτού του τύπου, επειδή περιέχουν τόσο αλφαβητικούς όσο και αριθμητικούς χαρακτήρες, ονομαζονται συχνά αλφαριθμητικά.
●Λογικός. Είναι ο τύπος δεδομένων που μπορεί να δεχτεί δύο μόνο τιμές την τιμή 《ΑΛΗΘΗΣ》 και 《ΨΕΥΔΗΣ》
Τι είναι η «σταθερά » και ποιος τυποι σταθερών υπάρχουν?
Σταθερά είναι μία προκαθορισμένη τιμή που παραμένει αμετάβλητη, δηλαδή δεν αλλάζει σε όλη τη διάρκεια εκτέλεσης του αλγορίθμου ή του προγράμματος. Αναλογα με το τι τυπο δεδομενο εκφράζει να σταθερα, αντίστοιχου τύπου είναι και η ιδια η σταθερο. ετσι έχουμε τις :
-Ακέραιες και πραγματικές (αριθμητικές): Για να δημιουργηθούν χρησιμοποιούνται οι αριθμητικοί χαρακτήρες, το + το -, και η τελεία ως δεκαδικό σημείο, π.χ.-10.1.3.
-Αλφαριθμητικές ή χαρακτήρας, σχηματίζονται από οποιαδήποτε χαρακτήρα εντός μονών εισαγωγικών π.χ. ‘Γιώργος’, ‘ΑΕΠΠ,
-** Λογικές**, υπάρχουν δύο λογικές σταθερές, οι «ΑΛΗΘΗΣ» και «ΨΕΥΔΗΣ»
Τι είναι η 《μετάβλητη》 και ποιους τυπους μεταβλητών γνωρίζετε;
Μια μεταβλητή είναι ένα γλωσσικό αντικείμενο που χρησιμοποιείται για να παραστήσει ένα στοιχείο δεδομένου. Στη μεταβλητή καταχωρίζεται μια τιμή (ένα δεδομένο) η οποία μπορεί να αλλάζει κατά τη διάρκεια εκτέλεσης του αλγορίθμου. Ανάλογα με το τι τύπου είναι το δεδομένο που τοποθετείται στη μεταβλητή τέτοιου τύπου είναι και η ιδια η μεταβλητή. Έτσι, υπάρχουν μεταβλητές και των τεσσάρων τύπων δεδομένων, δηλαδή μπορούν να είναι ακέραιες, πραγματικές, χαρακτήρες, λογικές.
Πως καταχωρίζονται τα δεδομένα στη μνήμη του υπολογιστη?
τα δεδομενα καταχωρίζονται στη μνήμη του υπολογιστή με τέτοιο τροπο ωστε να καταλαμβάνουν συγκεκριμένο αριθμό θέσεων μνήμης (bytes) και το με τέτοιο τρόπο, ώστε το εύρος των τιμών που μπορούν να πάρουν διαφοροποιείται αναλογα με το τι τύπου είναι το δεδομενο που καταχωρίζεται στη μνήμη κι από τον διατιθέμενο αριθμό bytes. Στον υπολογιστή υπάρχει διαθέσιμο για χρηση ένα υποσύνολο ακεραίων ή πραγματικών αριθμών με τους πιο συνηθισμένους τυπους δεδομένων ν α είναι Ο ακέραιος σε 1, 2 ή 4 bytes και ο πραγματικός σε 4 ή 8 bytes