Θεωρητική Άσκηση

Ξεκίνησε από semaphore, 27 Μαΐου 2021, 06:40:37 ΜΜ

« προηγούμενο - επόμενο »

semaphore

Καλησπέρα σε όλους,
Παραθέτω μία άσκηση συμπλήρωσης κενών. Οποιαδήποτε γνώμη και διόρθωση όπως πάντα είναι δεκτή.


sotos

απάντηση  από την άσκηση??
(Μαθητής) :laugh:

Γιαννούλης Γιώργος

semaphore, παρατηρώ ότι μέσα στα κενά (πχ στο Οσο) πρέπει να βάλουμε εκφράσεις, άρα πρέπει να αλλάξει η εκφώνηση. Επίσης με τη φυσιολογική ροη της λύσης δεν θα δουλέψει εάν δε δόσουμε πότε πάνω από ένα συνεχόμενο γιατί δεν θα μπει στο 1ο Αν. Τέλος δεν νομίζω ότι είναι σωστό να βάλουμε στο ΠΡ <- 1 στην αρχή, γιατί αν ο προηγούμενος είναι 1 θα μπορούσε να είναι είτε επειδή όντως ήταν το 1 που έδωσαν στην προηγούμενη επανάληψη ή είναι απλά η 1η επανάληψη που μπαίνουμε. Τέλος προσωπικά θα έβαζα στο εμφωλευμένο Αν ανάποδα τις 2 περιπτώσεις γιατί μου φαίνεται πιο 'καθαρός' κώδικας.
Πάντως για τελική λύση στα κενά που δίνονται νομίζω ότι η ακόλουθη κάνει τη δουλειά.

ΠΡΟΓΡΑΜΜΑ Α1
ΜΕΤΑΒΛΗΤΕΣ
  ΑΚΕΡΑΙΕΣ: ΠΛ_ΜΑΧ_ΣΥΝ, ΜΑΧ_ΣΥΝ, ΠΛ, ΠΡ, Χ
ΑΡΧΗ
  ΠΛ_ΜΑΧ_ΣΥΝ <- 0
  ΜΑΧ_ΣΥΝ <- 0                                                               !10
  ΠΛ <- 0
  ΠΡ <- 1
  ΔΙΑΒΑΣΕ Χ
  ΟΣΟ Χ > 0 ΕΠΑΝΑΛΑΒΕ                                                         !9
    ΑΝ Χ = ΠΡ Η ΜΑΧ_ΣΥΝ = 0 ΤΟΤΕ                                              !1
      ΠΛ <- ΠΛ + 1
      ΑΝ ΠΛ >= ΠΛ_ΜΑΧ_ΣΥΝ ΚΑΙ Χ > ΜΑΧ_ΣΥΝ ΤΟΤΕ                              !2 3
        ΠΛ_ΜΑΧ_ΣΥΝ <- ΠΛ                                                      !4
        ΜΑΧ_ΣΥΝ <- Χ
      ΑΛΛΙΩΣ_ΑΝ ΠΛ > ΠΛ_ΜΑΧ_ΣΥΝ ΤΟΤΕ
        ΠΛ_ΜΑΧ_ΣΥΝ <- ΠΛ
        ΜΑΧ_ΣΥΝ <- Χ                                                          !5
      ΤΕΛΟΣ_ΑΝ
      ΠΡ <- Χ                                                                 !6
    ΑΛΛΙΩΣ
      ΠΡ <- Χ
      ΠΛ <- 1                                                                 !7
    ΤΕΛΟΣ_ΑΝ
    ΔΙΑΒΑΣΕ Χ                                                                 !8
  ΤΕΛΟΣ_ΕΠΑΝΑΛΗΨΗΣ
  ΓΡΑΨΕ ΠΛ_ΜΑΧ_ΣΥΝ, ΜΑΧ_ΣΥΝ
ΤΕΛΟΣ_ΠΡΟΓΡΑΜΜΑΤΟΣ

