Προγραµµατισµός Ι Εργαστήριο 3ο Ακαδ. Έτος ΕΡΓΑΣΤΗΡΙΟ 3 ΕΡΓΑΣΤΗΡΙΟ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ I, ΑΚΑΔΗΜΑΪΚΟ ΕΤΟΣ

Σχετικά έγγραφα
Προγραμματισμός Ι Εργαστήριο 5ο Ακαδ. Έτος ΕΡΓΑΣΤΗΡΙΟ 5 ΕΡΓΑΣΤΗΡΙΟ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ I, ΑΚΑΔΗΜΑΪΚΟ ΕΤΟΣ

Προγραµµατισµός Ι Εργαστήριο 13ο Ακαδ. Έτος ΕΡΓΑΣΤΗΡΙΟ 13 ΕΡΓΑΣΤΗΡΙΟ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ I, ΑΚΑΔΗΜΑΪΚΟ ΕΤΟΣ

Προγραµµατισµός Ι Εργαστήριο 13ο Ακαδ. Έτος ΕΡΓΑΣΤΗΡΙΟ 13 ΕΡΓΑΣΤΗΡΙΟ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ I, ΑΚΑΔΗΜΑΪΚΟ ΕΤΟΣ

Προγραµµατισµός Ι ΕΡΓΑΣΤΗΡΙΟ 4 ΕΡΓΑΣΤΗΡΙΟ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ I, ΑΚΑΔΗΜΑΪΚΟ ΕΤΟΣ

Προγραµµατισµός Ι ΕΡΓΑΣΤΗΡΙΟ 4 ΕΡΓΑΣΤΗΡΙΟ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ I, ΑΚΑΔΗΜΑΪΚΟ ΕΤΟΣ

Προγραµµατισµός Ι ΕΡΓΑΣΤΗΡΙΟ 2 ΕΡΓΑΣΤΗΡΙΟ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ I, ΑΚΑΔΗΜΑΪΚΟ ΕΤΟΣ

Προγραµµατισµός Ι ΕΡΓΑΣΤΗΡΙΟ 5 ΕΡΓΑΣΤΗΡΙΟ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ I, ΑΚΑΔΗΜΑΪΚΟ ΕΤΟΣ

Προγραµµατισµός Ι Εργαστήριο 9ο Ακαδ. Έτος ΕΡΓΑΣΤΗΡΙΟ 9 ΕΡΓΑΣΤΗΡΙΟ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ I, ΑΚΑΔΗΜΑΪΚΟ ΕΤΟΣ

Προγραµµατισµός Ι ΕΡΓΑΣΤΗΡΙΟ 5 ΕΡΓΑΣΤΗΡΙΟ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ I, ΑΚΑΔΗΜΑΪΚΟ ΕΤΟΣ

Προγραµµατισµός Ι ΕΡΓΑΣΤΗΡΙΟ 3 ΕΡΓΑΣΤΗΡΙΟ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ I, ΑΚΑΔΗΜΑΪΚΟ ΕΤΟΣ

Προγραµµατισµός Ι Εργαστήριο 6ο Ακαδ. Έτος ΕΡΓΑΣΤΗΡΙΟ 6 ΕΡΓΑΣΤΗΡΙΟ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ I, ΑΚΑΔΗΜΑΪΚΟ ΕΤΟΣ

Προγραμματισμός Ι Εργαστήριο 9ο Ακαδ. Έτος ΕΡΓΑΣΤΗΡΙΟ 9 ΕΡΓΑΣΤΗΡΙΟ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ I, ΑΚΑΔΗΜΑΪΚΟ ΕΤΟΣ

Προγραµµατισµός Ι Εργαστήριο 6ο Ακαδ. Έτος ΕΡΓΑΣΤΗΡΙΟ 6 ΕΡΓΑΣΤΗΡΙΟ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ I, ΑΚΑΔΗΜΑΪΚΟ ΕΤΟΣ

Προγραμματισμός Ι Εργαστήριο 8ο Ακαδ. Έτος ΕΡΓΑΣΤΗΡΙΟ 8 ΕΡΓΑΣΤΗΡΙΟ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ I, ΑΚΑΔΗΜΑΪΚΟ ΕΤΟΣ

