[ΕΑ-8] Εργαστήριο 9ης εβδομάδας (Αντικείμενο)

Πέμπτη, 28 Νοεμβρίου 2024 - 4:12 μ.μ.
- από τον χρήστη Θραμπουλίδης Κλεάνθης

Εισαγωγή

Στην ΕΑ-8 θα δουλέψετε σε εναλλακτικές υλοποιήσεις του προγράμματος FourDigitNumbers.

Απαραίτητη προϋπόθεση για την αποτελεσματική εκτέλεση της ΕΑ είναι:

  1. η ενεργή συμμετοχή σας στη διάλεξη και το Φροντιστήριο, όπου θα δουλέψουμε τις ασκήσεις,
  2. η μελέτη του αντίστοιχου υλικού στο eclass, και,
  3. η επιτυχής ολοκλήρωση των προηγούμενων ΕΑ καθώς η ΕΑ-8 απαιτεί γνώσεις και δεξιότητες που αποκτήθηκαν στις προηγούμενες ΕΑ.

Προσέξτε τη δόμηση και τη σωστή στοίχιση του πηγαίου κώδικα. Το αρχείο programStructure.pdf καταγράφει τη σωστή δόμηση και στοίχιση του πηγαίου κώδικα. Στην επιλογή Σύνδεσμοι της ιστοσελίδας του μαθήματος στο eclass στην κατηγορία Βασικά στοιχεία της Γλώσσας  C θα βρείτε ότι σας χρειάζεται από την γλώσσα C για το μάθημα Εισαγωγή στον Προγραμματισμό.

Δράσεις

Η ΕΑ-8 αποτελείται από 3 δράσεις που δίνονται παρακάτω.

Σε όλες τις δράσεις θα ακολουθήσετε τα βήματα της Διαδικασίας ανάπτυξης προγράμματος (I2P_BasicConceptsPartC.pdf διαφάνεια 15 - Διαδικασία Ανάπτυξης Προγράμματος (Updated)) αξιοποιώντας ότι υλικό έχετε στη διάθεση σας και οπωσδήποτε αφαιρετικότητα στις διεργασίες (procedural abstraction) και αυξητική ανάπτυξη (incremental development).

 [Δ1] Ολοκλήρωση των δράσεων της ΕΑ-7

Αν δεν το έχετε κάνει ήδη θα ολοκληρώσετε τις δράσεις της ΕΑ-7.

[Δ2] –  Orders

 Ένα εργοστάσιο παρασκευάζει μικρά και μεγάλα μπουκάλια εμφιάλωσης. Τα μικρά κοστίζουν 0.08€ και τα μεγάλα 0.2€. Για παραγγελίες μεγαλύτερες από 300€ ή 1000 μπουκάλια, γίνεται έκπτωση 12%.
Για παραγγελίες μεγαλύτερες από 600€, γίνεται έκπτωση 24%.

Αναθέστε στην μηχανή το έργο του υπολογισμού του συνολικού τελικού κόστους μιας παραγγελίας με βάση την έκπτωση. Στον κώδικα σας θα συμπεριλάβετε σε σχόλια την λεκτική περιγραφή με βάση την οποία δομήσατε την main(). Tην λεκτική περιγραφή θα τοποθετήσετε στην αρχή ακριβώς πάνω από την main().

[Δ3] – FourDigitNumbers

1. Αναθέστε στον υπολογιστή το έργο της εύρεσης των τετραψήφιων αριθμών για τους οποίους το άθροισμα της τέταρτης δύναμης των ψηφίων του είναι ίσο με τον αριθμό. Ένας τέτοιος αριθμός είναι ο 8208 καθώς 8208 = 8^4+2^4+0^4+8^4.

2. Δώστε τη λεκτική περιγραφή με βάση την οποία δομήσατε την main(). Tη λεκτική περιγραφή θα τοποθετήσετε στην αρχή ακριβώς πάνω από την main().

3. Δείτε την ανάρτηση FourDigitNumbers και ChatGPT

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

5. Δώστε ενναλακτικές υλοποιήσεις.

Σχόλια (1)

Θραμπουλίδης Κλεάνθης
Πέμπτη, 9 Ιανουαρίου 2025 - 6:01 μ.μ.
- από τον χρήστη Θραμπουλίδης Κλεάνθης
"This is an excerpt from a programming assignment ("Εργαστηριακή Άσκηση 8") for an Introduction to Programming course (CEID_22Υ103). The assignment, due on 28 November 2024, focuses on alternative implementations of a program calculating four-digit numbers. Students must demonstrate procedural abstraction and incremental development, building upon previous assignments (ΕΑ-7) and utilising provided resources, including a document outlining correct code structure and formatting. The assignment comprises three tasks: completing previous work (Δ1), calculating the final cost of orders with discounts (Δ2 - Orders), and finding four-digit numbers equal to the sum of their digits raised to the fourth power, optimising for execution time and providing alternative implementations (Δ3 - FourDigitNumbers). All tasks require clear, commented code explaining the main() function's logic. Key topics This is an excerpt from a programming assignment ("Εργαστηριακή Άσκηση 8") for an Introduction to Programming course (CEID_22Υ103). The assignment, due on 28 November 2024, focuses on alternative implementations of a program calculating four-digit numbers. Students must demonstrate procedural abstraction and incremental development, building upon previous assignments (ΕΑ-7) and utilising provided resources, including a document outlining correct code structure and formatting. The assignment comprises three tasks: completing previous work (Δ1), calculating the final cost of orders with discounts (Δ2 - Orders), and finding four-digit numbers equal to the sum of their digits raised to the fourth power, optimising for execution time and providing alternative implementations (Δ3 - FourDigitNumbers). All tasks require clear, commented code explaining the main() function's logic." NotebookLM Key topics