1. Tìm hiểu kỹ hơn về kiểu int
Nếu bạn muốn lưu số nguyên trong biến, bạn cần dùng kiểu int. int là viết tắt của Integer (số nguyên trong tiếng Anh), kiểu này cho phép lưu trữ số nguyên.
Biến kiểu int có thể lưu số nguyên trong phạm vi từ -2,147,483,648 đến 2,147,483,647 (nói đơn giản là từ -2 tỷ đến +2 tỷ).
Fun fact
Những giá trị không tròn này là do cách bộ nhớ máy tính hoạt động. Trong C#, kiểu int chiếm 4 byte bộ nhớ. Mỗi byte có 8 bit. Mỗi bit chỉ có thể là 0 hoặc 1. Biến kiểu int có 32 bit và có thể lưu 4,294,967,296 giá trị.
Một nửa phạm vi này dành cho số âm, nửa còn lại cho số dương. Vậy nên mới có phạm vi từ -2,147,483,648 đến 2,147,483,647.
2. Tạo biến kiểu int
Kiểu int dùng để lưu số nguyên. Để tạo biến lưu số nguyên trong code, bạn dùng lệnh kiểu như sau:
int ten;
Trong đó ten là tên biến. Ví dụ:
| Lệnh | Mô tả |
|---|---|
|
Tạo biến số nguyên x |
|
Tạo biến số nguyên count |
|
Tạo biến số nguyên currentYear |
Chữ hoa/thường có ý nghĩa: lệnh int color và int Color sẽ tạo hai biến khác nhau.
Còn lệnh Int Color và INT COLOR thì compiler sẽ không hiểu và báo lỗi. int là từ khóa đặc biệt, chỉ viết thường thôi.
3. Ghi tắt khi tạo nhiều biến
Nếu bạn cần tạo nhiều biến cùng kiểu trong một chỗ, có thể dùng cách ghi tắt:
int ten1, ten2, ten3;
Ví dụ:
| Lệnh | Ghi tắt |
|---|---|
|
|
|
|
|
|
4. Gán giá trị
Để gán giá trị cho biến kiểu int, bạn dùng lệnh:
ten = giatri;
Giá trị có thể là bất kỳ biểu thức số nguyên nào. Ví dụ:
| Lệnh | Ghi chú |
|---|---|
|
|
|
Biến này sẽ có giá trị "2 tỷ" |
|
Biến này sẽ có giá trị "âm 10 triệu" |
|
Không biên dịch được, vì 3,000,000,000 lớn hơn giá trị tối đa kiểu int 2,147,483,647 |
5. Ghi tắt khai báo và khởi tạo biến
Khai báo biến và gán giá trị có thể ghi trên một dòng. Thường thì mọi người làm vậy luôn, vì biến thường được khai báo khi cần lưu giá trị nào đó.
Lệnh sẽ như sau:
int ten = giatri;
Ví dụ:
| Lệnh | Ghi chú |
|---|---|
|
|
|
Biến này sẽ có giá trị "2 tỷ" |
|
Biến này sẽ có giá trị "âm 10 triệu" |
|
Không biên dịch được, vì 3,000,000,000 lớn hơn giá trị tối đa kiểu int: 2,147,483,647 |
Bạn cũng có thể khai báo nhiều biến trên một dòng. Lệnh sẽ như sau:
int ten1 = giatri1, ten2 = giatri2;
Ví dụ:
| Lệnh | Ghi chú |
|---|---|
|
a bằng 5, b bằng 10, c bằng 15 |
6. Tính toán biểu thức số nguyên
Bên phải dấu gán (=) có thể là bất kỳ biểu thức nào – kết hợp số, biến và các dấu +, -, *, /.
Bạn cũng có thể dùng dấu ngoặc ( ). Trong C#, giống toán học, tính trong ngoặc trước, ngoài ngoặc sau. Nhân và chia ưu tiên hơn cộng trừ.
Ví dụ:
| Lệnh | Ghi chú |
|---|---|
|
Biến này sẽ có giá trị 8 |
|
Biến này sẽ có giá trị 1 |
|
Biến này sẽ có giá trị 6 |
|
Chạy lệnh này sẽ lỗi và chương trình dừng. |
Biểu thức cũng có thể dùng biến:
int a = 1; // Biến a sẽ có giá trị 1
int b = 2; // Biến b sẽ có giá trị 2
int c = a * b + 2; // Biến c sẽ có giá trị 4
Thậm chí, một biến có thể vừa ở bên trái vừa ở bên phải dấu gán:
int x = 5; // Biến x sẽ có giá trị 5
x = x + 1; // Biến x sẽ có giá trị 6
x = x + 1; // Biến x sẽ có giá trị 7
x = x + 1; // Biến x sẽ có giá trị 8
x = x + 1; // Biến x sẽ có giá trị 9
x = x + 1; // Biến x sẽ có giá trị 10
Trong C#, dấu = không phải là dấu bằng, mà là lệnh gán giá trị cho biến bên trái = bằng giá trị tính được bên phải =.
7. Chia số nguyên
Trong C#, khi chia số nguyên cho số nguyên thì kết quả luôn là số nguyên. Phần dư bị bỏ đi. Nói cách khác, phần thập phân bị bỏ.
Ví dụ:
| Lệnh | Kết quả chia | Ghi chú |
|---|---|---|
|
2.5 | Biến a sẽ có giá trị 2 |
|
6.6667 | Biến b sẽ có giá trị 6 |
|
-1.2 | Biến c sẽ có giá trị -1 |
|
0.5 | Biến d sẽ có giá trị 0 |
8. Lấy dư khi chia số nguyên
Ngoài cộng, trừ, nhân, chia, với số nguyên trong C# còn có toán tử "lấy dư". Dùng ký hiệu phần trăm – %. Đây là phần dư khi chia số nguyên cho số nguyên, không phải phần thập phân nhé.
Ví dụ:
| Lệnh | Kết quả chia | Ghi chú |
|---|---|---|
|
2 và 1 dư |
Biến a sẽ có giá trị 1 |
|
5 và 0 dư |
Biến b sẽ có giá trị 0 |
|
1 và 4 dư |
Biến c sẽ có giá trị 4 |
|
0 và 1 dư |
Biến d sẽ có giá trị 1 |
Đây là toán tử rất hữu ích, dùng khá nhiều. Ví dụ, để kiểm tra số chẵn hay lẻ, chỉ cần chia cho 2 và so sánh phần dư với 0. Nếu dư bằng 0 thì số chẵn, dư bằng 1 thì số lẻ.
Kiểm tra như sau:
(a % 2) == 0
Như bạn đoán rồi, a % 2 là lấy dư khi chia cho 2 (tức là 0 hoặc 1), còn == là so sánh với 0.
9. Tăng giảm giá trị (Increment và Decrement)
Lập trình thường xuyên phải tăng hoặc giảm biến lên 1. Trong C# có lệnh riêng cho việc này:
Toán tử increment (tăng 1) như sau:
a++;
Lệnh này giống như a = a + 1; – tăng biến a lên 1.
Toán tử decrement (giảm 1) như sau:
a--;
Lệnh này giống như a = a - 1; – giảm biến a đi 1.
Ví dụ 1
int x = 5; // Biến x sẽ có giá trị 5
x++; // Biến x sẽ có giá trị 6
x++; // Biến x sẽ có giá trị 7
x++; // Biến x sẽ có giá trị 8
x++; // Biến x sẽ có giá trị 9
x++; // Biến x sẽ có giá trị 10
Ví dụ 2
int x = 5; // Biến x sẽ có giá trị 5
x--; // Biến x sẽ có giá trị 4
x--; // Biến x sẽ có giá trị 3
x--; // Biến x sẽ có giá trị 2
x--; // Biến x sẽ có giá trị 1
x--; // Biến x sẽ có giá trị 0
x--; // Biến x sẽ có giá trị -1
GO TO FULL VERSION