Αρ

Αριθμοί σε Ruby

52 ασκήσεις

Σχετικά με την έννοια Αριθμοί

Ένα από τα βασικά σημεία όταν δουλεύεις με αριθμούς στη Ruby είναι η διάκριση ανάμεσα στους ακέραιους (αριθμούς χωρίς ψηφία μετά το δεκαδικό διαχωριστικό) και τους αριθμούς κινητής υποδιαστολής (αριθμούς με μηδέν ή περισσότερα ψηφία μετά το δεκαδικό διαχωριστικό). Υλοποιούνται μέσα από τις κλάσεις Integer και Float.

a = 1
b = 1.0
a.class
#=> Integer
b.class
#=> Float
  • Η αριθμητική γίνεται με τους βασικούς αριθμητικούς τελεστές (+, -, *, /). Οι αριθμοί μπορούν να συγκριθούν με τους κλασικούς τελεστές σύγκρισης.
  • Οι βασικές αριθμητικές πράξεις ανάμεσα σε στιγμιότυπα Integer έχουν πάντα ως αποτέλεσμα ένα στιγμιότυπο Integer.
  • Οι βασικές αριθμητικές πράξεις ανάμεσα σε στιγμιότυπα Float έχουν ως αποτέλεσμα άλλα στιγμιότυπα Float.
  • Οι βασικές αριθμητικές πράξεις ανάμεσα σε στιγμιότυπα Integer και σε στιγμιότυπα Float έχουν ως αποτέλεσμα στιγμιότυπα Float.
  • Οι κλάσεις Float και Integer έχουν μεθόδους που μετατρέπουν τιμές από τη μία στην άλλη. Οι αριθμοί Integer είναι ακριβείς ως προς την ακέραιη μονάδα, ενώ το Float έχει κλασματική ακρίβεια ως προς έναν ακέραιο αριθμό. Αυτό σημαίνει ότι η μετατροπή ενός float σε integer μπορεί να οδηγήσει σε απώλεια ακρίβειας.
4.9.to_i
#=> 4

5.to_f
#=> 5.0

7 - 3.0
#=> 4.0

2 == 4
#=> false

1.0 == 1
#=> true

Μια εντολή if μπορεί να χρησιμοποιηθεί για να εκτελέσεις κώδικα υπό συνθήκη:

x = 5

if x == 5
  # Execute logic if x equals 5
elsif x > 7
  # Execute logic if x greater than 7
else
  # Execute logic in all other cases
end

Κάποιες φορές θέλεις να εκτελέσεις μια εντολή (ή εντολές) αν μια συνθήκη δεν είναι αληθής. Για τέτοιες περιπτώσεις, η Ruby υλοποιεί τη λέξη-κλειδί unless:

x = 4
unless x == 5
  # Execute logic if x does not equal 5
else
  # Execute logic if x == 5
end

Αν θέλεις να εκτελέσεις διαφορετικό κώδικα ανάλογα με την τιμή μιας μεταβλητής, η εντολή case της Ruby μπορεί να σου φανεί χρήσιμη:

y = 5
case y
when 3
  # Execute logic if y equals 3
when 5
  # Execute logic if y equals 5
else
  # Execute logic in all other cases
end

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

Επεξεργασία μέσω GitHub Ο σύνδεσμος ανοίγει σε νέο παράθυρο ή καρτέλα

Μάθε την έννοια Αριθμοί

Η εξάσκηση είναι κλειδωμένη

Ξεκλείδωσε 8 ακόμη ασκήσεις για να εξασκηθείς στην έννοια Αριθμοί