Αποστολέας Θέμα: Κεφ. 2.2. Ενδεικτικές απαντήσεις Ερωτήσεων...Δραστηριοτήτων  (Αναγνώστηκε 4957 φορές)

Σπύρος Δουκάκης

  • Δεινόσαυρος
  • *****
  • Μηνύματα: 831
  • Έτερος εξ ετέρου σοφός, το τε πάλαι το τε νυν
    • http://sdoukakis.wordpress.com/
Στο http://introcsprinciples.wordpress.com/ δημοσιεύτηκαν ενδεικτικές απαντήσεις των Ερωτήσεων - Θεμάτων προς συζήτηση - Δραστηριοτήτων του Κεφαλαίου 2.2.

« Τελευταία τροποποίηση: 02 Νοέ 2014, 10:11:17 μμ από Σπύρος Δουκάκης »

tasospap

  • Βετεράνος
  • ****
  • Μηνύματα: 69
Καλησπέρα,

Για την άσκηση 23 (σελ. 52) του Κεφαλαίου 2, θα μπορούσε να δωθεί επίσης ενδεικτική λύση με χρήση Δομής Επιλογής.

Αλγόριθμος Άσκηση_23
Διάβασε Α
Α ← Α * 100 !για να μετατρέψουμε τον αριθμό σε ακέραιο
Πρώτο_Ψηφίο ← Α div 100
Τελευταία_2_Ψηφία ← Α mod 100
Αν Τελευταία_2_Ψηφία > 49 τότε Πρώτο_Ψηφίο ← Πρώτο_Ψηφίο + 1
Εμφάνισε Πρώτο_Ψηφίο
Τέλος Άσκηση_23

andreas_p

  • Ομάδα διαγωνισμάτων 2010
  • *
  • Μηνύματα: 1009
πλησιέστερος <- Α_Μ(Α+0,5)

Σπύρος Δουκάκης

  • Δεινόσαυρος
  • *****
  • Μηνύματα: 831
  • Έτερος εξ ετέρου σοφός, το τε πάλαι το τε νυν
    • http://sdoukakis.wordpress.com/
Ωραία! Οι δύο προτάσεις εντάχθηκαν στις ενδεικτικές λύσεις!

Παρατήρηση-Σχόλιο:

Η εντολή Αν <σ> τότε εντολή που υπήρχε στην ΑΕΠΠ, στο ΑΕΠΥ περιλαμβάνει Τέλος_αν, δηλαδή σε κάθε περίπτωση:

Αν <σ> τότε
   εντολή
Τέλος_αν

Καλησπέρα,

Για την άσκηση 23 (σελ. 52) του Κεφαλαίου 2, θα μπορούσε να δωθεί επίσης ενδεικτική λύση με χρήση Δομής Επιλογής.

Αλγόριθμος Άσκηση_23
Διάβασε Α
Α ← Α * 100 !για να μετατρέψουμε τον αριθμό σε ακέραιο
Πρώτο_Ψηφίο ← Α div 100
Τελευταία_2_Ψηφία ← Α mod 100
Αν Τελευταία_2_Ψηφία > 49 τότε Πρώτο_Ψηφίο ← Πρώτο_Ψηφίο + 1
Εμφάνισε Πρώτο_Ψηφίο
Τέλος Άσκηση_23
πλησιέστερος <- Α_Μ(Α+0,5)

ether

  • Επισκέπτης
Κάποια στιγμή θα πρέπει να τροποποιηθεί κι η εκφώνηση, αφού η εκφώνηση αναφέρει "...να διαβάζει έναν πραγματικό αριθμό..." ενώ οι ενδεικτικές λύσεις αφορούν σε θετικό πραγματικό αριθμό.
Ή να τροποποιηθεί η λύση ώστε να αντιστοιχεί στην εκφώνηση, δηλαδή να δουλεύει και για αρνητικούς πραγματικούς.
π.χ.
Κώδικας: [Επιλογή]
Αν Α >= 0 Τότε
    Ν <- Α_Μ(Α + 0.5)
Αλλιώς
    Ν <- Α_Μ(Α - 0.5)
Τέλος_Αν

Σπύρος Δουκάκης

  • Δεινόσαυρος
  • *****
  • Μηνύματα: 831
  • Έτερος εξ ετέρου σοφός, το τε πάλαι το τε νυν
    • http://sdoukakis.wordpress.com/
Done!

Κάποια στιγμή θα πρέπει να τροποποιηθεί κι η εκφώνηση, αφού η εκφώνηση αναφέρει "...να διαβάζει έναν πραγματικό αριθμό..." ενώ οι ενδεικτικές λύσεις αφορούν σε θετικό πραγματικό αριθμό.
Ή να τροποποιηθεί η λύση ώστε να αντιστοιχεί στην εκφώνηση, δηλαδή να δουλεύει και για αρνητικούς πραγματικούς.
π.χ.
Κώδικας: [Επιλογή]
Αν Α >= 0 Τότε
    Ν <- Α_Μ(Α + 0.5)
Αλλιώς
    Ν <- Α_Μ(Α - 0.5)
Τέλος_Αν


ether

  • Επισκέπτης
Για την άσκηση 24 (σελ. 52), θα μπορούσε να δοθεί και η εξής απάντηση που δε χρησιμοποιεί δομή επιλογής:
Κώδικας: [Επιλογή]
Υ <- Χ + 2 - ( Α_Τ(Χ) MOD 2 ) !οι παρενθέσεις θα μπορούσαν και να μη χρησιμοποιηθούν

sarakiniotis

  • Ομάδα Νέου Λυκείου
  • *
  • Μηνύματα: 184
Στην άσκηση 32
......
Μέχρις_ότου ΠΛΑ = 3 ή ΠΛ = 20       ! το ΠΛ = 20  γιατι χρειάζεται ???



Στην άσκηση 33
....................
Αν Α > 50 τότε
Σ ←Σ + 50                          ! το Σ ←Σ + 50   πρεπει να είναι Σ ←Σ + Α ??   
πλ ← πλ + 1
Τέλος_αν
 

Σπύρος Δουκάκης

  • Δεινόσαυρος
  • *****
  • Μηνύματα: 831
  • Έτερος εξ ετέρου σοφός, το τε πάλαι το τε νυν
    • http://sdoukakis.wordpress.com/
Done!

Στην άσκηση 32
......
Μέχρις_ότου ΠΛΑ = 3 ή ΠΛ = 20       ! το ΠΛ = 20  γιατι χρειάζεται ???



Στην άσκηση 33
....................
Αν Α > 50 τότε
Σ ←Σ + 50                          ! το Σ ←Σ + 50   πρεπει να είναι Σ ←Σ + Α ??   
πλ ← πλ + 1
Τέλος_αν
 


sarakiniotis

  • Ομάδα Νέου Λυκείου
  • *
  • Μηνύματα: 184