Τμήμα 1

Άσκηση της εβδομάδας (Νέα!)

Να αναπτύξετε αλγόριθμο, ο οποίος:

Α. Θα εντοπίζει και θα εκτυπώνει τους ακέραιους τριψήφιους περιττούς αριθμούς που έχουν το μεσαίο ψηφίο τους μεγαλύτερο του 2 ή το άθροισμα των δύο ακριανών ψηφίων μικρότερο του 8.
Β. Θα υπολογίζει και θα εκτυπώνει το πλήθος των τριψήφιων αριθμών με το παραπάνω χαρακτηριστικό. 












Άσκηση της εβδομάδας (Νο2)


Να αναπτύξετε αλγόριθμο ο οποίος θα διαβάζει το πολύ 100 αριθμούς και θα υπολογίζει και θα τυπώνει το πλήθος των αριθμών που διαβάστηκαν, καθώς και τον μέσο όρο τους. Η διαδικασία εισαγωγής αριθμών θα σταματά αν διαβαστεί ο αριθμός 9999, χωρίς να συνυπολογίζεται ο αριθμός αυτός στο πλήθος και τον μέσο όρο. Αν ο πρώτος αριθμός που θα διαβαστεί είναι ο 9999, θα τυπώνει κατάλληλο μήνυμα.









Άσκηση της εβδομάδας (Νο1)


Μία σχολή χορού παρέχει τρία ετήσια προγράμματα (Α, Β, Γ). Το πρόγραμμα Α κοστίζει 350€, το πρόγραμμα Β κοστίζει 400€ και το πρόγραμμα Γ κοστίζει 450€. 
Να αναπτύξετε αλγόριθμο ο οποίος:
Α. Θα διαβάζει ονοματεπώνυμα πελατών και το πρόγραμμα που έχουν επιλέξει. Η επανάληψη θα τερματίζει όταν δοθεί ως ονοματεπώνυμο ο κενός χαρακτήρας ή η λέξη "Τέλος".
Β. Θα υπολογίζει και θα εμφανίζει τα έσοδα της σχολής χορού.
Γ. Τα παραπάνω ποσά περιέχουν Φ.Π.Α. 23%. Ο αλγόριθμος να υπολογίζει και να εμφανίζει τα έσοδα της σχολής χορού χωρίς τον Φ.Π.Α.

