Μάθημα : Α' ΓΥΜΝΑΣΙΟΥ - ΠΛΗΡΟΦΟΡΙΚΗ

Κωδικός : G253127

G253127  -  ΕΛΕΝΗ ΔΑΜΑΣΚΟΥ

Ενότητες μαθήματος - ΕΝΟΤΗΤΑ 8γ - Αναπαράσταση αλγορίθμων – Γλώσσες προγραμματισμού

ΕΝΟΤΗΤΑ 8γ - Αναπαράσταση αλγορίθμων – Γλώσσες προγραμματισμού

Η έννοια του αλγορίθμου υπήρχε πολύ πριν εμφανιστούν οι υπολογιστές!

Οι αλγόριθμοι υπήρχαν πριν από τους υπολογιστές.

 

Αλγόριθμος του Ευκλείδη (3ο αιώνα π.Χ.)

    • Είναι ένας από τους πιο γνωστούς αλγορίθμους.

    • Χρησιμοποιείται για να βρει τον Μέγιστο Κοινό Διαιρέτη (ΜΚΔ) δύο θετικών ακέραιων αριθμών.

    • Ο ΜΚΔ είναι ο μεγαλύτερος αριθμός που διαιρεί και τους δύο αριθμούς ακριβώς.

  • Πώς λειτουργεί ο αλγόριθμος;

    • Βασίζεται στην ιδέα ότι:
      ΜΚΔ(x, y) = ΜΚΔ(y, x mod y)
      (όπου mod είναι το υπόλοιπο της διαίρεσης του x με το y).

    • Ο αλγόριθμος επαναλαμβάνει αυτή τη διαδικασία μέχρι να βρει τον ΜΚΔ.

  • Γιατί είναι σημαντικός;

    • Είναι γρήγορος και αποτελεσματικός.

    • Δείχνει ότι οι αλγόριθμοι μπορούν να λύσουν προβλήματα χωρίς την ανάγκη για υπολογιστές.

Άσκηση:

Να βρεθεί ο ΜΚΔ των αριθμών 512 και 120.

Λύση:

ΑΝΑΠΑΡΑΣΤΑΣΗ ΑΛΓΟΡΙΘΜΩΝ

 

Αλγόριθμος Ευκλείδη:

Ο βασικός σκοπός της σχεδίασης ενός αλγορίθμου είναι να μπορεί να εκτελεστεί από έναν υπολογιστή, ο οποίος μπορεί να εκτελέσει δισεκατομμύρια πράξεις το δευτερόλεπτο.

 

ΜΕΤΑΦΡΑΣΤΙΚΑ ΠΡΟΓΡΑΜΜΑΤΑ (Μεταγλωττιστές - Διερμηνείς)

Η Grace Hopper ήταν μια πρωτοπόρος της Πληροφορικής που έφτιαξε τον πρώτο μεταγλωττιστή και βοήθησε να δημιουργηθεί η πρώτη γλώσσα υψηλού επιπέδου η γλώσσα COBOL. Χάρη σε αυτήν, οι υπολογιστές έγιναν πιο εύκολοι στον προγραμματισμό! 

Πχ. Πρόγραμμα το οποίο προσθέτει όλους τους ακέραιους αριθμούς από 1 έως και 10.

 

 

Τι είναι το bytecode;

  • Σύγχρονες γλώσσες προγραμματισμού: Πολλές γλώσσες προγραμματισμού δημιουργούν έναν ενδιάμεσο κώδικα για μια νοητή μηχανή (virtual machine).
  • Σκοπός: Αυτό βοηθά να εκτελούνται τα προγράμματα σε διάφορους υπολογιστές και λειτουργικά συστήματα, χωρίς να εξαρτώνται από συγκεκριμένη πλατφόρμα.
  • Bytecode: Ο κώδικας αυτός λέγεται bytecode και χρησιμοποιείται σε γλώσσες όπως η Python για να μπορεί το πρόγραμμα να τρέχει παντού.
 

ΧΑΡΑΚΤΗΡΙΣΤΙΚΑ ΓΛΩΣΣΩΝ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ

Τι χρειάζεται για να γράψουμε ένα πρόγραμμα;

  • Χρειαζόμαστε ένα ολοκληρωμένο περιβάλλον προγραμματισμού, που περιλαμβάνει εργαλεία όπως:
      • Συντάκτης (Editor): Είναι ένα πρόγραμμα επεξεργασίας κειμένου με ειδικές λειτουργίες για να γράφουμε και να διορθώνουμε κώδικα.

      • Μεταφραστικό πρόγραμμα: Μεταφράζει τον κώδικα που γράψαμε σε γλώσσα μηχανής, ώστε ο υπολογιστής να τον εκτελέσει.
        • Μεταγλωττιστής (Compiler):

          • Μεταφράζει ολόκληρο το πρόγραμμα από τη γλώσσα προγραμματισμού σε γλώσσα μηχανής (ή bytecode) σε ένα βήμα, πριν ξεκινήσει η εκτέλεση.
          • Ελέγχει όλο το πρόγραμμα για συντακτικά λάθη πριν προχωρήσει στην παραγωγή του εκτελέσιμου προγράμματος.
          • Εάν βρει λάθη, δεν δημιουργεί το εκτελέσιμο πρόγραμμα και πρέπει να διορθωθούν πρώτα.
        • Διερμηνευτές (Interpreters):

          • Μεταφράζει και εκτελεί τον κώδικα εντολή-εντολή, κατά τη διάρκεια της εκτέλεσης του προγράμματος.
          • Ελέγχει το πρόγραμμα για λάθη κατά την εκτέλεση, και αν βρει κάποιο λάθος, σταματά την εκτέλεση στην εντολή που περιέχει το λάθος.

Σφάλματα στον προγραμματισμό:

  • Τα συντακτικά λάθη είναι σαν γραμματικά λάθη στον κώδικα και εμποδίζουν το πρόγραμμα να τρέξει.

  • Τα λογικά λάθη είναι σαν λάθη στη λογική του προγράμματος και κάνουν το πρόγραμμα να δίνει λάθος αποτέλεσμα, χωρίς να σταματάει. 
    Τα λογικά λάθη είναι πιο δύσκολα να βρεθούν και να διορθωθούν! 😊