Εργαστήριο Τεχνολογίας Λογισμικού
+1 vote
307 views

Δύο απορίες σχετικά με την άσκηση 3:

  1. Πώς μπορώ να βάλω αρνητικό πρόσημο μπροστά στο 0;

  2. Αν στην εντολή switch γράψω ένα case, του πω τι να κάνει και γράψω τι να τυπώσει, μπορώ να συνεχίσω για επόμενο case; Η χρειάζεται να κλεισω το switch και να ανοίξω επόμενο switch και πάλι το ίδιο;

in progintro by (160 points)
edited by | 307 views
+3

Η εντολη switch αντικαθιστα τα αλλεπαλληλα if και else if. Στην θεση του καθε if μπαινει το καθε case αντιστοιχα οταν εχουμε να ελεγξουμε συνηθως πανω απο 2 η 3 διαφορετικες περιπτωσεις. Επομένως μεσα σε ENA switch γραφεις ολα τα cases. Aφου εκτελεστει το case που θελεις o compiler δεν προχωρα στην εξεταση του επομενου οταν γραψεις πριν απο αυτο break;. Για να συνεχιστει ο ελεγχος της επομενης πραξης προφανως ολο αυτο πρεπει να βρισκεται μεσα σε ενα βροχο επαναληψης. Για το προσημο θα μπορουσε καποιος να ελεγξει εαν ενα απο τα 2 (αριθμητης η παρονομαστης ειναι αρνητικος) να τυπωνει το προσημο ξεχωριστα (με ενα if πριν την μετατροπη σε μεικτο αριθμο) και στην συνεχεια να δουλεψει με απολυτες τιμες ( ετσι καλυπτεται και η περιπτωση του 0). hope it's helpful:)

1 Answer

0 votes

Για να εκτυπώσεις -0 μπορείς απλά να τυπώσεις ξεχωριστά το - και το 0:

WRITE('-');
WRITE(0);

Προσοχή, όχι με την ίδια εντολή WRITE γιατί τότε θα τυπωθεί ένα κενό διάστημα ανάμεσα.

Η ερώτηση 2 (αν την κατάλαβα σωστά), απαντήθηκε στο σχόλιο του mlazoy.

by (9.5k points)

301 questions

289 answers

288 comments

903 users