Διαδρομές
/
Cairo
Cairo
/
Ύλη
/
Ακέραιοι
Ακ

Ακέραιοι σε Cairo

1 άσκηση

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

Ένας integer είναι ένας αριθμός χωρίς κλασματικό μέρος. Στην Cairo, η δήλωση τύπου για τους ακέραιους δείχνει τον αριθμό των bit που μπορεί να χρησιμοποιήσει ο προγραμματιστής για να αποθηκεύσει την τιμή.

Οι ακέραιοι χωρίς πρόσημο μπορούν να αναπαραστήσουν μόνο θετικούς αριθμούς και τον αριθμό 0 (μηδέν), κάτι που μπορεί να είναι χρήσιμο σε ορισμένες περιπτώσεις προγραμματισμού, όπως η πρόσβαση σε θέσεις ενός πίνακα και η διαχείριση μνήμης.

Η Cairo παρέχει επίσης υποστήριξη για ακέραιους με πρόσημο, που ξεκινούν με το πρόθεμα i. Αυτοί οι ακέραιοι μπορούν να αναπαραστήσουν και θετικές και αρνητικές τιμές, με μεγέθη που κυμαίνονται από i8 έως i128. Κάθε παραλλαγή με πρόσημο μπορεί να αποθηκεύσει αριθμούς από $-2^{n-1}$ έως $2^{n-1} - 1$ συμπεριλαμβανομένων, όπου $n$ είναι ο αριθμός των bit που χρησιμοποιεί αυτή η παραλλαγή. Για παράδειγμα, ένα i8 μπορεί να αποθηκεύσει αριθμούς από $-2^7$ έως $2^7 - 1$, που ισούται με $-128$ έως $127$.

Μήκος Χωρίς πρόσημο Με πρόσημο
8 bit u8 i8
16 bit u16 i16
32 bit u32 i32
64 bit u64 i64
128 bit u128 i128
256 bit u256 ------

Υπάρχει επίσης ένας ειδικός τύπος ακέραιου που ονομάζεται usize, ο οποίος αυτή τη στιγμή είναι απλώς ένα ψευδώνυμο για το u32. Αυτός ο τύπος μπορεί να παίξει πιο ξεχωριστό ρόλο στο μέλλον, όταν η Cairo θα μπορεί να μεταγλωττιστεί σε MLIR (Multi-Level Intermediate Representation).

Ακέραια κυριολεκτικά στην Cairo

Μπορείς να γράψεις ακέραια κυριολεκτικά σε οποιαδήποτε από τις μορφές που φαίνονται στον παρακάτω πίνακα. Σημείωσε ότι τα αριθμητικά κυριολεκτικά που μπορούν να είναι πολλαπλοί αριθμητικοί τύποι επιτρέπουν ένα επίθεμα τύπου, όπως 57_u8, για να προσδιορίσουν τον τύπο. Είναι επίσης δυνατό να χρησιμοποιήσεις έναν οπτικό διαχωριστικό _ στα αριθμητικά κυριολεκτικά, ώστε να βελτιώσεις την αναγνωσιμότητα του κώδικα.

Αριθμητικά κυριολεκτικά Παράδειγμα
Δεκαδικό 98222
Δεκαεξαδικό 0xff
Οκταδικό 0o04321
Δυαδικό 0b01

Πώς ξέρεις, λοιπόν, ποιον τύπο ακέραιου να χρησιμοποιήσεις; Προσπάθησε να εκτιμήσεις τη μέγιστη τιμή που μπορεί να πάρει ο ακέραιός σου και διάλεξε το κατάλληλο μέγεθος. Η κύρια περίπτωση όπου θα χρησιμοποιούσες το usize είναι όταν χρειάζεται να προσπελάσεις στοιχεία κάποιας συλλογής με τη θέση τους.

Αριθμητικές πράξεις

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

fn main() {
    // addition
    let sum = 5_u128 + 10_u128;

    // subtraction
    let difference = 95_u128 - 4_u128;

    // multiplication
    let product = 4_u128 * 30_u128;

    // division
    let quotient = 56_u128 / 32_u128; // result is 1
    let quotient = 64_u128 / 32_u128; // result is 2

    // remainder
    let remainder = 43_u128 % 5_u128; // result is 3
}

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

Τη λίστα με όλους τους τελεστές που παρέχει η Cairo θα τη βρεις στο The Cairo Book.

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

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

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

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