Θέμα Γ

Ξεκίνησε από gpapargi, 29 Μαΐου 2013, 10:20:08 ΠΜ

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

gpapargi

Εδώ μιλάμε για θέμα Γ

katif

#1
Μια πρόταση για το Γ3
ΓΙΑ ι ΑΠΟ 1 ΜΕΧΡΙ 30
      ΑΝ 2*ΜΟ[ι,1]>ΜΟ[ι,2] ΤΟΤΕ
          ΜΑΧ<-- 2*ΜΟ[ι,1]
     ΑΛΛΙΩΣ
         ΜΑΧ<--ΜΟ[ι,2]
    ΤΕΛΟΣ_ΑΝ

   ΑΝ ΜΑΧ<=3,6 ΤΟΤΕ
       ΓΡΑΨΕ 'Χαμηλός SAR'
   AΛΛΙΩΣ_ΑΝ ΜΑΧ<=4 ΤΟΤΕ
       ΓΡΑΨΕ 'Κοντά στα όρια'
   ΑΛΛΙΩΣ
       ΓΡΑΨΕ 'Έκτος ορίων'
   ΤΕΛΟΣ_ΑΝ
ΤΕΛΟΣ_ΕΠΑΝΑΛΗΨΗΣ
Κατηφόρης Παναγιώτης
Καθηγητής Πληροφορικής - Μαθηματικός

manosteach

#2
Κατά την γνώμη μου το παράδειγμα που δίνει είναι άστοχο και θα μπερδέψει πολύ τους μαθητές.
Θα έπρεπε να το θέσει ανάποδα.
ΜΟ SAR  άκρων 1.9 και ΜΟ SAR  κεφαλής 3.4 τότε κοντά στα όρια.
Εκτός και αν εγώ δεν κατάλαβα κάτι σωστά
Δωρεάν online μαθήματα μέσω internet.
http://www.manosteach.com

Βασίλης Παπαχρήστος

#3
Μία άλλη προσέγγιση για το Γ3 είναι η εξής:

Για i από 1 μέχρι 30
  Εμφάνισε ΚΩΔ[ i ]
  Αν ΜΟ[i,1] <= 1.8 και ΜΟ[i,2] <= 3.6 τότε
    Εμφάνισε "Χαμηλός SAR"
  Αλλιώς_αν ΜΟ[i,1] <= 2 και ΜΟ[i,2] <= 4 τότε
    Εμφάνισε "Κοντά στα όρια"
  Αλλιώς
    Εμφάνισε "Εκτός ορίων"
  Τέλος_αν
Τέλος_επανάληψης

petrosp13

Δεν νομίζω ότι δουλεύει το παραπάνω..
Παπαδόπουλος Πέτρος
Καθηγητής Πληροφορικής

gthal