Προγραμματισμός Ι Εργαστήριο 8ο Ακαδ. Έτος ΕΡΓΑΣΤΗΡΙΟ 8 ΕΡΓΑΣΤΗΡΙΟ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ I, ΑΚΑΔΗΜΑΪΚΟ ΕΤΟΣ

Προγραµµατισµός Ι Εργαστήριο 4ο Ακαδ. Έτος ΕΡΓΑΣΤΗΡΙΟ 4 ΕΡΓΑΣΤΗΡΙΟ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ I, ΑΚΑΔΗΜΑΪΚΟ ΕΤΟΣ

ΣΕΤ ΑΣΚΗΣΕΩΝ 1. Προθεσµία: Τρίτη 10/11/2015, 22:00

lab7: Συμβολοσειρές Συμβολοσειρές Ασφάλεια εισόδου Αναγνωσιμότητα κώδικα (σχόλια, στοίχιση, περιγραφικά ονόματα μεταβλητών, κτλ.)

ΣΕΤ ΑΣΚΗΣΕΩΝ 3. Προθεσµία: Πέµπτη 17/12/2015, 22:00

ΣΕΤ ΑΣΚΗΣΕΩΝ 3. Προθεσµία: 5/12/10, 23:59

ΣΕΤ ΑΣΚΗΣΕΩΝ 3. Προθεσµία: 7/1/2014, 22:00

ΣΕΤ ΑΣΚΗΣΕΩΝ 2. Προθεσµία: 15/11/09, 23:59

abistarakis PASS - Σωστή κατασκευή tgz και ονοµασία αρχείων

ΣΕΤ ΑΣΚΗΣΕΩΝ 1. Προθεσμία: Τετάρτη 9/11/2016, 21:00

ΣΕΤ ΑΣΚΗΣΕΩΝ 4. Προθεσµία: 13/1/13, 22:00

ΣΕΤ ΑΣΚΗΣΕΩΝ 1. Προθεσµία: 25/11/13, 22:00

ΣΕΤ ΑΣΚΗΣΕΩΝ 4. Προθεσµία: 8/1/12, 22:00

ΣΕΤ ΑΣΚΗΣΕΩΝ 1. Προθεσµία: Τρίτη 4/11/2014, 22:00

ΣΕΤ ΑΣΚΗΣΕΩΝ 4. Προθεσµία: 22/12/2016, 21:00

ΣΕΤ ΑΣΚΗΣΕΩΝ 2. Προθεσµία: 15/11/10, 23:59

lab2grades - Στη scanf υπολογίζετε τουλάχιστον 5 χαρακτήρες %5.2f προδιαγραφές που ζητούνται στην εκφώνηση. -

ΣΕΤ ΑΣΚΗΣΕΩΝ 3. Προθεσµία: 18/12/12, 22:00

ΣΕΤ ΑΣΚΗΣΕΩΝ 4. Προθεσμία: 17/1/14, 22:00

lab1: Εισαγωγή σε Linux

ΣΕΤ ΑΣΚΗΣΕΩΝ 2. Προθεσµία: 25/11/12, 22:00

lab0: Εισαγωγή σε Linux

ΣΕΤ ΑΣΚΗΣΕΩΝ 2. Προθεσµία: 27/11/11, 22:00

ΣΕΤ ΑΣΚΗΣΕΩΝ 1. Προθεσµία: 6/11/11, 22:00

ΣΕΤ ΑΣΚΗΣΕΩΝ 1. Προθεσµία: 3/12/2018, 23:59

ΤΜΗΜΑ ΜΗΧΑΝΙΚΩΝ Η/Υ, ΤΗΛΕΠΙΚΟΙΝΩΝΙΩΝ ΚΑΙ ΔΙΚΤΥΩΝ, ΠΑΝΕΠΙΣΤΗΜΙΟ ΘΕΣΣΑΛΙΑΣ

ΣΕΤ ΑΣΚΗΣΕΩΝ 4. Προθεσµία: 22/12/10, 23:59

ΣΕΤ ΑΣΚΗΣΕΩΝ 2. Προθεσμία: Τετάρτη 23/11/2016, 21:00

ΣΕΤ ΑΣΚΗΣΕΩΝ 3. Προθεσµία: Τετάρτη 7/12/2016, 21:00

ΠΑΝΕΠΙΣΤΗΜΙΟ ΘΕΣΣΑΛΙΑΣ ΣΧΟΛΗ ΘΕΤΙΚΩΝ ΕΠΙΣΤΗΜΩΝ ΤΜΗΜΑ ΠΛΗΡΟΦΟΡΙΚΗΣ

