Άσκηση 2 - readln - μεταβλητές

  1. ΔΗΜΙΟΥΡΓΙΑ ΕΡΓΟΥ - Θα δημιουργήσουμε το νέο έργο systaseis
    1. Κάνουμε όμοιες ενέργειες με την προηγούμενη Άσκηση όπου hello τώρα ο τίτλος είναι systaseis
  2. ΕΝΤΟΛΕΣ
    1. Ανάμεσα στο BEGIN .. END. τοποθετούνται οι εντολές του προγράμματος.
    2. Εμφανίζουμε το μήνυμα Πως σε λένε; με την εντολή που μάθαμε στην προηγούμενη άσκηση
    3. Στην συνέχεια ζητάμε από τον χρήστη να πληκτρολογήσει κάτι που θα το αποθηκεύσουμε στην μεταβλητή onoma. Η εντολή είναι readln(onoma);
    4. Τέλος με την παρακάτω εντολή θα εμφανίσουμε ένα μήνυμα μαζί με το όνομα που μας έδωσε ακριβώς πριν ο χρήστης. Η εντολή είναι writeln('Γεια σου', onoma);
  3. ΜΕΤΑΓΛΩΤΤΙΣΗ / ΕΚΤΕΛΕΣΗ
    1. Πηγαίνουμε Build/Μεταγλώττιση ή F8 για να δημιουργηθεί από το systaseis.pas σε pascal το εκτελέσιμο πρόγραμμα systaseis.exe (στα Windows) ή systaseis (στο Linux) σε γλώσσα μηχανής
    2. Η μεταγλώττιση απέτυχε! Μας βγάζει μήνυμα Αποτυχία μεταγλώττισης μαζί με τον λόγο Error : Identifier not found “onoma”.
    3. Βλέπουμε τι σημαίνει αυτό στα Μηνύματα Λάθους
    4. Είναι η β) περίπτωση. Προσπαθήσαμε να χρησιμοποιήσουμε την μεταβλητή onoma χωρίς να την έχουμε ορίσει στο var
    5. Κάθε μεταβλητή πρέπει να ορίζεται στο var ώστε να γνωρίζει ο υπολογιστής αν θα αποθηκεύσει σε αυτήν κείμενο, αριθμό ή κάτι άλλο. Την ορίζουμε κάτω από το var, γράφοντας onoma : string;
    6. Ξαναπροσπαθούμε να κάνουμε μεταγλώττιση και εκτέλεση.
  4. ΔΙΟΡΘΩΣΕΙΣ / ΑΛΛΑΓΕΣ
    1. Βλέπουμε ότι μας υπογραμμίζεται η δήλωση var i : byte; Και στα μυνήματα μεταγλώττισης εμφανίζεται Note: Local variable “i” not used
    2. Βλέπουμε τι σημαίνει αυτό στα Μηνύματα Λάθους
    3. Είναι η α) περίπτωση. Ορίσαμε μια μεταβλητή στο var αλλά δεν την χρησιμοποιούμε οπότε μπορούμε να την διαγράψουμε από το var
    4. Η μεταβλητή i τύπου byte (μικρός ακέραιος) ορίστηκε μόνη της από το geany και δεν χρειάζεται. Διαγράφουμε το i : byte;. ΠΡΟΣΟΧΗ δεν διαγράφουμε το var είναι προσδιοριστικό για τις δηλώσεις.
    5. Ξανακάνουμε μεταγλώττιση και εκτέλεση. Βλέπουμε ότι το Γεια σου είναι κολλητά με το όνομα. Κάντε μια αλλαγή στον κώδικα για να ξεκολλήσουν.
    6. Προσθέστε στην ίδια γραμμή μετά το κείμενο Γεια σου και την μεταβλητή onoma, το κείμενο . Χάρηκα για την γνωριμία.
  5. ΠΡΟΣΘΗΚΕΣ
    1. Ωραία μάθαμε το όνομα του χρήστη, είμαστε περίεργοι να μάθουμε όμως και την ηλικία. Προσθέστε τον κατάλληλο κώδικα.
    2. Δηλαδή δώστε ένα όνομα στην μεταβλητή που θα αποθηκεύσουμε την ηλικία π.χ. ilikia και να είναι τύπου integer.
    3. Βάλτε τις εντολές στον κώδικα που θα ρωτάει τον χρήστη την ηλικία του, θα διαβάζει από το πληκτρολόγιο και θα εμφανίζει τέλος το μήνυμα Είσαι (ηλικία) χρονών. Εγώ είμαι μόλις 3, όπου ηλικία θα μπει η τιμή της μεταβλητής που έβαλε ο χρήστης.
  6. ΕΝΤΟΛΗ write
    1. Η εντολή writeln έχει το χαρακτηριστικό ότι αφού εμφανίσει το μήνυμά της αλλάζει γραμμή. Κάποιες φορές όμως θέλουμε να παραμείνουμε στην ίδια γραμμή π.χ. ώστε να γράψει ο χρήστης το όνομά του δίπλα από το κείμενο Πως σε λένε; και όχι από κάτω. Ομοίως και όταν τον ρωτάμε την ηλικία του. Κάντε τις αλλαγές από writeln σε write στις 2 ερωτήσεις. ΠΡΟΣΟΧΗ! Μην κολλήσετε την απάντηση με την ερώτηση.