Τώρα είναι Πέμ 28 Μαρ 2024 11:08 am

Όλοι οι χρόνοι είναι UTC + 2 ώρες [ DST ]




Δημιουργία νέου θέματος Απαντήστε στο θέμα  [ 3 Δημοσιεύσεις ] 
Συγγραφέας Μήνυμα
ΔημοσίευσηΔημοσιεύτηκε: Πέμ 27 Μαρ 2008 12:50 pm 
Χωρίς σύνδεση

Εγγραφή: Τρί 11 Μαρ 2008 05:28 pm
Δημοσιεύσεις: 4
οποιος εχει την διαθεση να λυσει το παρακατω προβλημα θα βοηθουσε πολυ!
Ευχαριστω!

Syntax: [ Download ] [ Hide ]
Σ'ενα διαγωνισμο συμμετεχουν 100 υποψηφιοι.Καθε ενας διαγωνιζεται σε 50 ερωτησεις πολλαπλης επιλογης.Να αναπτυξετε αλγοριθμο που να κανει τα παρακατω :

Α) να καταχωρει σε πινακα ΑΠ[100,50] τα αποτελεσματα των απαντησεων του καθε υποψηφιου σε καθε ερωτηση.Καθε καταχωρηση μπορει να ειναι μονο μια απο τις παρακατω:
ι) Σ αν ειναι σωστη η απαντηση
ιι) Λ αν ειναι λανθασμενη η απαντηση
ιιι) Ξ αν ο υποψηφιος δεν απαντησε
Να γινεται ελεγχος των δεδομενων εισοδου!

Β) να βρισκει και να τυπωνει τους αριθμους των ερωτησεων που παρουσιαζουν το μεγαλυτερο βαθμο δυσκολιας,δηλαδη εχουν το μικροτερο πληθος σωστον απαντησεων

Γ) αν καθε Σ βαθμολογειται με 2 μοναδεσ,καθε Λ με -1 μοναδα και καθε Ξ με 0 μοναδες τοτε:
ι) να δημιουργει ενα μονοδιαστατο πινακα ΒΑΘ[100],καθε στοιχειο του οποιου θα περιεχει αντιστοιχα τη συνολικη βαθμολογια ενος υποψηφιου.
ιι) να τυπωνει το πληθος υποψηφιων που συγκεντρωσαν βαθμολογια μεγαλυτερη απο 50!


ΤΕΛΟΣ! Δυσκολο ε? :lol:


Κορυφή
 Προφίλ  
Απάντηση με παράθεση  
ΔημοσίευσηΔημοσιεύτηκε: Πέμ 27 Μαρ 2008 03:38 pm 
Χωρίς σύνδεση

Εγγραφή: Τρί 11 Μαρ 2008 05:28 pm
Δημοσιεύσεις: 4
α οριστε και η λυση! την εκανα αλλα δεν ξερω κατα ποσο ειναι σωστη! Διορθωστε με αν ειναι κατι λαθος!

Syntax: [ Download ] [ Hide ]
ΠΡΟΓΡΑΜΜΑ Διαγωνισμος_Ερωτησεων_Multiple_Choice

ΜΕΤΑΒΛΗΤΕΣ
  ΑΚΕΡΑΙΕΣ: ΑΠ[100,50],i,j ,min,s,θ_ερ,s2 ,ΒΑΘ[100]
  ΧΑΡΑΚΤΗΡΕΣ: Σ,Λ,Ξ