Sheet3_2. Τα literals (3.0, 1.5, κτλ) πρέπει να ορίζονται ως σταθερές.

ΣΕΤ ΑΣΚΗΣΕΩΝ 1. Προθεσµία: 10/11/12, 22:00

CE 120. Φροντιστήριο 14/10/2011

Απλά Προγράμματα. Βήματα: 1. Καθορισμός παράστασης δεδομένων στη μνήμη 2. Αλγόριθμος βήματα που περιγράφουν την επεξεργασία των δεδομένων

ΤΜΗΜΑ ΗΛΕΚΤΡΟΛΟΓΩΝ ΜΗΧΑΝΙΚΩΝ ΚΑΙ ΜΗΧΑΝΙΚΩΝ Η/Υ, ΠΑΝΕΠΙΣΤΗΜΙΟ ΘΕΣΣΑΛΙΑΣ

lab2 -Στην printf να βάζεις \n έτσι ώστε να αλλάζει γραµµή όποτε σου εµφανίζει κάποιο µήνυµα.

Αναφορά (1/2) Μπορούμε να ορίσουμε μια άλλη, ισοδύναμη αλλά ίσως πιο σύντομη, ονομασία για ποσότητα (μεταβλητή, σταθερή, συνάρτηση, κλπ.

lab3grades οριακό PASS

ΣΧΟΛΙΑ ΓΙΑ ΤΟ LAB 1. Sheet3_2

ΠΑΝΕΠΙΣΤΗΜΙΟ ΘΕΣΣΑΛΙΑΣ

ΣΕΤ ΑΣΚΗΣΕΩΝ 3 ΕΡΓΑΣΤΗΡΙΟ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ I, ΑΚΑΔΗΜΑΪΚΟ ΕΤΟΣ Προθεσµία: 10/12/2014, 22:00

lab4grades Παράδοση ασκήσεων: -Όλα καλά Άσκηση 1η: -Σωστή 357 PASS

Λύσεις Ασκήσεων ΣΕΙΡΑ 1 η. Πρόσημο και μέγεθος

Λογική Σχεδίαση Ψηφιακών Συστημάτων

ΣΕΤ ΑΣΚΗΣΕΩΝ 4 ΕΡΓΑΣΤΗΡΙΟ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ I, ΑΚΑΔΗΜΑΪΚΟ ΕΤΟΣ Προθεσµία: 9/1/2015, 22:00

Ελίνα Μακρή

ΑΕΜ ή username. Sheet2

Ψηφιακά Συστήματα. 1. Συστήματα Αριθμών

ΕΘΝΙΚΟ ΜΕΤΣΟΒΙΟ ΠΟΛΥΤΕΧΝΕΙΟ ΣΧΟΛΗ ΗΛΕΚΤΡΟΛΟΓΩΝ ΜΗΧΑΝΙΚΩΝ ΚΑΙ ΜΗΧΑΝΙΚΩΝ ΥΠΟΛΟΓΙΣΤΩΝ ΤΟΜΕΑΣ ΤΕΧΝΟΛΟΓΙΑΣ ΠΛΗΡΟΦΟΡΙΚΗΣ ΚΑΙ ΥΠΟΛΟΓΙΣΤΩΝ

1. Βάσεις αριθμητικών συστημάτων 2. Μετατροπές μεταξύ ξύβάσεων 3. Αρνητικοί δυαδικοί αριθμοί 4. Αριθμητικές πράξεις δυαδικών αριθμών

ΠΛΗΡΟΦΟΡΙΚΗ I. 4 η ΔΙΑΛΕΞΗ Αριθμητικά Συστήματα

ΠΛΗΡΟΦΟΡΙΚΗ Ι JAVA Τμήμα θεωρίας με Α.Μ. σε 3, 7, 8 & 9 25/10/07

Η ΔΟΜΗ ΕΠΑΝΑΛΗΨΗΣ Εντολές Επανάληψης REPEAT UNTIL, FOR, WHILE

lab5grades Διαδικαστικά: όλα οκ, αλλά καθυστερήσατε στην αποστολή. Να προσέχετε να στέλνετε τις ασκήσεις σας εντός της προθεσµίας.

ΠΑΝΕΠΙΣΤΗΜΙΟ ΘΕΣΣΑΛΙΑΣ ΣΧΟΛΗ ΘΕΤΙΚΩΝ ΕΠΙΣΤΗΜΩΝ ΤΜΗΜΑ ΠΛΗΡΟΦΟΡΙΚΗΣ

lab13grades 449 PASS 451 PASS PASS FAIL 1900 FAIL Page 1

Δεν έστειλες την άσκηση 1, και αυτό που έστειλες ήταν σκέτο αρχείο, όχι το tgz που ζητούσε η εκφώνηση.

Ασκήσεις Προγραμματισμού για το Μάθημα : Εφαρμογές Πληροφορικής. Π=3.14 Μεταβλητές Πραγματικές: X,A,B,Y Αρχή

Τμήμα Χρηματοοικονομικής & Ελεγκτικής ΤΕΙ Ηπείρου Παράρτημα Πρέβεζας. Πληροφορική Ι. Αναπαράσταση αριθμών στο δυαδικό σύστημα. Δρ.

Αρχιτεκτονική Υπολογιστών Εργαστήριο

Εισαγωγή στην επιστήμη των υπολογιστών

Αρχιτεκτονική Υπολογιστών Ασκήσεις Εργαστηρίου

Εργαστήριο 2ο. Περίγραμμα Εργαστηριακής Άσκησης

Λειτουργικά Συστήματα

Εξοικ Εξ ε οικ ίωση ε με το το πρόγ ραμμα πρόγ DEV C++ Επικοι Επικ νωνία οι Χρήσ Χρήστη τη Υπολ Υπο ογισ λ τή

ΠΑΝΕΠΙΣΤΗΜΙΟ ΠΑΤΡΩΝ ΠΟΛΥΤΕΧΝΙΚΗ ΣΧΟΛΗ ΤΜΗΜΑ ΜΗΧΑΝΙΚΩΝ ΗΛΕΚΤΡΟΝΙΚΩΝ ΥΠΟΛΟΓΙΣΤΩΝ ΚΑΙ ΠΛΗΡΟΦΟΡΙΚΗΣ

Εισαγωγή στον Προγραμματισμό

Δυαδικό Σύστημα Αρίθμησης

Εισαγωγή στην Πληροφορική & τον Προγραμματισμό

Αρχιτεκτονική Υπολογιστών

ΑΣΚΗΣΗ 2: ΔΟΜΗ ΠΡΟΓΡΑΜΜΑΤΟΣ C, ΧΕΙΡΙΣΜΟΣ ΜΕΤΑΒΛΗΤΩΝ ΚΑΙ ΣΥΝΑΡΤΗΣΕΙΣ ΕΙΣΟΔΟΥ ΚΑΙ ΕΞΟΔΟΥ

- Σωστή χρήση του προσδιοριστή const για την σταθερά pi. Καλό θα ήταν επιλέξετε κεφαλαία γράµµατα για το όνοµα της σταθεράς.

ΕΡΓΑΣΙΑ ΕΞΑΜΗΝΟΥ - ΜΕΡΟΣ Γ'

Αριθμητικά Συστήματα

lab2grades printf("calculus: %.4lf\n", calculus);

! Εάν ο αριθμός διαθέτει περισσότερα bits, χρησιμοποιούμε μεγαλύτερες δυνάμεις του 2. ! Προσοχή στη θέση του περισσότερο σημαντικού bit!

ΠΑΝΕΠΙΣΤΗΜΙΟ ΠΑΤΡΩΝ ΠΟΛΥΤΕΧΝΙΚΗ ΣΧΟΛΗ ΤΜΗΜΑ ΜΗΧΑΝΙΚΩΝ ΗΛΕΚΤΡΟΝΙΚΩΝ ΥΠΟΛΟΓΙΣΤΩΝ ΚΑΙ ΠΛΗΡΟΦΟΡΙΚΗΣ

Βαθμός Σχόλιο. lab3_grades

Πράξεις με δυαδικούς αριθμούς

Εισαγωγή στους Η/Υ. Γιώργος Δημητρίου. Μάθημα 7 και 8: Αναπαραστάσεις. Πανεπιστήμιο Θεσσαλίας - Τμήμα Πληροφορικής

Εισαγωγή στην επιστήµη των υπολογιστών ΑΡΙΘΜΗΤΙΚΑ ΣΥΣΤΗΜΑΤΑ

Τύποι Δεδομένων Είσοδος/Έξοδος

Κεφάλαιο 2. Συστήματα Αρίθμησης και Αναπαράσταση Πληροφορίας. Περιεχόμενα. 2.1 Αριθμητικά Συστήματα. Εισαγωγή

ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ Η/Υ Ακαδημαϊκό έτος ΤΕΤΡΑΔΙΟ ΕΡΓΑΣΤΗΡΙΟΥ #4

ΠΛΗΡΟΦΟΡΙΚΗ I Ενότητα 6

Ανασκόπηση στα ΑΡΙΘΜΗΤΙΚΑ ΣΥΣΤΗΜΑΤΑ

Transcript:

ΕΡΓΑΣΤΗΡΙΟ 3 ΕΡΓΑΣΤΗΡΙΟ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ I, ΑΚΑΔΗΜΑΪΚΟ ΕΤΟΣ 2014-2015 Στόχοι Εξάσκηση στη βασική είσοδο / έξοδο Εξάσκηση στη χρήση µεταβλητών Δυαδικοί τελεστές Φορµαρισµένη έξοδος Πριν ξεκινήσετε Βήµα 1: Ανοίξτε ένα τερµατικό και γράψτε τα παρακάτω : chmod -R go-rwx ~/ce120 (όπου ce120 είναι ο φάκελος του µαθήµατος. Αν είναι διαφορετικό π.χ ce_120 προσαρµόστε ανάλογα) Βήµα 2: Πηγαίνετε στο φάκελο ce120 και κατασκευάστε µέσα σε αυτόν ένα φάκελο µε όνοµα lab3. Μέσα σε αυτό το φάκελο θα αποθηκεύσετε τις απαντήσεις σας για το σηµερινό εργαστήριο. Βήµα 3: Ανοίξτε το Kate. Αν δεν έχετε κάνει τις ρυθµίσεις για τη στοίχιση, κάντε τις τώρα. Οδηγίες εδώ. Βήµα 4: Κάντε τις ασκήσεις της εβδοµάδας. Σας θυµίζουµε πως η εντολή για να κάνετε compile ένα αρχείο µε όνοµα lab3.c είναι : gcc -g -Wall lab3.c -o lab3. Αν δεν υπάρχουν λάθη, θα δηµιουργηθεί το εκτελέσιµο αρχείο lab3 το οποίο µπορείτε να εκτελέσετε γράφοντας./lab3.

Άσκηση 1 Το πρόγραµµα που θα γράψετε για την άσκηση 1 πρέπει να το αποθηκεύσετε σε αρχείο µε όνοµα lab3a.c µέσα στο φάκελο lab3. Προσοχή! Διαβάστε όλη την εκφώνηση της άσκησης πριν αρχίσετε να γράφετε κώδικα! Γράψτε ένα πρόγραµµα σε C το οποίο διαβάζει έναν ακέραιο αριθµό από την κονσόλα. Εάν ο αριθµός αυτός είναι θετικός τον διαιρεί δια 4. Εάν είναι αρνητικός υπολογίζει το συµπλήρωµα ως προς 2 του αριθµού αυτού. Προσοχή: Η διαίρεση θα πρέπει να γίνει µε κατάλληλο τελεστή σε επίπεδο bits και όχι µε χρήση του τελεστή διαίρεσης (/). Πιο συγκεκριµένα το πρόγραµµα σας θα πρέπει να κάνει τα εξής: 1. Εκτυπώνει στην οθόνη το µήνυµα "Enter integer: ". 2. Διαβάζει τον αριθµό από την κονσόλα. 3. Κάνει τις απαραίτητες πράξεις για να υπολογίσει το πηλίκο δια 4 του αριθµού αυτού και το συµπλήρωµα του ως προς 2. 4. Με χρήση του τελεστή συνθήκης? επιλέγεται το τελικό αποτέλεσµα. 5. Εκτυπώνει τα αποτελέσµατα στην παρακάτω µοφή: Enter integer: XXXXXX Number is : XXXXXX Result is : YYYYΥY όπου ο χαρακτήρας : ακολουθείται από ένα χαρακτήρα tab, XXXXΧΧ είναι o α ακέραιος όπως δόθηκε από τον χρήστη και YYYYYY είναι το αποτέλεσµα όπως υπολογίστηκε από το πρόγραµµα. Ο κάθε αριθµός θα πρέπει να καταλαµβάνει τουλάχιστον 6 ψηφία κατά την εκτύπωση. Εάν είναι µικρότερος από 6 ψηφία τα πρώτα ψηφία δεν θα πρέπει να καταλαµβάνονται από µηδενικά. Στην παρακάτω εικόνα δίνεται ενδεικτική εκτέλεση του προγράµµατος.

Συµπλήρωµα ως προς 2 Με τη µέθοδο του "συµπληρώµατος ως προς 2" οι υπολογιστές µετατρέπουν τους αριθµούς από θετικούς σε αρνητικούς και αντίστροφα. Η µέθοδος συνοψίζεται στα εξής βήµατα για την µετατροπή ενός θετικού αριθµού σε αρνητικό ή ενός αρνητικού αριθµού σε θετικό: 1. Αντιστρέφουµε όλα τα bits του αρχικού αριθµού. 2. Προσθέτουµε την τιµή 1. Γενικές παρατηρήσεις: Παρατηρήστε πως για να λειτουργήσει το πρόγραµµά σας θα χρειαστεί να δηλώσετε κατάλληλες µεταβλητές όχι µόνο για τις ποσότητες που αναφέρουµε πιο πάνω, αλλά πιθανώς και για να αποθηκεύσετε ενδιάµεσα αποτελέσµατα κατά τους υπολογισµούς σας. Φροντίστε οι µεταβλητές σας να έχουν περιγραφικά ονόµατα και κατάλληλο τύπο. Επιπλέον, το πρόγραµµά σας πρέπει να έχει σωστή στοίχιση και χρήσιµα σχόλια. Τα σχόλια πρέπει να ακολουθούν τις αρχές που περιγράφονται στο φυλλάδιο "Πρότυπα σχολιασµού προγραµµάτων". Το πρόγραµµά σας πρέπει να µεταγλωττίζεται χωρίς λάθη ή προειδοποιήσεις και να εκτελείται ακριβώς όπως περιγράφεται πιο πάνω. Αρχεία άσκησης 1 προς παράδοση: lab3a.c

Άσκηση 2 Το πρόγραµµα που θα γράψετε για την άσκηση 2 πρέπει να το αποθηκεύσετε σε αρχείο µε όνοµα lab3b.c µέσα στο φάκελο lab3. Γράψτε ένα πρόγραµµα σε C το οποίο διαβάζει έναν µη προσηµασµένο ακέραιο αριθµό από την κονσόλα. Από τον αριθµό που διαβάστηκε αθροίζουµε δύο λιγότερα σηµαντικά bytes µε τα δύο περισσότερο σηµαντικά bytes σαν να ήταν δύο διαφορετικοί µη προσηµασµένοι ακέραιοι και εκτυπώνουµε το αποτέλεσµα. Πιο συγκεκριµένα το πρόγραµµα σας θα πρέπει να κάνει τα εξής: όπου 1. Εκτυπώνει στην οθόνη το µήνυµα "Enter a positive int in hex format: ". 2. Διαβάζει έναν δεκαεξαδικό αριθµό από την κονσόλα. 3. Κάνει τις απαραίτητες πράξεις για να υπολογίσει α) τα 2 λιγότερα σηµαντικά bytes ως έναν ακέραιο αριθµό, b) τα 2 περισσότερο σηµαντικά bytes ως έναν άλλο ακέραιο αριθµό γ) να υπολογίσει το άθροισµα τους. 4. Εκτυπώνει τα αποτελέσµατα στην παρακάτω µορφή: Given number : 0xXXXXXXXX LS 2 bytes are : MS 2 bytes are : 0xΥYYY or yyyyy 0xZZZZ or zzzzz Result is : 0xRRRRR or rrrrrr ο χαρακτήρας : ακολουθείται από ένα χαρακτήρα tab, 0xXXXΧXXXX είναι o ακέραιος όπως δόθηκε από τον χρήστη, µήκους 8 χαρακτήρων. Εάν ο αριθµός έχει µήκος µικρότερο των 8 χαρακτήρων, οι χαρακτήρες που υπολοίπονται να συµπληρώνονται µε µηδενικά. 0xYYYY και yyyyy είναι τα 2 λιγότερο σηµαντικά bytes (LS-Less Significant) σε δεκαεξαδική και δεκαδική µορφή αντίστοιχα, 0xZZZZ και zzzzz είναι τα 2 περισσότερο σηµαντικά bytes σε δεκαεξαδική και δεκαδική µορφή αντίστοιχα και 0xRRRRR και rrrrrr είναι το αποτέλεσµα όπως υπολογίστηκε από το πρόγραµµα σε δεκαεξαδική και δεκαδική µορφή αντίστοιχα. Στην παρακάτω εικόνα δίνονται 3 ενδεικτικές εκτελέσεις του προγράµµατος.

