Άσκηση- Κάλαντα

Ξεκίνησε από sofi_arg, 12 Δεκ 2011, 02:03:27 ΜΜ

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

sofi_arg

Γεια σας! Βρήκα στο scribd κάτι φυλλάδια ασκήσεων του κ. Σαρημπαλίδη Ιωάννη και μου τράβηξε την προσοχή μία άσκηση που επιλύεται με Δομή επανάληψης Για, όπως υποννοείται στο φυλλάδιο. Η εκφώνηση είναι η παρακάτω:


"Ένας παππούς κάθε φορά που του λένε τα κάλαντα την Παραµονή των
Χριστουγέννων δίνει χρήµατα µε τον παρακάτω τρόπο:
•Στο πρώτο παιδί δίνει 10 €,
•Στα επόµενα τέσσερα παιδιά 5 €,
•Στα επόµενα έξι παιδιά 2 €,
•Στα επόµενα εννιά παιδιά 1 € και
•Στα υπόλοιπα παιδιά 50 λεπτά.
Να γραφεί πρόγραµµα το οποίο:
•   Θα διαβάζει τον αριθµό των παιδιών που είπαν κάλαντα στον παππού και
•   Θα εµφανίζει το συνολικό ποσό χρηµάτων που έδωσε ο παππούς στα παιδιά.
Παρατήρηση: (Θεωρείστε ότι κάθε φορά επισκέπτεται τον παππού ένα παιδί.)"

Καμία πρόταση για επίλυση; Γιατί έκανα κάποιες προσπάθειες να φτιάξω έναν τύπο μέσα σε μία Για με βήμα, αλλά κάτι δε μου κολλάει.

ikariofil

Δεν είναι καν επανάληψη, μάλλον κλιμακωτή....

Διάβασε παιδιά
Αν παιδιά = 1 τότε
     Σ <- 10
αλλιώς_αν παιδιά <= 5 τότε
     Σ <- 1*10 + (παιδιά - 1)*5
αλλιώς_αν παιδιά <= 11 τότε
     Σ <- 1*10 + 4*5 + (παιδιά - 5)*2
αλλιώς_αν παιδιά <= 20 τότε
     Σ <- 1*10 + 4*5 + 6*2 + (παιδιά - 11)*1
αλλιώς
     Σ <- 1*10 + 4*5 + 6*2 + 9*1 + (παιδιά-20)*0.5
Τέλος_αν
Εμφάνισε Σ

sofi_arg

Ε και μένα για κλιμακωτή μου φαίνεται, για αυτό κόλλησα, αλλά το φυλλάδιο στο οποίο βρίσκεται η άσκηση είναι για τη δομή επανάληψης Για και φαίνεται να παίζει κάποιο ρόλο και η παρατήρηση.

P.Tsiotakis

Νομίζω οτι κάτι τέτοιο σκέφτεται ο δημιουργός της άσκησης...

Πρόγραμμα Κάλαντα
Μεταβλητές
   Ακέραιες: ι, παιδιά
   Πραγματικές: κ, Σ
Αρχή
   Διάβασε παιδιά
   Για ι από 1 μέχρι παιδιά
   Αν ι = 1 τότε
        κ <- 10
   αλλιώς_αν ι <= 1+ 4 τότε
        κ <- 5
   αλλιώς_αν ι <= 1 + 4 + 6 τότε
        κ <- 2
   αλλιώς_αν ι <= 1 + 4 + 6 + 9 τότε
        κ <- 1
   αλλιώς
        κ <- 0.5
   Τέλος_αν
   Σ <- Σ + κ
   Τέλος_επανάληψης
   Γράψε Σ
Τέλος_Προγράμματος Κάλαντα