semaphore

Παράθεση από: Γιαννούλης Γιώργος στις 29 Μαΐου 2021, 12:49:07 ΜΜ
semaphore, παρατηρώ ότι μέσα στα κενά (πχ στο Οσο) πρέπει να βάλουμε εκφράσεις, άρα πρέπει να αλλάξει η εκφώνηση. Επίσης με τη φυσιολογική ροη της λύσης δεν θα δουλέψει εάν δε δόσουμε πότε πάνω από ένα συνεχόμενο γιατί δεν θα μπει στο 1ο Αν. Τέλος δεν νομίζω ότι είναι σωστό να βάλουμε στο ΠΡ <- 1 στην αρχή, γιατί αν ο προηγούμενος είναι 1 θα μπορούσε να είναι είτε επειδή όντως ήταν το 1 που έδωσαν στην προηγούμενη επανάληψη ή είναι απλά η 1η επανάληψη που μπαίνουμε. Τέλος προσωπικά θα έβαζα στο εμφωλευμένο Αν ανάποδα τις 2 περιπτώσεις γιατί μου φαίνεται πιο 'καθαρός' κώδικας.
Πάντως για τελική λύση στα κενά που δίνονται νομίζω ότι η ακόλουθη κάνει τη δουλειά.

ΠΡΟΓΡΑΜΜΑ Α1
ΜΕΤΑΒΛΗΤΕΣ
  ΑΚΕΡΑΙΕΣ: ΠΛ_ΜΑΧ_ΣΥΝ, ΜΑΧ_ΣΥΝ, ΠΛ, ΠΡ, Χ
ΑΡΧΗ
  ΠΛ_ΜΑΧ_ΣΥΝ <- 0
  ΜΑΧ_ΣΥΝ <- 0                                                               !10
  ΠΛ <- 0
  ΠΡ <- 1
  ΔΙΑΒΑΣΕ Χ
  ΟΣΟ Χ > 0 ΕΠΑΝΑΛΑΒΕ                                                         !9
    ΑΝ Χ = ΠΡ Η ΜΑΧ_ΣΥΝ = 0 ΤΟΤΕ                                              !1
      ΠΛ <- ΠΛ + 1
      ΑΝ ΠΛ >= ΠΛ_ΜΑΧ_ΣΥΝ ΚΑΙ Χ > ΜΑΧ_ΣΥΝ ΤΟΤΕ                              !2 3
        ΠΛ_ΜΑΧ_ΣΥΝ <- ΠΛ                                                      !4
        ΜΑΧ_ΣΥΝ <- Χ
      ΑΛΛΙΩΣ_ΑΝ ΠΛ > ΠΛ_ΜΑΧ_ΣΥΝ ΤΟΤΕ
        ΠΛ_ΜΑΧ_ΣΥΝ <- ΠΛ
        ΜΑΧ_ΣΥΝ <- Χ                                                          !5
      ΤΕΛΟΣ_ΑΝ
      ΠΡ <- Χ                                                                 !6
    ΑΛΛΙΩΣ
      ΠΡ <- Χ
      ΠΛ <- 1                                                                 !7
    ΤΕΛΟΣ_ΑΝ
    ΔΙΑΒΑΣΕ Χ                                                                 !8
  ΤΕΛΟΣ_ΕΠΑΝΑΛΗΨΗΣ
  ΓΡΑΨΕ ΠΛ_ΜΑΧ_ΣΥΝ, ΜΑΧ_ΣΥΝ
ΤΕΛΟΣ_ΠΡΟΓΡΑΜΜΑΤΟΣ


Ευχαριστώ πολύ για τις  παρατηρήσεις. Ανέβασα μία λύση που θεωρώ ότι είναι σωστή. Θα κοιτάξω φυσισκά και να δω αν είναι σωστή και θα επανέλθω με διορθώσεις αν χρειάζεται.