Γενικές παρατηρήσεις: Παρατηρήστε πως για να λειτουργήσει το πρόγραµµά σας θα χρειαστεί να δηλώσετε κατάλληλες µεταβλητές όχι µόνο για τις ποσότητες που αναφέρουµε πιο πάνω, αλλά πιθανώς και για να αποθηκεύσετε ενδιάµεσα αποτελέσµατα κατά τους υπολογισµούς σας. Φροντίστε οι µεταβλητές σας να έχουν περιγραφικά ονόµατα και κατάλληλο τύπο. Επιπλέον, το πρόγραµµά σας πρέπει να έχει σωστή στοίχιση και χρήσιµα σχόλια. Τα σχόλια πρέπει να ακολουθούν τις αρχές που περιγράφονται στο φυλλάδιο "Πρότυπα σχολιασµού προγραµµάτων". Το πρόγραµµά σας πρέπει να µεταγλωττίζεται χωρίς λάθη ή προειδοποιήσεις και να εκτελείται ακριβώς όπως περιγράφεται πιο πάνω. Αρχεία άσκησης 2 προς παράδοση: lab3b.c

Αποστολή του προγράµµατος για διόρθωση και σχολιασµό Για να στείλετε το πρόγραµµά σας για βαθµολόγηση, ανοίξτε ένα τερµατικό (ή χρησιµοποιήστε αυτό του Kate), πηγαίνετε στο φάκελο lab3, και χρησιµοποιήστε την εντολή mkdir για να κατασκευάσετε ένα νέο φάκελο µέσα στο lab3 µε βάση τα ονόµατα των δύο µελών της οµάδας. Για την ακρίβεια, το όνοµα του φακέλου πρέπει να είναι (µε λατινικούς χαρακτήρες) : επώνυµο1_am1_επώνυµο2_αμ2, όπου ΑΜ είναι ο τετραψήφιος αριθµός µητρώου σας. Για παράδειγµα, mkdir doufexi_1234_antonopoulos_5678 Αντιγράψτε τα lab3α.c και lab3b.c µέσα στο νέο φάκελο, όπως παρακάτω: cp -v lab3?.c doufexi_1234_antonopoulos_5678/ Τέλος πακετάρετε και συµπιέστε το φάκελο µε το πρόγραµµά σας. Η εντολή είναι: tar cvzf επώνυµο1_αμ1_επώνυµο2_αμ2.tgz επώνυµο1_αμ1_επώνυµο2_αμ2 Θα πρέπει να δηµιουργηθεί το αρχείο µε όνοµα επώνυµο1_αμ1_επώνυµο2_αμ2.tgz. Αν εµφανιστεί κάποιο µήνυµα λάθους ή δε δηµιουργηθεί το αρχείο, ζητήστε βοήθεια! Στη συνέχεια στείλτε ένα email: στη διεύθυνση: ce120lab@gmail.com µε τίτλο (subject): CE120 lab3 sectionx όπου X είναι ο αριθµός του τµήµατος, πχ section6 για µια οµάδα του τµήµατος 6. CC στο άλλο µέλος της οµάδας σας, και συνηµµένο (attached) το αρχείο: επώνυµο1_αμ1_επώνυµο2_αμ2.tgz µέσα στο email γράψτε τα ονόµατα των δύο µελών της οµάδας. Αφού στείλετε το email, επιβεβαιώστε ότι είχε σωστό attachment κι ότι έλαβε αντίγραφο και το άλλο µέλος της οµάδας. Το άλλο µέλος της οµάδας µπορεί να ξεπακετάρει το tgz αρχείο στο δικό του υπολογιστή µε την εντολή tar xvzf επώνυµο1_αμ1_επώνυµο2_αμ2.tgz ΜΗΝ ΞΕΧΑΣΕΤΕ ΝΑ ΚΑΝΕΤΕ LOGOUT ΠΡΙΝ ΦΥΓΕΤΕ!!