ΑΡΧΗ
  Για i από 1 μέχρι 100
    Για j από 1 μεχρι 50
      Αρχη_επαναληψης
        διάβασε ΑΠ[i,j]
      Μεχρις_οτου ΑΠ[i,j] <> 'Σ' ή ΑΠ[i,j] <> 'Λ' ή ΑΠ[i,j] <> 'Ξ'
    Τέλος_Επανάληψης
  Τέλος_Επανάληψης
  min <-- -10^10
  θ_ερ <-- 0
  Για j από 1 μέχρι 50
    s <-- 0
    Για i από 1 μεχρι 100
      Αν  ΑΠ[i,j] = 'Σ' τοτε
        s <-- s + 1
      Τέλος_Αν
    Τέλος_Επανάληψης
    Αν s < min τότε
      min <-- s
      θ_ερ <-- j
    Τέλος_Αν
  Τέλος_Επανάληψης
  Αν  min > 0  τότε
    γραψε 'πιο δύσκολη ερώτηση ήταν η:',θ_ερ
  αλλιώς
    γραψε 'Δεν βρέθηκε σωστή απάντηση'
  Τέλος_Αν
  Για i από 1 μέχρι 100
    s <-- 0
    s2 <-- 0
    Για j από 1 μεχρι 50
      Αν ΑΠ[i,j] = 'Σ' τότε s <-- s + 2
        Αν ΑΠ[i,j] = 'Λ' τότε s <-- s - 1
        τέλος_αν
      Τελος_αν
    Τέλος_Επανάληψης
    Αν s > 50  τότε
      s2 <-- s2 + 1
      ΒΑΘ[i] <-- s
    τελος_αν
  Τέλος_Επανάληψης
  γραψε 'οι υποψήφιοι που συγκέντρωσαν βαθμολογία πάνω απο 50 ειναι:',s2
ΤΕΛΟΣ_ΠΡΟΓΡΑΜΜΑΤΟΣ


Κορυφή
 Προφίλ  
Απάντηση με παράθεση  
ΔημοσίευσηΔημοσιεύτηκε: Κυρ 18 Ιαν 2009 06:35 am 
Χωρίς σύνδεση

Εγγραφή: Σάβ 15 Δεκ 2007 05:56 am
Δημοσιεύσεις: 1
Συγνώμη που θα το πω αλλά το παραπάνω πρόγραμμα είναι εντελώς μα εντελώς λάθος.
Πιο συγκεκριμένα:
:arrow: Ο πίνακας ΑΠ[100,50] είναι τύπου χαρακτήρες

:arrow: Ο έλεγχος εγκυρότητας πρέπει να γίνει:
Syntax: [ Download ] [ Hide ]
 Μεχρις_οτου ΑΠ[i,j] = 'Σ' ή ΑΠ[i,j] = 'Λ' ή ΑΠ[i,j] = 'Ξ'


:arrow: Το ότι θέτεις το min σαν -10^10 δεν σημαίνει τίποτα. Μάλλον ήθελες να βάλεις 10^10 ώστε να έχεις ένα πολύ μεγάλο νούμερο ώστε το επόμενο απλά να είναι μικρότερο. Όμως δεν χρειάζεται να πας τόσο μακριά. Το μέγιστο πλήθος σωστών απάντήσεων ανά ερώτηση είναι 100 άρα ας εβαζες 101.
Ακόμα και μ' αυτό ο τρόπος είναι λάθος. Πρέπει πρώτα να υπολογίσεις το min και μετά να κάνεις μια αναζήτηση 3ου τύπου ώστε να βρεις ποιες ερωτήσεις έχουν την ίδια Min τιμή. Γι' αυτό και είναι καλό να βάλεις ένα ακέραιο πίνακα ΜΣ[50] παράλληλα ο οποίος θα έχει τον αριθμό των σωστών απαντήσεων.


:arrow: Ο παρακάτω κώδικας είναι λάθος συντακτικά
Syntax: [ Download ] [ Hide ]
  Αν ΑΠ[i,j] = 'Σ' τότε s <-- s + 2
        Αν ΑΠ[i,j] = 'Λ' τότε s <-- s - 1
        τέλος_αν
      Τελος_αν


Γενικά υπάρχουν και κάποια άλλα ψηλά λαθάκια.
Ο σωστός κώδικας είναι ο παρακάτω:
Syntax: [ Download ] [ Hide ]
ΠΡΟΓΡΑΜΜΑ Διαγωνισμος_Ερωτησεων_Multiple_Choice