18 σχόλια:

  1. Για εντολή εκχώρησης να χρησιμοποιήσετε τα σύμβολα <-

    ΑπάντησηΔιαγραφή
  2. Μπορείτε να γράφετε τους αλγορίθμους στον διερμηνευτή της Ψευδογλώσσας (που έχω αναρτήσει στην Αρχική Σελίδα) και να τους αντιγράφετε εδώ.

    ΑπάντησηΔιαγραφή
  3. ΑΝΔΡΕΑΣ
    θεωρώ ως δεδομένο ότι ο χρήστης μπορεί να πληκτρολογεί κάθε φορά ένα από τα προγράμματα Α Β ή Γ.
    Αλγόριθμος Σχολή_Χορού
    Εμφάνισε "Δώσε ονοματεπώνυμο και πρόγραμμα"
    Διάβασε ονοματεπώνυμο,πρόγραμμα
    πλήθοςΑ← 0
    πλήθοςΒ← 0
    πλήθοςΓ← 0
    Όσο ονοματεπώνυμο ≠ " "ή ονοματεπώνυμο≠ "Τέλος"επανάλαβε
    Αν πρόγραμμα= "Α" τότε πλήθοςΑ← πλήθοςΑ+ 1
    αλλιώς_αν πρόγραμμα= "Β" τότε πλήθοςΒ← πλήθοςΒ+1
    αλλιώς πλήθοςΓ← πλήθοςΓ+1
    Τέλος_αν
    Εμφάνισε "Δώσε ονοματεπώνυμο και πρόγραμμα"
    Διάβασε ονοματεπώνυμο,πρόγραμμα
    Τέλος_επανάληψης
    έσοδα_με_ΦΠΑ← 350* πλήθοςΑ+400* πλήθοςΒ+450*πλήθοςΓ
    καθαρά_έσοδα← έσοδα_με_ΦΠΑ/ 1.23
    Εμφάνισε "Τα καθαρά έσοδα είναι: ",καθαρά_έσοδα
    Τέλος Σχολή_Χορού

    ΑπάντησηΔιαγραφή
    Απαντήσεις
    1. Ανδρέα, πολύ ωραία!!
      Χρόνια σου Πολλά για χθες!

      Διαγραφή
    2. Ευχαριστώ πολύ! Αν και ο αλγοριθμος δεν ετρεχε σωστα στο link που δημοσιευσατε!

      Διαγραφή
    3. Μία μικρή διόρθωση:
      Όσο ονοματεπώνυμο ≠ " " ΚΑΙ ονοματεπώνυμο ≠ "Τέλος" επανάλαβε

      Ο λογικός τελεστής πρέπει να είναι ΚΑΙ.
      Δοκίμασέ το τώρα και θα τρέξει σωστά!

      Διαγραφή
  4. Κυρία, σχετικά με τις ασκήσεις που μας βάλατε, στην άσκηση 11 σελ. 101 δεν κατάλαβα τι εννοείτε με τον μη αποδεκό τύπο τροχοφόρου. Επίσης, στην ίδια άσκηση, δεν μπορώ να τη λύσω με δομή επιλογής, εφόσον έχω μόνο έναν ιδιοκτήτη στον οποίο αντιστοιχεί μόνο ένα τροχοφόρο; Επιπλέον, στην άσκηση 14 σελ. 102, πώς θα κάνω την επανάληψη, όταν πρέπει να διαβάσω μόνο το αντίτιμο, ενώ ο αλγόριθμος θα τερματίζει για το γράμμα Λ ή όταν το λεωφορείο γέμισε;

    ΑπάντησηΔιαγραφή
  5. Καλημέρα Χάρη.
    Σχετικά με την άσκηση 11, σελ. 101:
    Μη αποδεκτός τύπος τροχοφόρου σημαίνει οτιδήποτε πέρα από Α ή Μ. Συνεπώς, θα τερματίζει όταν ως τύπος δοθεί το κενό ή δοθεί οτιδήποτε άλλο εκτός από Α ή Μ.
    Αφού, λοιπόν, γράψεις την Όσο, θα πρέπει έπειτα να ελέγχεις αν ο τύπος είναι Α ή Μ ώστε να υπολογίσεις και την αντίστοιχη πληρωμή. Οπότε θα γίνει δομή επιλογής.

    Σχετικά με την άσκηση 14, σελ. 102:
    Για να ελέγξεις αν γέμισε το λεωφορείο θα πρέπει να δημιουργήσεις μία μεταβλητή πλήθος με την οποία θα μετράς το πλήθος των επιβατών. Η μεταβλητή πλήθος αρχικά θα πάρει την τιμή 0 και μέσα στη δομή επανάληψης θα αυξάνεται. Συνεπώς, στην επανάληψη θα ελέγχεις δύο πράγματα: την κατηγορία, η οποία πρέπει να είναι διάφορη του Λ και το πλήθος το οποίο πρέπει να είναι μικρότερο ή ίσο του 50.
    (Παρατήρηση: Ο αλγόριθμος δεν διαβάζει μόνο το αντίτιμο, αλλά και την κατηγορία κάθε επιβάτη.)

    Ελπίζω να βοήθησα!! :)

    ΑπάντησηΔιαγραφή
  6. Αλγόριθμος άσκηση
    Εμφάνισε "Δώσε έναν αριθμό"
    Διάβασε α
    πλήθος<- 1
    sum<- 0
    Όσο πλήθος<=100 και α<>9999 επανάλαβε
    πλήθος<- πλήθος+1
    sum<- sum+a
    μο<- sum/πλήθος
    Εμφάνισε "Δώσε έναν αριθμό"
    Διάβασε α
    Τέλος_επανάληψης
    Εμφάνισε "Ο μέσος όρος είναι: ", μο
    Εμφάνισε "Πλήθος αριθμών: ", πλήθος
    Αν α=9999 τότε
    Εμφάνισε "Δεν μπορεί να συνεχιστεί η διαδικασία εισαγωγής
    αριθμών"
    Τέλος_αν
    Τέλος άσκηση

    ΑπάντησηΔιαγραφή
    Απαντήσεις
    1. Χάρη, έχεις κάνει τα παρακάτω λάθη:
      α)Εφόσον διαβάζεις τον πρώτο αριθμό έξω από την επανάληψη, η σωστή συνθήκη της Όσο είναι πλήθος<100 και όχι πλήθος<=100.
      β)Το πλήθος θα αυξάνει κατά 1 αφού διαβαστεί ο επόμενος αριθμός. Συνεπώς θα το γράψεις μετά το Διάβασε α μέσα στην επανάληψη.
      γ)Ο μέσος όρος υπολογίζεται έξω από την επανάληψη, όταν θα έχεις το σύνολο των βαθμών.
      δ)Πρέπει να ελέγξεις αν ο πρώτος αριθμός που δόθηκε είναι το 9999. Σκέψου πως αν δοθεί κατευθείαν το 9999 η επανάληψη θα τερματιστεί και το πλήθος θα είναι 1.Συνεπώς, πώς θα το ελέγξεις;

      Διαγραφή
  7. Καλημέρα!
    Αλγόριθμος Αριθμοί
    Διάβασε α
    σ← 0
    μο← 0
    i← 0
    Όσο i< 100 και α≠ 9999 επανάλαβε
    i← i+ 1
    σ← σ+α
    Διάβασε α
    Τέλος_επανάληψης
    Αν α= 9999 τότε
    Εμφάνισε "Ο υπολογισμός τελειώνει."
    αλλιώς
    μο← σ/i
    Τέλος_αν
    Εμφάνισε i,μο
    Τέλος Αριθμοί

    ΑπάντησηΔιαγραφή
    Απαντήσεις
    1. Ανδρέα καλησπέρα! Κάποιες διορθώσεις:
      α) Η μεταβλητή i θα πρέπει αρχικά να είναι 1 και όχι 0.
      β) Στην Αν θα πρέπει να ελέγχεις αν ο πρώτος αριθμός που δόθηκε είναι το 9999. Συνεπώς, θα γράψεις Αν i=1 τότε ...
      γ) Η εντολή Εμφάνισε i,μο είναι προτιμότερο να τοποθετηθεί μέσα στην Αν, στην περίπτωση αλλιώς. Έτσι, δεν θα χρειάζεται να αρχικοποιείς τον μο.

      Διαγραφή
  8. Αλγοριθμος άσκηση
    Εμφάνισε "Δώσε έναν αριθμό"
    Διάβασε α
    Όσο α=Α_Μ(α) και αdiv100>=1 και αdiv100<=9 και αmod2=1 επανάλαβε
    πλήθος<-0
    ψηφίο1<-αdiv100
    x<-αmod100 !τα 2 τελευταία ψηφία του τριψήφιου
    ψηφίο2<-xdiv100
    ψηφίο3<-αmod10
    Αν ψηφίο2>2 και ψηφίο1+ψηφίο3<8 τότε
    Εκτύπωσε α
    πλήθος<-πλήθος+1
    αλλιώς
    Εκτύπωσε "Ο αριθμός δεν έχει τη ζητούμενη ιδιότητα"
    Τέλος_αν
    Εμφάνισε "Δώσε έναν αριθμό"
    Διάβασε α
    Τέλος_επανάληψης
    Εκτύπωσε "Πλήθος αριθμών με τη ζητούμενη ιδιότητα: ", πλήθος
    Τέλος άσκηση

    ΑπάντησηΔιαγραφή
    Απαντήσεις
    1. Σωστός είναι ο αλγόριθμος;

      Διαγραφή
    2. Χάρη, έχεις κάνει τα εξής λάθη:
      α)Ο αλγόριθμος δεν διαβάζει αριθμούς, αλλά εντοπίζει όλους τους ακέραιους τριψήφιους περιττούς αριθμούς. Οι ακέραιοι τριψήφιοι περιττοί αριθμοί είναι γνωστοί: 101, 103, 105, ..., 999.
      β)Ο αλγόριθμος εκτυπώνει τους αριθμούς που έχουν το μεσαίο ψηφίο τους μεγαλύτερο του 2 Ή το άθροισμα των δύο ακριανών ψηφίων μικρότερο του 8.(το λάθος σου είναι στο ΚΑΙ που έβαλες, το οποίο πρέπει να γίνει Ή)

      Διαγραφή
  9. Άρα θα το κάνω με αρχή επανάληψης;

    ΑπάντησηΔιαγραφή
  10. Ααα όχι, με για...απο...μεχρι θα το κάνω

    ΑπάντησηΔιαγραφή