Ποιο κριτηριο δεν ικανοποιείται

Ξεκίνησε από andriana_oi, 27 Απρ 2010, 08:40:53 ΜΜ

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

andriana_oi

Καλησπέρα σε όλους!
Θα ήθελα να κάνω μια ερώτηση...
      η εντολή   ΕΜΦΑΝΙΣΕ Α+2    μέσα σε έναν αλγόριθμο, ποιο κριτήριο δεν ικανοποιεί; Την καθοριστικότητα ή την αποτελεσματικότητα;
     Ευχαριστώ προκαταβολικά :angel:

tom

Εμένα μια χαρά μου φαίνεται.

Αυτό που μπορεί να εννοεί ο ποιητής είναι ότι πρώτα πρέπει να γίνει η επεξεργασία:
Α<-Α+2
και μετά η έξοδος:
Εμφάνισε Α

Η μπορεί να εννοει ότι επειδή στην ψευδογλώσσα δε δηλώνουμε μεταβλητές το Α μπορεί να μην είναι αριθμητικού τύπου δεδομένων...

:-\

Δε ξέρω... οι υπόλοιποι βλέπουν κάποιο χοντρό λάθος;
Θωμάς Σκυλογιάννης

- Ζήσε σα να' ταν να πεθάνεις αύριο. Μάθε σα να' ταν να ζεις για πάντα.
                                                                                     Μαχάτμα Γκάντι

andriana_oi

Είναι από άσκηση σε βοήθημα και το ίδιο το βοήθημα δεν τη δίνει σαν λάθος, εμένα μου φαίνεται λάθος, σαν πιο άσχετη που είμαι.
Η άσκηση δίνει τον παρακάτω αλγόριθμο:
      Αρχή_Επανάληψης
      Α<-1
      Για Β από 1 μέχρι -1 με_βήμα -1
         Α<- Α + 3
      Τέλος_Επανάληψης
      Μέχρις_ότου Α = 15
      Εμφάνισε Α + 2

και ζητάει να βρεθούν τα κριτήρια που δεν ικανοποιεί. Το ένα είναι σίγουρα η περατότητα, μιας και η εντολή Α <- 1 βρίσκεται μέσα στο βρόχο της επανάληψης κι έτσι, μετά από 3 επαναλήψεις κάθε φορά, το Α παίρνει πάντα την τιμή 10. Αυτό δίνει και σαν απάντηση το ίδιο το βοήθημα.
Αλλά εμένα αυτό το Α + 2 στην εντολή εξοδου μου κάθεται στραβά. Πώς δουλεύει;

petrosp13

H καθοριστικότητα θα παραβιαστεί αν το Α δεν έχει τιμή
Το Α θα έχει τιμή οπωσδήποτε, εφόσον λαμβάνει την τιμή 1 πριν την επανάληψη, ανεξάρτητα από το τι θα γίνει στην επανάληψη
Δεν υπάρχει εντολή στην ΓΛΩΣΣΑ που να καταργεί μια τιμή από μια μεταβλητή και να την επαναφέρει στην κατάσταση πριν την εκκίνηση του προγράμματος
Αν μια μεταβλητή λάβει τιμή, θα έχει τιμή μέχρι το τέλος, πάει, τέλειωσε  :police:
Το "Εμφάνισε Α+2" δεν έχει λάθος, αν και δεν θα φτάσει ποτέ μέχρι εκεί
Παπαδόπουλος Πέτρος
Καθηγητής Πληροφορικής

andriana_oi

Οκ, το πιστεύω ότι δεν έχει λάθος και ότι δε φτάνει ποτέ εκεί. Αλλά σε περίπτωση που έφτανε εκεί , το "Εμφάνισε Α + 2" τι θα εμφάνιζε;
Συγγνώμη που επιμένω αλλά μου έχει κάνει εντύπωση...  :angel:

tom

Παράθεση από: andriana_oi στις 27 Απρ 2010, 09:21:48 ΜΜ
Είναι από άσκηση σε βοήθημα και το ίδιο το βοήθημα δεν τη δίνει σαν λάθος, εμένα μου φαίνεται λάθος, σαν πιο άσχετη που είμαι.
Η άσκηση δίνει τον παρακάτω αλγόριθμο:
      Αρχή_Επανάληψης
      Α<-1
      Για Β από 1 μέχρι -1 με_βήμα -1
         Α<- Α + 3
      Τέλος_Επανάληψης
      Μέχρις_ότου Α = 15
      Εμφάνισε Α + 2

και ζητάει να βρεθούν τα κριτήρια που δεν ικανοποιεί. Το ένα είναι σίγουρα η περατότητα, μιας και η εντολή Α <- 1 βρίσκεται μέσα στο βρόχο της επανάληψης κι έτσι, μετά από 3 επαναλήψεις κάθε φορά, το Α παίρνει πάντα την τιμή 10. Αυτό δίνει και σαν απάντηση το ίδιο το βοήθημα.
Αλλά εμένα αυτό το Α + 2 στην εντολή εξοδου μου κάθεται στραβά. Πώς δουλεύει;

To Εμφάνισε Α + 2 δουλεύει ως εξής:

1) Υπολογίζεται η τιμή της αριθμητικής έκφρασης Α+2, με βάση τη τρέχουσα τιμή της μεταβλητής Α (Η τιμή της Α δεν αλλάζει).
2) Η τιμή που υπολογίστηκε, εμφανίζεται στη προκαθορισμένη συσκευή εξόδου.

Αααααααααν έφτανε ποτέ εκεί θα εμφάνιζε τη τιμή 17. Δε φτάνει γιατί όταν ολοκληρώνεται η εσωτερική επανάληψη και το Α έχει την τιμή 10, η συνθήκη της εξωτερικής δομής επανάληψης είναι ψευδής, άρα συνεχίζεται η επανάληψη. Όμως το Α τότε παίρνει την τιμή 1 και φτου και απ' την αρχή  ;)
Θωμάς Σκυλογιάννης

- Ζήσε σα να' ταν να πεθάνεις αύριο. Μάθε σα να' ταν να ζεις για πάντα.
                                                                                     Μαχάτμα Γκάντι

andriana_oi

Μάλιστα! Ομολογώ ότι δε γνώριζα πως σε τέτοιες εντολές μπορούν να εκτελούνται και αριθμητικές πράξεις!!!  :-[
Σας ευχαριστώ πολύ!
:-*

tom

Παράθεση από: andriana_oi link=topic=2843α.msg25630#msg25630 date=1272393737
Μάλιστα! Ομολογώ ότι δε γνώριζα πως σε τέτοιες εντολές μπορούν να εκτελούνται και αριθμητικές πράξεις!!!  :-[
Σας ευχαριστώ πολύ!
:-*
Υπάρχει μια σχετική ασάφεια στο σχολικό βιβλίο. Επειδή όμως σε όλες τις γλώσσες προγραμματισμού, που γνωρίζω,  υλοποιείται αυτή η λειτουργικότητα είναι κοινά αποδεκτή και δε θεωρείται λάθος. Την υλοποιούν και οι γνωστοί διερμηνευτές ΓΛΩΣΣΑΣ και ψευδογλώσσας.
Θωμάς Σκυλογιάννης

- Ζήσε σα να' ταν να πεθάνεις αύριο. Μάθε σα να' ταν να ζεις για πάντα.
                                                                                     Μαχάτμα Γκάντι

Νίκος Αδαμόπουλος

Εγώ από την άλλη προσπαθώ να καταλάβω αυτό που λες: Είσαι μαθηματικός και τα παιδιά που πάνε ήδη φροντιστήριο σου ζήτησαν να τους κάνεις 2 δίωρα μαθήματα... Μιλάμε για το σχολείο; Τα παιδιά δεν κάνουν μάθημα ΑΕΠΠ στο σχολείο όλη τη χρονιά; Ποιος τους κάνει; Και γιατί αναφέρεις ότι κάνουν φροντιστήριο;  :D

gthal

Παράθεση από: tom στις 27 Απρ 2010, 09:37:20 ΜΜ
Αααααααααν έφτανε ποτέ εκεί θα εμφάνιζε τη τιμή 17. Δε φτάνει γιατί όταν ολοκληρώνεται η εσωτερική επανάληψη και το Α έχει την τιμή 10, η συνθήκη της εξωτερικής δομής επανάληψης είναι ψευδής, άρα συνεχίζεται η επανάληψη. Όμως το Α τότε παίρνει την τιμή 1 και φτου και απ' την αρχή  ;)
Άρα δεν ικανοποιεί το κριτήριο της περατότητας.
Φιλικά,
Γιώργος Θαλασσινός

Καρκαμάνης Γεώργιος

Παράθεση από: andriana_oi στις 27 Απρ 2010, 09:21:48 ΜΜ
Είναι από άσκηση σε βοήθημα και το ίδιο το βοήθημα δεν τη δίνει σαν λάθος, εμένα μου φαίνεται λάθος, σαν πιο άσχετη που είμαι.
Η άσκηση δίνει τον παρακάτω αλγόριθμο:
      Αρχή_Επανάληψης
      Α<-1
      Για Β από 1 μέχρι -1 με_βήμα -1
         Α<- Α + 3
      Τέλος_Επανάληψης
      Μέχρις_ότου Α = 15
      Εμφάνισε Α + 2

και ζητάει να βρεθούν τα κριτήρια που δεν ικανοποιεί. Το ένα είναι σίγουρα η περατότητα, μιας και η εντολή Α <- 1 βρίσκεται μέσα στο βρόχο της επανάληψης κι έτσι, μετά από 3 επαναλήψεις κάθε φορά, το Α παίρνει πάντα την τιμή 10. Αυτό δίνει και σαν απάντηση το ίδιο το βοήθημα.
Αλλά εμένα αυτό το Α + 2 στην εντολή εξοδου μου κάθεται στραβά. Πώς δουλεύει;

Πολύ σωστά δεν πληροί το κριτήριο της περατότητας καθώς δεν τερματίζει ποτέ ο εξωτερικός βρόχος
Η εντολή Εμφάνισε Α+2 δεν έχει κανένα πρόβλημα

Η εντολή Εμφάνισε Α+2 θα πραγματοποιούσε την πρόσθεση μεταξύ της τιμής της μεταβλητής Α και του αριμού 2 και το αποτέλεσμα θα εμφανίζονταν στηνοθόνη