ΜΕΤΑΒΛΗΤΕΣ
  ΑΚΕΡΑΙΕΣ: i,j ,min,s,θ_ερ,s2 ,ΒΑΘ[100],ΜΣ[50]
  ΧΑΡΑΚΤΗΡΕΣ: Σ,Λ,Ξ,ΑΠ[100,50]
ΑΡΧΗ
!
! Εισαγωγή απαντήσεων του υποψηφίου.
!
  Για i από 1 μέχρι 100
    Για j από 1 μεχρι 50
      Αρχη_επαναληψης
        Γράψε 'Δώστε την απάντηση του',i,'στην ερώτηση',j
        Διάβασε ΑΠ[i,j]
      Μεχρις_οτου ΑΠ[i,j] = 'Σ' ή ΑΠ[i,j] = 'Λ' ή ΑΠ[i,j] = 'Ξ'
    Τέλος_Επανάληψης
  Τέλος_Επανάληψης
 !
 ! Εύρεση των πιο δύσκολων ερωτήσεων
 !
  Για j από 1 μέχρι 50
    ΜΣ[j] <-- 0
    Για i από 1 μεχρι 100
      Αν  ΑΠ[i,j] = 'Σ' τοτε
        ΜΣ[j] <-- ΜΣ[j] + 1
      Τέλος_Αν
    Τέλος_Επανάληψης
  Τέλος_Επανάληψης
  min <-- ΜΣ[1]
  Για i από 1 μεχρι 50
    Αν ΜΣ[j] < min τότε
      min <-- ΜΣ[j]
    Τέλος_Αν
  Τέλος_Επανάληψης
  Για i από 1 μεχρι 50
    Αν ΜΣ[j]=min τοτε
      Γραψε 'Δύσκολη ερώτηση: ',i,'Πλήθος σωστών απαντήσεων:',min
    Τέλος_Αν
  Τέλος_επανάληψης
  Για i από 1 μέχρι 100
    ΒΑΘ[i] <-- 0
    Για j από 1 μεχρι 50
      Αν ΑΠ[i,j] = 'Σ' τότε
        ΒΑΘ[i] <-- ΒΑΘ[i]+2
      αλλιώς_αν ΑΠ[i,j] = 'Λ' τότε
        ΒΑΘ[i] <-- ΒΑΘ[i]-1
      Τελος_αν
    Τέλος_Επανάληψης
 !
 ! Πλήθος υποψηφίων με βαθμό >50
 !  
    Αν ΒΑΘ[i] > 50  τότε
      s2 <-- s2 + 1
    τελος_αν
  Τέλος_Επανάληψης
  γραψε 'οι υποψήφιοι που συγκέντρωσαν βαθμολογία πάνω απο 50 ειναι:',s2
ΤΕΛΟΣ_ΠΡΟΓΡΑΜΜΑΤΟΣ


Κορυφή
 Προφίλ  
Απάντηση με παράθεση  
Τελευταίες δημοσιεύσεις:  Ταξινόμηση ανά  
Δημιουργία νέου θέματος Απαντήστε στο θέμα  [ 3 Δημοσιεύσεις ] 

Όλοι οι χρόνοι είναι UTC + 2 ώρες [ DST ]


Μέλη σε σύνδεση

Μέλη σε αυτή την Δ. Συζήτηση : Δεν υπάρχουν εγγεγραμμένα μέλη και 1 επισκέπτης


Δεν μπορείτε να δημοσιεύετε νέα θέματα σε αυτή τη Δ. Συζήτηση
Δεν μπορείτε να απαντάτε σε θέματα σε αυτή τη Δ. Συζήτηση
Δεν μπορείτε να επεξεργάζεστε τις δημοσιεύσεις σας σε αυτή τη Δ. Συζήτηση
Δεν μπορείτε να διαγράφετε τις δημοσιεύσεις σας σε αυτή τη Δ. Συζήτηση
Δεν μπορείτε να επισυνάπτετε αρχεία σε αυτή τη Δ. Συζήτηση

Αναζήτηση για:
Μετάβαση σε:  
cron
Προβολές: