Δημοσιεύτηκε: 30 Δεκ 2014, 02:40
μία διόρθωση και μία πολύ σημαντική (θεωρώ) παρατήρηση:
η διόρθωση:
στο "2. Ανάθεση τιμής", στο τελευταίο κομμάτι κώδικα...
αντί για: System.out.print("\nΈδωσες "+i+" "+j+"\n");
νομίζω ότι θέλεις να γράψεις: System.out.print("\nΈδωσες "+i+" "+d+"\n");
η παρατήρηση:
στο ίδιο κομμάτι κώδικα...
κάνοντας compile με open-jdk έχουμε (νομίζω) το αποτέλεσμα που θέλουμε.
κάνοντας compile με gcj έχουμε άλλο αποτέλεσμα...
πρώτα περιμένει να διαβάσει τον int,
μετά εμφανίζει το "δώσε έναν ακέραιο",
μετά περιμένει να διαβάσει τον double,
μετά εμφανίζει το "και ένα πραγματικό",
μετά περιμένει να διαβάσει έναν δεύτερο double,
τελικά εκτυπώνει τον Int και τον πρώτο double...
είναι δυνατόν, ο ίδιος ακριβώς κώδικας, όταν γίνεται compile με δύο διαφορετικούς compliers, να δίνει τόσο διαφορετικά αποτελέσματα?
κάτι στραβό δεν συμβαίνει?
η διόρθωση:
στο "2. Ανάθεση τιμής", στο τελευταίο κομμάτι κώδικα...
αντί για: System.out.print("\nΈδωσες "+i+" "+j+"\n");
νομίζω ότι θέλεις να γράψεις: System.out.print("\nΈδωσες "+i+" "+d+"\n");
η παρατήρηση:
στο ίδιο κομμάτι κώδικα...
κάνοντας compile με open-jdk έχουμε (νομίζω) το αποτέλεσμα που θέλουμε.
κάνοντας compile με gcj έχουμε άλλο αποτέλεσμα...
πρώτα περιμένει να διαβάσει τον int,
μετά εμφανίζει το "δώσε έναν ακέραιο",
μετά περιμένει να διαβάσει τον double,
μετά εμφανίζει το "και ένα πραγματικό",
μετά περιμένει να διαβάσει έναν δεύτερο double,
τελικά εκτυπώνει τον Int και τον πρώτο double...
είναι δυνατόν, ο ίδιος ακριβώς κώδικας, όταν γίνεται compile με δύο διαφορετικούς compliers, να δίνει τόσο διαφορετικά αποτελέσματα?
κάτι στραβό δεν συμβαίνει?