Το Γ3 είναι πολύ ασαφές.
Τι σημαίνει "μεγαλύτερη περιοχή τιμών" ;
Εγώ προσωπικά το καταλαβαίνω ως την περιοχή με το μεγαλύτερο εύρος.
Το παράδειγμα που δίνεται βέβαια δεν με επιβεβαιώνει.
Πολύ ατυχής διατύπωση  :(
Φιλικά,
Γιώργος Θαλασσινός

soc_h

Το Γ3 νομίζω πως "βγαίνει" απλά:

!ΕΡΩΤΗΜΑ Γ3

Για Ι από 1 μέχρι 30
  Αν ΜΟ[Ι,1]>(ΜΟ[Ι,2]/2) τότε     ! ΕΛΕΓΧΟΣ ΑΝ ΤΟ ΚΕΦΑΛΙ ΒΓΑΖΕΙ ΠΕΡΙΣΣΟΤΕΡΟ SAR
    Αν ΜΟ[Ι, 1] ≤ 1.8 τότε
      εμφάνισε "ΧΑΜΗΛΟΣ SAR"
    αλλιώς_αν ΜΟ[Ι,1] ≤ 2 τότε
      εμφάνισε "ΚΟΝΤΑ ΣΤΑ ΟΡΙΑ"
    αλλιώς
      εμφάνισε "ΕΚΤΟΣ ΟΡΙΩΝ"
    Τέλος_αν
  αλλιώς
    Αν ΜΟ[Ι,2] ≤ 3.6 τότε
      εμφάνισε "ΧΑΜΗΛΟΣ SAR"
    αλλιώς_αν ΜΟ[Ι,2] <= 4 τότε
      εμφάνισε "ΚΟΝΤΑ ΣΤΑ ΟΡΙΑ"
    αλλιώς
      εμφάνισε "ΕΚΤΟΣ ΟΡΙΩΝ"
  Τέλος_αν
Τέλος_επανάληψης


Συμφωνείτε;
Σωκράτης

petrosp13

Αν ΜΟ[ι,1] > 2 ή ΜΟ[ι,2] > 4 τότε
   Εμφάνισε ...
Αλλιώς_Αν (ΜΟ[ι,1] > 1.8) ή (ΜΟ[ι,2] > 3.6) τότε
  Εμφάνισε ...
Αλλιώς
  Εμφάνισε ...
Τέλος_Αν
Παπαδόπουλος Πέτρος
Καθηγητής Πληροφορικής

lsourtzo

Παράθεση από: petrosp13 στις 29 Μαΐου 2013, 02:10:37 ΜΜ
Αν ΜΟ[ι,1] > 2 ή ΜΟ[ι,2] > 4 τότε
   Εμφάνισε ...
Αλλιώς_Αν (ΜΟ[ι,1] > 1.8) ή (ΜΟ[ι,2] > 3.6) τότε
  Εμφάνισε ...
Αλλιώς
  Εμφάνισε ...
Τέλος_Αν


Νομίζω η ποιο σύντομη και σωστή λύση ...
αλλά υπάρχουν πάρα πολλές δυνατές λύσεις σε αυτό το ερώτημα ... νομίζω ότι θα τα χρειαστούν οι διορθωτές ...

soc_h

Σωκράτης

Βασίλης Παπαχρήστος

Παράθεση από: petrosp13 στις 29 Μαΐου 2013, 01:49:54 ΜΜ
Δεν νομίζω ότι δουλεύει το παραπάνω..
Μπορείς να γίνεις πιο σαφής;

petrosp13

Το σκεπτικό είναι ότι αφού τα μεγαλύτερα υπερισχύουν, ξεκινάμε από τα μεγαλύτερα και βρίσκουμε αν υπάρχει τουλάχιστον ένας από τους 2 αριθμούς εκεί και μετά κατεβαίνουμε αποκλείοντας τα μεγαλύτερα...

(Αυτό πάει στον δικό μου τρόπο)

Παράθεση από: Βασίλης Παπαχρήστος στις 29 Μαΐου 2013, 02:30:13 ΜΜ
Μπορείς να γίνεις πιο σαφής;

Ο κώδικας αυτός παίρνει τις τομές μόνο των συνόλων, δηλαδή αν ΚΑΙ οι δυο τιμές είναι στο ίδιο διάστημα
Δεν λαμβάνει υπόψιν αν είναι σε διαφορετικά διαστήματα..
Π.χ. δοκίμασε τις τιμές 1.6 και 3.8
Παπαδόπουλος Πέτρος
Καθηγητής Πληροφορικής

amanou

#12
Μια γρήγορη απάντηση και από εμένα όσο αφορά το Γ3:

Για i από 1 μέχρι 30
  Εμφάνισε ΚΩΔ[ i ]
  Αν ΜΟ[i,1] > 2 ή ΜΟ[i,2] > 4 τότε
    Εμφάνισε "Εμφάνισε εκτός ορίων"
  Αλλιώς_αν ΜΟ[i,1] <= 1.8 και ΜΟ[i,2] <= 3.6 τότε
    Εμφάνισε "Χαμηλός SAR"
  Αλλιώς
    Εμφάνισε "Κοντά στα όρια"
  Τέλος_αν
Τέλος_επανάληψης


Θεωρώντας βέβαια ότι λέγοντας μεγαλύτερη περιοχή τιμών εννοούμε την πιο επιβλαβή για το άτομο περιοχή, κάτι που έπρεπε να διατυπωθεί καλύτερα

Όσο αφορά το Γ4 χωρίς να χρειαστεί να χρησιμοποιηθέι νέος πίνακας :

Για i από 2 μέχρι 30
  Για j από 30 μέχρι i με_βήμα -1
     Αν ΜΟ[j-1,1]<ΜΟ[j,1] τότε
           Αντιμετάθεσε ΜΟ[j-1,1]<ΜΟ[j,1]
           Αντιμετάθεσε ΜΟ[j-1,2]<ΜΟ[j,2]
           Αντιμετάθεσε ΚΩΔ[j-1]< ΚΩΔ[j] 
    τέλος_αν
  τέλος_επανάληψης
τέλος_επανάληψης
Για i από 1 μέχρι 3
  εμφάνισε ΚΩΔ [ i ],  ΜΟ[i,1]
τέλος_επανάληψης

Για i από 2 μέχρι 30
  Για j από 30 μέχρι i με_βήμα -1
     Αν ΜΟ[j-1,2]<ΜΟ[j,2] τότε
           Αντιμετάθεσε ΜΟ[j-1,1]<ΜΟ[j,1]
           Αντιμετάθεσε ΜΟ[j-1,2]<ΜΟ[j,2]
           Αντιμετάθεσε ΚΩΔ[j-1]< ΚΩΔ[j] 
    τέλος_αν
  τέλος_επανάληψης
τέλος_επανάληψης
Για i από 1 μέχρι 3
  εμφάνισε ΚΩΔ[ i ],  ΜΟ[i,2]
τέλος_επανάληψης


Αντώνης Μανουσάκης

Ηλεκτρονικός και Μηχανικός Η/Υ

Βασίλης Παπαχρήστος

Παράθεση από: petrosp13 στις 29 Μαΐου 2013, 02:30:27 ΜΜ
Το σκεπτικό είναι ότι αφού τα μεγαλύτερα υπερισχύουν, ξεκινάμε από τα μεγαλύτερα και βρίσκουμε αν υπάρχει τουλάχιστον ένας από τους 2 αριθμούς εκεί και μετά κατεβαίνουμε αποκλείοντας τα μεγαλύτερα...

(Αυτό πάει στον δικό μου τρόπο)

Ο κώδικας αυτός παίρνει τις τομές μόνο των συνόλων, δηλαδή αν ΚΑΙ οι δυο τιμές είναι στο ίδιο διάστημα
Δεν λαμβάνει υπόψιν αν είναι σε διαφορετικά διαστήματα..
Π.χ. δοκίμασε τις τιμές 1.6 και 3.8
Εξακολουθώ να μην καταλαβαίνω τι εννοείς. Δοκίμασα τις τιμές που προτείνεις και μια χαρά δουλεύει ο κώδικας.
Αν ΜΟ[i,1] <= 1.8 και ΜΟ[i,2] <= 3.6 τότε
    Εμφάνισε "Χαμηλός SAR"
  Αλλιώς_αν ΜΟ[i,1] <= 2 και ΜΟ[i,2] <= 4 τότε
    Εμφάνισε "Κοντά στα όρια"
  Αλλιώς
    Εμφάνισε "Εκτός ορίων"
  Τέλος_αν

soc_h

Θέλει έλεγχο...
Σωκράτης