Να αναπτύξετε αλγόριθμο ο οποίος:
Α. Θα διαβάζει 50 πραγματικούς αριθμούς.
Β. Θα υπολογίζει και θα εκτυπώνει το άθροισμα και τον μέσο όρο των αριθμών που διάβασε.
Γ. Σε περίπτωση που διαβάζει θετικούς αριθμούς θα υπολογίζει και θα εκτυπώνει τον μέσο όρο των θετικών.
Άσκηση της εβδομάδας (Νο2)
Να αναπτύξετε αλγόριθμο ο οποίος θα διαβάζει βαθμούς μαθητών στην κλίμακα 1-100 και τα επώνυμά τους, μέχρι να εισαχθεί ως βαθμός αρνητική τιμή ή τιμή μεγαλύτερη του 100 ή ως επώνυμο το κενό. Ο αλγόριθμος θα υπολογίζει και θα εμφανίζει τον μέγιστο και τον ελάχιστο βαθμό, καθώς και το επώνυμο του μαθητή που έχει τον μέγιστο και τον ελάχιστο βαθμό.
Θεωρήστε ότι ένας μόνο μαθητής έχει τον μέγιστο βαθμό και ένας μόνο μαθητής έχει τον ελάχιστο βαθμό.
(Για εύρεση μεγίστου και ελαχίστου σε άγνωστο αριθμό επαναλήψεων, χρησιμοποιούμε την Όσο ... επανάλαβε)
Άσκηση της εβδομάδας (Νο1)
Για την πολυήμερη εκδρομή της Γ΄ Λυκείου, το μαθητικό συμβούλιο της τάξης έχει συγκεντρώσει τρεις προσφορές. Τα πρακτορεία έχουν προσφέρει μία επιπλέον ημέρα παραμονής σε περίπτωση που οι μαθητές που θα συμμετάσχουν είναι περισσότεροι από 70.
Να αναπτύξετε αλγόριθμο ο οποίος:
Α. Για κάθε προσφορά θα διαβάζει το κόστος της εκδρομής ανά άτομο, τις ημέρες διαμονής, καθώς και τον προορισμό.
Β. Θα εντοπίζει την προσφορά με το μικρότερο κόστος ανά ημέρα και θα εμφανίζει τον προορισμό.
Για εντολή εκχώρησης να χρησιμοποιήσετε τα σύμβολα <-
ΑπάντησηΔιαγραφήκυρια εγω θελω κατι ποιο δυσκολο αυτα ειναι ευκολακια ...
ΔιαγραφήΜπορείτε να γράφετε τους αλγορίθμους στον διερμηνευτή της Ψευδογλώσσας (που έχω αναρτήσει στην Αρχική Σελίδα) και να τους αντιγράφετε εδώ.
ΑπάντησηΔιαγραφήΘα εκτελέσω τις εντολες με την σειρα που μου τις δινει??? Δηλαδη θα βαλω δυο διαβασε????
ΑπάντησηΔιαγραφήΝαι! με τη σειρά που τις δίνει!! Ρία στείλε μου αν θέλεις και την άσκηση που έλεγες!
ΔιαγραφήΑλγόριθμος Εκδρομή
ΑπάντησηΔιαγραφήΓια i από 1 μέχρι 3
Διάβασε Κοστος_α , μερες , προορ , Πληθ_μ ! Το κοστος_α ειναι το κοστος ανα ατομο ,
!το πληθ_μ ειναι το πληθος των μαθητων που θα παρουν μερος
Αν i = 1 τότε
min ← Κοστος_α
min_Πρ← προορ
Τέλος_αν
Αν min > Κοστος_α τότε
min ← Κοστος_α
min_Πρ← προορ
Τέλος_αν
Αν Πληθ_μ > 70 τότε
μερες← μερες + 1
Τέλος_αν
Τελ_κοστος← Πληθ_μ* κοστος_α
Εμφάνισε Οι μερες της εκδρομης ειναι ''μερες'' , το κοστος ανα ατομο ειναι '' κοστος_α ''
Τέλος_επανάληψης
Εμφανισε min , min_Πρ
Ρία, επειδή υπάρχουν λάθη, διάβασε παρακάτω τι γράφω στον Πασχάλη και προσπάθησε να τη διορθώσεις. Θα ανεβάσω και εγώ τη λύση το Σαββατοκύριακο!
ΔιαγραφήΑλγόριθμος Εκδρομή
ΑπάντησηΔιαγραφήmin← 10^50
Για πρ από 1 μέχρι 3
Εμφάνισε "Δωσε το κοστος εκδρομης ανα ατομο,τις ημερες διαμονης τον προορισμο και το πληθος μαθητων"
Διάβασε κ_εκ,ηδ,προορ,πλ_μαθ
Αν κ_εκ 70 τότε
ηδ← ηδ+1 !προσθετει μια μερα διαμονης αν οι μαθητες ειναι περισσοτεροι των 70.
Τέλος_αν
Τελ_κοστ← κ_εκ/ ηδ !υπολογιζει το τελικο κοστος ανα ατομο.
Τέλος_επανάληψης
Εμφάνισε "Το μικροτερο κοστος ειναι:" ,min, "και ο προορισμος ειναι:", Χπροορ
Εμφάνισε "Το τελικο κοστος ειναι:" ,Τελ_κοστ
Εμφάνισε "Οι ημερες διαμονης ειναι:",ηδ
Τέλος Εκδρομή
κυρια συγνωμη εγινε ενα λαθος στην αντιγραφη επικολληση το Σωστο ειναι:
ΑπάντησηΔιαγραφήΑλγόριθμος Εκδρομή
min← 10^50
Για πρ από 1 μέχρι 3
Εμφάνισε "Δωσε το κοστος εκδρομης ανα ατομο,τις ημερες διαμονης τον προορισμο και το πληθος μαθητων"
Διάβασε κ_εκ,ηδ,προορ,πλ_μαθ
Αν κ_εκ < min τότε
min ← κ_εκ !το ελαχιστο κοστος ανα ημερα
Χπροορ ← προορ !ο προορισμος με το μικροτερο κοστος ανα ατομο.
Τέλος_αν
Αν πλ_μαθ > 70 τότε
ηδ ← ηδ+1 !προσθετει μια μερα διαμονης αν οι μαθητες ειναι περισσοτεροι των 70.
Τέλος_αν
Τελ_κοστ← κ_εκ / ηδ !υπολογιζει το τελικο κοστος ανα ατομο ανα ημερα.
Τέλος_επανάληψης
Εμφάνισε "Το μικροτερο κοστος ειναι:" ,min, "και ο προορισμος ειναι:", Χπροορ
Εμφάνισε "Το τελικο κοστος ειναι:" ,Τελ_κοστ
Εμφάνισε "Οι ημερες διαμονης ειναι:",ηδ
Τέλος Εκδρομή
Κυρια μια διευκρινηση στην εκφωνηση νομιζω οτι χρειαζεται.Λεει οτι δινεται το κοστος της εκδρομης ανα ατομο.Και στο β ερωτημα ζηταει το κοστος ανα ημερα.Υπαρχουν 2 περιπτωσεισ αν το ζηταει το μικροτερο κοστος ανα ημερα ανα ατομο η το ευρυτερο μικροτερο κοστος ανα ημερα.Διοτι επιδεχεται 2 λυσεις.Αν ισχυει η το πρωτο τοτε ισχυει κοστος εκδρομης/κοστος ανα ημερα αλλιως κοστος εκδρομης * πληθος μαθητων/κοστος ανα ημερα.Ισως το εχω λαθος στην ασκηση
ΑπάντησηΔιαγραφήΠασχάλη το β ερώτημα αναφέρεται στο μικρότερο κόστος ανά ημέρα ανά άτομο, καθώς ακόμη δεν έχει διαβαστεί το πλήθος των μαθητών.
ΔιαγραφήΕπιπλέον, μία εξήγηση για το ζητούμενο της άσκησης είναι ότι στο β ερώτημα βρίσκουμε τον τελικό προορισμό. Οι μαθητές ουσιαστικά αποφασίζουν στο β ερώτημα ότι θα πάνε στη φθηνότερη εκδρομή και έτσι ξέρουμε πλέον τον προορισμό (στη λύση σου είναι ο Χπροορ).
Έτσι, στο γ ερώτημα διαβάζουμε το πλήθος των μαθητών και υπολογίζουμε τις ημέρες τις εκδρομής, που είναι πλέον γνωστές γιατί την έχουμε βρει στο β ερώτημα. Συνεπώς, εμφανίζουμε τις ημέρες που θα πάνε εκδρομή οι μαθητές και το τελικό κόστος ανά άτομο που θα είναι το κόστος της εκδρομής που επέλεξαν διά το πλήθος των μαθητών.
Αλγόριθμος Άσκηση_εβδομάδας_1
ΑπάντησηΔιαγραφήι ← 1
κόστος_3 ← 0
Όσο ι <= 3 επανάλαβε
Γράψε 'Δώστε το κόστος της εκδρομής ανά άτομο, τις ημέρες διαμονής,και τον προορισμό για την προσφόρα ' , ι, '.'
Διάβασε κόστος_άτομο, ημέρες_διαμονής, προορισμός
Αν ι = 1 τότε
κόστος_1 ← κόστος_άτομο
ημέρες_διαμονής_1 ← ημέρες_διαμονής
Αλλιώς_αν ι = 2 τότε
κόστος_2 ← κόστος_άτομο
ημέρες_διαμονής_2 ← ημέρες_διαμονής
Αλλιώς_αν ι = 3 τότε
κόστος_3 ← κόστος_άτομο
ημέρες_διαμονής_3 ← ημέρες_διαμονής
Τέλος_αν
ι ← ι + 1
Τέλος_επανάληψης
min ← κόστος_1
ημέρες_διαμονής ← ημέρες_διαμονής_1
Αν κόστος_2 < min τότε
min ← κόστος_2
ημέρες_διαμονής ← ημέρες_διαμονής_2
Τέλος_αν
Αν κόστος_3 < min τότε
min ← κόστος_3
ημέρες_διαμονής ← ημέρες_διαμονής_3
Τέλος_αν
Γράψε "Δώστε το πλήθος των μαθητών"
Διάβασε μαθητές
Αν μαθητές > 70 τότε
ημέρες_διαμονής ← ημέρες_διαμονής + 1
Τέλος_αν
μιν ← κόστος_1
Γράψε 'Η εκδρομή θα έχει διάρκεια ', ημέρες_διαμονής, ' ημέρες και το κόστος ανα άτομο θα είναι ', min, '.'
Τέλος Άσκηση_εβδομάδας_1
Κυρια την καινουργια εργασια την δοκιμασα με Αρχη_επαναληψης .. Μεχρις_οτου και βαζω την εντολη διαβασε μεσα στην επαναληψη αλλα οταν βαζω για βαθμο -1 για παραδειγμα μ εμφανιζει το min οτι ειναι -1 πρεπει να βαλω εμφανισε μεσα στην επαναληψη μηπως?
ΑπάντησηΔιαγραφήΕπειδή η Αρχή_επανάληψης εκτελείται τουλάχιστον μία φορά δεν ενδείκνυται για εύρεση ελαχίστου και μεγίστου. Ο λόγος είναι ότι, όπως είπες, αν δώσεις αρνητικό αριθμό θα τον εμφανίσει ως min. Ομοίως και στο max. Όταν βλέπεις ότι κάτι βγαίνει λάθος με την Αρχή_επανάληψης, τότε να προτιμάς την Όσο ... επανάλαβε!
Διαγραφήθα το προσθέσω σαν διευκρίνιση!
Αλγόριθμος Βαθμοί
ΑπάντησηΔιαγραφήmin ← 10 ^ 20
max ← -5
ΕΠmax ← "Α"
ΕΠmin ← "Κ"
κ ← 0
Αρχή_επανάληψης
Εμφάνισε "Δωσε το επωνυμο του μαθητη και τον βαθμο του."
Διάβασε ΕΠ, Β
Αν ΕΠ ≠ " " τότε
Αν Β ≥ 0 και Β ≤ 100 τότε
κ ← 1 !Το κ ειναι μεταβλητη για να ελεγχω που δεν γινει επαναληψη
Αν Β > max τότε
max ← Β
ΕΠmax ← ΕΠ !Εκχωρει το επωνυμο του μαθητη με το μεγαλυτερο βαθμο
Τέλος_αν
Αν Β < min τότε
min ← Β
ΕΠmin ← ΕΠ !Εκχωρει το επωνυμο του μαθητη με το μικροτερο βαθμο
Τέλος_αν
Τέλος_αν
Τέλος_αν
Μέχρις_ότου Β < 0 ή Β > 100 ή ΕΠ =" "
Αν κ = 1 τοτε
Εμφάνισε "Ο μεγιστος βαθμος ειναι:" , max ,"και ο μαθητης με τον μεγαλυτερο βαθμο ειναι:" , ΕΠmax
Εμφάνισε "Ο ελαχιστος βαθμος ειναι:", min ,"και ο μαθητης με τον μικροτερο βαθμο ειναι:" , ΕΠmin
αλλιώς
Εμφάνισε "Δεν δοθηκε ουτε μια εισοδος"
Τέλος_αν
Τέλος Βαθμοί
Μπράβο Πασχάλη!! Με Αρχή_επανάληψης είναι αρκετά δύσκολη γιατί πρέπει να ελέγχεις πολλές παραμέτρους, αλλά την έλυσες σωστά!
ΔιαγραφήΑλγόριθμος Άσκηση_Εβδομάδας2
ΑπάντησηΔιαγραφήΓράψε 'Δώστε τον βαθμό και το επώνυμο του μαθητή.'
Δίαβασε βαθμός, επίθετο
max ← -1
min ← 1000000000000000000
επίθετο_max ← 'a'
επίθετο_min ← 'b'
Όσο βαθμός >= 0 και βαθμός <= 100 και επίθετο <> ' ' επανάλαβε
Αν βαθμός > max τότε
max ← βαθμός
επίθετο_max ← επίθετο
Τέλος_αν
Αν βαθμός < min τότε
min ← βαθμός
επίθετο_min ← επίθετο
Τέλος_αν
Διάβασε βαθμός, επώνυμο
Τέλος_επανάληψης
Αν max <> -1 και min <> 1000000000000000000 και επίθετο_max <> 'a' και επίθετο_min <> 'b' τότε
Γράψε 'Ο/η μαθητής/τρια με τον μεγαλύτερο βαθμό ήταν ο/η ', επίθετο_max , ' και έβγαλε ', max , ' και ο/η μαθητής/τρια με τον μικρότερο βαθμό ήταν ο/η ' , επίθετο_min , ' και έβγαλε ', min , '.'
Αλλιώς
Γράψε 'Δεν δόθηκαν αρκετά δεδομένα.'
Τέλος_αν
Μπράβο Αλέξανδρε!! Σωστή!!
ΔιαγραφήΑλγόριθμος ασκ_αριθμοί
ΑπάντησηΔιαγραφήi←1
iα←0
aθρ←0
αθρθ←0
Αρχή_επανάληψης
Διάβασε α
αθρ←αθρ+α
μο←αθρ/i
Εκτύπωσε "το άθροισμα είναι:",αθρ
Εκτύπωσε "και ο μέσος όρος είναι:",μο
Αν α> 0 τότε
αθρθ←αθρθ+α
μοθ←αθρθ/iα
Εκτύπωσε "ο μέσος όρος των θετικών είναι:",μοθ
Τέλος_αν
i←i+1
Μέχρις_ότου i≥50
Τέλος ασκ_αριθμοί
(είχα ένα προβληματάκι με το πρόγραμμα που κάνουμε τους αλγορίθμους...αλλά δεν κατάλαβα τι έκανα λάθος!!)
Μαριάννα, έχεις κάνει τα εξής λάθη:
Διαγραφήα)Ο μέσος όρος όλων των αριθμών και ο μέσος όρος των θετικών πρέπει να υπολογιστούν και να εμφανιστούν έξω από την επανάληψη, όταν θα έχεις το συνολικό άθροισμά τους και το πλήθος τους.
β)Η μεταβλητή ia πρέπει να μετράει το πλήθος των θετικών αριθμών που δίνονται, ώστε έπειτα να είσαι σε θέση να υπολογίσεις τον μέσο όρο τους.
γ)Η συνθήκη στην Μέχρις_ότου είναι i>50.
Αλγόριθμος Αριθμοί
ΑπάντησηΔιαγραφήαθροισμα ← 0
πληθος ← 0
πληθος_θετ ← 0
αθροισμα_θετ ← 0
κ ← 0
Για i από 1 μέχρι 50
Εμφανισε "Δωσε εναν πραγματικο αριθμο:"
Διαβασε j
αθροισμα ← αθροισμα + j
πληθος ← πληθος + 1
Αν j > 0 τότε
πληθος_θετ ← πληθος_θετ + 1
αθροισμα_θετ ← αθροισμα_θετ + j !υπολογιζει το αθροισμα των θετικων αριθμων αμα δοθηκαν
κ ← 1
Τέλος_αν
Τέλος_επανάληψης
ΜΟ_αριθμων ← αθροισμα / πληθος
Αν κ = 1 τότε
ΜΟ_αριθμων_θετικων ← αθροισμα_θετ / πληθος_θετ
Εκτύπωσε "Ο μεσος ορος των θετικων αριθμων που δοθηκαν ειναι:" , ΜΟ_αριθμων_θετικων
αλλιώς
Εκτύπωσε "Δοθηκε εν συνεχεια αριθμος j=0 ή j < 0 παρακαλω δωστε αλλον αριθμο για να υπολογισετε μεσο ορο θετικων αριθμων!"
Τέλος_αν
Εκτύπωσε "Ο μεσος ορος των αριθμων που διαβαστηκαν ειναι:" , ΜΟ_αριθμων
Εκτύπωσε "Το αθροισμα των αριθμων ειναι που διαβαστηκαν ειναι:" , αθροισμα
Τέλος Αριθμοί
Πασχάλη, πολύ σωστά!
ΔιαγραφήΜία μικρή παρατήρηση: είναι περιττή η μεταβλητή πλήθος, καθώς ξέρεις ότι οι αριθμοί είναι 50.