Πέμπτη, 29 Μαΐου 2014

Επεξεργασία παράλληλων μονοδιάστατων πινάκων

Στη Γ τάξη ενός ΓΕΛ φοιτούν 140 μαθητές. Γράψτε
αλγόριθμο που με δεδομένο τον πίνακα ΟΝ[140]
που περιέχει τα ονοματεπώνυμα των μαθητών,
τον πίνακα  ΦΥΛΟ[140] που περιέχει το φύλο
τους (Αληθής - αγόρι, Ψευδής - κορίτσι) και τον
πίνακα ΚΑΤ[140] που περιέχει τις κατευθύνσεις
τους, εμφανίζει:
α) τα ονοματεπώνυμα των αγοριών της τεχνολογικής
    κατεύθυνσης,
β) τα ονοματεπώνυμα των κοριτσιών της θετικής
    κατεύθυνσης,
γ) τα ονοματεπώνυμα των μαθητών της θεωρητικής
    κατεύθυνσης.
Θεωρείστε ότι σε κάθε κατεύθυνση φοιτά τουλάχιστον
ένα αγόρι και ένα κορίτσι.

Λύση

Αλγόριθμος ΓΕΛ
Δεδομένα // ΟΝ, ΦΥΛΟ, ΚΑΤ //
Εμφάνισε 'Ονοματεπώνυμα αγοριών τεχνολογικής'
Για κ από 1 μέχρι 140
    Αν (ΚΑΤ[κ] = 'Τεχνολογική') ΚΑΙ 
          (ΦΥΛΟ[κ] = Αληθής) τότε
          Εμφάνισε ΟΝ[κ]
    Τέλος_αν
Τέλος_επανάληψης
Εμφάνισε 'Ονοματεπώνυμα κοριτσιών θετικής'
Για κ από μέχρι 140
    Αν (ΚΑΤ[κ] = 'Θετική') ΚΑΙ 
          (ΦΥΛΟ[κ] = Ψευδής) τότε
          Εμφάνισε ΟΝ[κ]
    Τέλος_αν
Τέλος_επανάληψης
Εμφάνισε 'Ονοματεπώνυμα μαθητών θεωρητικής'
Για κ από μέχρι 140
    Αν ΚΑΤ[κ] = 'Θεωρητική'  τότε
          Εμφάνισε ΟΝ[κ]
    Τέλος_αν
Τέλος_επανάληψης
Τέλος ΓΕΛ

Συγγραφή διαδικασίας

Γράψτε διαδικασία που εμφανίζει όλα τα στοιχεία
του ακέραιου πίνακα Α[12, 14] που είναι θετικά,
και πολλαπλάσια του 8 αλλά όχι του 24.

Λύση

ΔΙΑΔΙΚΑΣΙΑ ΦΙΛΤΡΟ(Α)
ΜΕΤΑΒΛΗΤΕΣ
      ΑΚΕΡΑΙΕΣ: Α[12, 14], Κ, Λ
ΑΡΧΗ
      ΓΙΑ Κ ΑΠΟ 1 ΜΕΧΡΙ 12
          ΓΙΑ Λ ΑΠΟ 1 ΜΕΧΡΙ 14
               ΑΝ (Α[Κ, Λ] > 0) KAI (Α[Κ, Λ] MOD 8 = 0)
                      KAI (Α[Κ, Λ] MOD 24  < >  0) TOTE
                     ΓΡΑΨΕ Α[Κ, Λ]
               ΤΕΛΟΣ_ΑΝ
          ΤΕΛΟΣ_ΕΠΑΝΑΛΗΨΗΣ
      ΤΕΛΟΣ_ΕΠΑΝΑΛΗΨΗΣ
ΤΕΛΟΣ_ΔΙΑΔΙΚΑΣΙΑΣ

Σάββατο, 24 Μαΐου 2014

Συγγραφή διαδικασίας


Απάντηση σε ερώτηση+Ταξινόμηση


Επεξεργασία δοσμένου πλήθους τιμών


Έξοδος αποτελεσμάτων

Τι θα εμφανίσει  το παρακάτω σύνολο εντολών
   Για κ από 120 μέχρι 90 με_βήμα -40
       Για λ από 4 μέχρι 12 με_βήμα 17
            Για μ από κ+λ μέχρι 124 με_βήμα 2014
                 Εμφάνισε κ*λ+μ
            Τέλος_επανάληψης
       Τέλος_επανάληψης
   Τέλος_επανάληψης

Λύση

Η εξωτερική Για εκτελείται μόνο για κ = 120,
η εσωτερική Για εκτελείται μόνο για λ = 4
και η πιο εσωτερική Για εκτελείται μόνο για
κ+λ = 120+4 = 124. Κατά συνέπεια η
Εμφάνισε θα εκτελεστεί μόνο μια φορά
και αφού κ*λ+μ = 120*4+124 = 604, στη
μονάδα εξόδου θα εμφανιστεί: 604

Παρασκευή, 9 Μαΐου 2014

Έλεγχος αλγοριθμικών κριτηρίων

Ποιο ή ποια αλγοριθμικά κριτήρια παραβιάζονται
στον παρακάτω "αλγόριθμο";
   Αλγόριθμος Ασκ
   Για κ από 1 μέχρι Υ
         Διάβασε Χ
         Εμφάνισε 1/(Χ-8)
   Τέλος_επανάληψης
   Τέλος Ασκ

Απάντηση

α) εισόδου, γιατί το Υ δεν παίρνει από πουθενά
     τιμή.
β) καθοριστικότητα, γιατί αν Χ = 8, η εντολή
    εξόδου δεν μπορεί να εκτελεστεί (απροσδιόριστη
    μορφή).

Διόρθωση λανθασμένων προτάσεων

Διορθώστε τις παρακάτω λανθασμένες προτάσεις και
επαναδιατυπώστε τις με σωστό τρόπο.
1. Το ελεύθερο κείμενο κινδυνεύει να παραβιάσει
    το αλγοριθμικό κριτήριο της εισόδου.
2. Η εμβέλεια των ονομάτων ενός υποπρογράμματος
    είναι καθολική.
3. Η δομή ενός προβλήματος καταγράφεται κατά το
    στάδιο της επίλυσης.
4. Απαγορεύεται η χρήση των εντολών ΓΡΑΨΕ και
    ΔΙΑΒΑΣΕ μέσα σε μια διαδικασία.
5. Ένας πίνακας αλφαριθμητικού τύπου δεν μπορεί
    να ταξινομηθεί.



Απαντήσεις

1. Το ελεύθερο κείμενο κινδυνεύει να παραβιάσει
    το αλγοριθμικό κριτήριο της αποτελεσματικότητας.
2. Η εμβέλεια των ονομάτων ενός υποπρογράμματος
    είναι τοπική.
3. Η δομή ενός προβλήματος καταγράφεται κατά το
    στάδιο της ανάλυσης.
4. Απαγορεύεται η χρήση των εντολών ΓΡΑΨΕ και
    ΔΙΑΒΑΣΕ μέσα σε μια συνάρτηση.
5. Ένας πίνακας λογικού τύπου δεν μπορεί
    να ταξινομηθεί.

Ερωτήσεις πολλαπλής επιλογής

Επιλέξτε τη σωστή απάντηση.

1. Ένα πρόβλημα απόφασης
     Α. μπορεί να είναι άλυτο
     Β. είναι πάντοτε επιλύσιμο
     Γ. μπορεί να έχει προφανή λύση
     Δ. είναι σίγουρα και δομημένο

2. Αν χρησιμοποιήσουμε φυσική γλώσσα κατά βήματα
    για τη συγγραφή ενός αλγορίθμου, κινδυνεύουμε να
    παραβιάσουμε το κριτήριο της:
    Α. αποτελεσματικότητας
    Β. καθοριστικότητας
    Γ. περατότητας
    Δ. εξόδου

3. Μια δομή επανάληψης
    Α. εκτελείται τουλάχιστον μια φορά
    Β. είναι ιδανική για την εύρεση του μεγίστου
        δύο αριθμών
    Γ. χρησιμοποιείται σπάνια σε επεξεργασίες
        πινάκων
    Δ. αποκαλείται και βρόχος

4. Οι στατικές δομές δεδομένων
    Α. αποθηκεύονται στη δευτερεύουσα μνήμη
    Β. κάνουν δυναμική διαχείριση της κύριας μνήμης
    Γ. είναι δυσκολότερες στη χρήση τους από τις
        δυναμικές δομές
    Δ. περιορίζουν τις δυνατότητες των προγραμματιστών.

Απάντηση

1. Α
2. Β
3. Δ
4. Δ


    

Ερωτήσεις σωστού-λάθους

Ποιες από τις παρακάτω προτάσεις είναι σωστές και
ποιες λάθος;
1. Ο οπτικός προγραμματισμός απαιτεί τη χρήση μιας
    συμβολικής γλώσσας προγραμματισμού.
2. Τα αρχεία εγγραφών είναι δυναμικές δομές
     δεδομένων της δευτερεύουσας μνήμης.
3. Ο πίνακας Α[4, 4, 4] είναι τετραγωνικός.
4. Το πρόβλημα υπολογισμού της περιμέτρου
    ενός ρόμβου είναι δομημένο.
5. Μια συνάρτηση μπορεί να μην έχει καθόλου
    παραμέτρους.

Απαντήσεις

1. Λ
2. Σ
3. Λ
4. Σ
5. Σ