Αποστολέας Θέμα: Θεωρητική Άσκηση  (Αναγνώστηκε 866 φορές)

semaphore

  • Οπαδός
  • **
  • Μηνύματα: 18
Θεωρητική Άσκηση
« στις: 27 Μαΐ 2021, 06:40:37 μμ »
Καλησπέρα σε όλους,
Παραθέτω μία άσκηση συμπλήρωσης κενών. Οποιαδήποτε γνώμη και διόρθωση όπως πάντα είναι δεκτή.

« Τελευταία τροποποίηση: 03 Ιουν 2021, 06:58:45 πμ από semaphore »

sotos

  • Νέος
  • *
  • Μηνύματα: 2
Απ: Θεωρητική Άσκηση
« Απάντηση #1 στις: 29 Μαΐ 2021, 12:20:20 πμ »
απάντηση  από την άσκηση??
(Μαθητής) :laugh:

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

  • Βετεράνος
  • ****
  • Μηνύματα: 85
Απ: Θεωρητική Άσκηση
« Απάντηση #2 στις: 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
  ΤΕΛΟΣ_ΕΠΑΝΑΛΗΨΗΣ
  ΓΡΑΨΕ ΠΛ_ΜΑΧ_ΣΥΝ, ΜΑΧ_ΣΥΝ
ΤΕΛΟΣ_ΠΡΟΓΡΑΜΜΑΤΟΣ

semaphore

  • Οπαδός
  • **
  • Μηνύματα: 18
Απ: Θεωρητική Άσκηση
« Απάντηση #3 στις: 03 Ιουν 2021, 07:01:48 πμ »
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
  ΤΕΛΟΣ_ΕΠΑΝΑΛΗΨΗΣ
  ΓΡΑΨΕ ΠΛ_ΜΑΧ_ΣΥΝ, ΜΑΧ_ΣΥΝ
ΤΕΛΟΣ_ΠΡΟΓΡΑΜΜΑΤΟΣ


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