Η άσκηση αυτή ίσως σας βοηθήσει και στην Εργασία #0.
Γράψτε ένα πρόγραμμα C calc.c που δρα ως ένα κομπιουτεράκι (calculator) για να
πραγματοποιεί πρόσθεση. Το πρόγραμμά σας πρέπει να ζητά δύο ακεραίους από την πρότυπη
είσοδο (stdin) και στην συνέχεια να τυπώνει το άθροισμά τους. Παράδειγμα εκτέλεσης
ακολουθεί:
$ ./calc
Please enter the first number: 42
Please enter the second number: 58
The sum of the two numbers is: 100
$ echo $?
0
1.1 Υψηλή ακρίβεια (Προχωρημένο, Προαιρετικό)
Τροποποιήστε το παραπάνω πρόγραμμα προκειμένου να μπορεί να δέχεται μεγάλους αριθμούς μέχρι και \(10^{18}\). Το πρόγραμμά σας συνεχίζει να παράγει τα αναμενόμενα αποτελέσματα;
1.2 Περισσότερες πράξεις (Προχωρημένο, Προαιρετικό)
Τροποποιήστε το calc πρόγραμμά σας προκειμένου να πραγματοποιεί πρόσθεση Ή αφαίρεση ανάλογα με το τι προτιμάει ο χρήστης. Πώς θα σχεδιάζατε την εφαρμογή σας;
1.3 Χειρισμός σφαλμάτων (Προχωρημένο, Προαιρετικό)
Τροποποιήστε το calc πρόγραμμα προκειμένου να βγάζει κωδικό εξόδου 1 εάν οτιδήποτε πάει στραβά κατά την εκτέλεση του προγράμματος - για παράδειγμα εάν ο χρήστης δώσει το string “hello” αντί για αριθμό.
Δύο κλήσεις της scanf, μία για κάθε αριθμό, με τη διεύθυνση της μεταβλητής ως όρισμα.
Για το 1.1, ένας int σταματά γύρω στο \(2 \cdot 10^9\): χρειάζεστε ευρύτερο τύπο και την
αντίστοιχη προδιαγραφή σε scanf/printf (και σκεφτείτε αν χωράει το άθροισμα δύο
τέτοιων αριθμών). Για το 1.3, ελέγξτε την τιμή που επιστρέφει η scanf και τι
επιστρέφει η main.
Αριθμός στον οδηγό: Α9.11
(στο κεφάλαιο) ·
Μόνιμο αναγνωριστικό: lab-lab02-calc ·
Σύνδεσμος: https://progintro.github.io/study/questions/labs/lab-lab02-calc.html ·
Markdown (GitHub)