Bài 3: Các phép toán - Khai báo hằng - Pdf 13


LẬP TRÌNH HƯỚNG ĐỐI TƯỢNG
Bài 3 Các phép toán – khai báo hằng
Nội dung
Các phép toán trên các kiểu dữ liệu cơ
bản
Kiểu liệt kê (enumeration)
Hằng

Các phép toán -Operators
Tạo 1 project mới để thử nghiệm các phép toán

Đặt tên cho tập tin class này . Ví dụ OperarorDemo.cs


Nhập thử chương trình sau
namespace Example1
{
class OperatorDemo
{
static void Main(string[] args)
{
float a = 5.5f;
float b = 2.0f;
float c;
int i = 7;
int j = 2;
int k;

c = a + b;
Console.WriteLine("c = {0}",c);


int i = 7;
int j = 2;
int k;
k = i / j;
Console.WriteLine("k is {0}",k}

Kết quả in ra :
k is 3

Phép chia 7/2 cho kết quả là 3.

int i = 7;
int j = 2;
double d;
d = i / j;

System.Console.WriteLine(d); /////????

Phép chia lấy phần dư

Phép chia lếy phần dư : Áp dụng cho 2
số nguyên.

Ký hiệu : %

Ví dụ

7 % 2 = 1



d = d * 2.0;
d = d - 5.0;

C# cung cấp nhiều phép toán tự gán như +=,
-=, *=, /=

Ví dụ Dùng phép toán tự gán

d = d * 2.0; d *= 2.0;

d = d + 7.0; d += 7.0;

d = d - 5.0; d -= 5.0;

d = d / 2.0; d /= 2.0;

Ví dụ

using System;
namespace Example3
{
class ShortHandExample
{
static void Main(string[] args)
{
int i = 2;
i += 2;
Console.WriteLine("i is {0}",i);
i *= 3;

Lý do : Độ ưu tiên của các toán tử

Ghi nhớ PEMDAS. : các phép toán có độ ưu tiên
theo qui tắc sau:
parenthesis exponents multiplication division
addition subtraction
Xem lại ví dụ
5 * 2 + 6 * 3
Phép nhân có độ ưu tiên cao hơn.
10 + 18
Sau đó thi hành phép cộng.
28

• Sử dụng dấu ( và ) để thay đổi thứ tự tính toán.
5 * ( 2 + 6 ) * 3
5 * 8 * 3
40 * 3
120

Xem ví dụ sau.
4 * 3 / 2
Có thể là
4 * 3 / 2
4 * 1
4
Có thể là
4 * 3 / 2
12 / 2
6


float b = 16.0f;
Console.WriteLine("a = {0}", a);
a++;
Console.WriteLine("a = {0}", a);
a ;
Console.WriteLine("a = {0}", a);
Console.WriteLine("b = {0}", b);
b++;
Console.WriteLine("b = {0}", b);
b ;
Console.WriteLine("b = {0}", b);


Kết quả:
a = 5
a = 6
a = 5
b = 16.0
b = 17.0
b = 16.0

Toán tử ++ av2 – có thề đi trước hay sau 1 biến
Postfix: a++, a
Prefix: ++a, a
int a = 5, b;
b = a++;

Sau phép gán thì b = 5, a = 6;
int a = 5, b;
b = ++a;

enum Days {Sun, Mon, Tue, Wed, Thu, Fri, Sat}

Ngầm định : tên đầu tiên trong tập liệt kê có giá trị là 0.
Các giá trị kế tiếp tự động tăng lên 1. Trong ví dụ trên
Sun = 0, Mon = 1, Tue = 2, và tiếp theo.

Có khả năng thiết lập giá trị cho từng phần tử trong tập
liệt kê.

enum Days {Sun = 1, Mon, Tue, Wed = 57, Thu, Fri, Sat}


Trong ví dụ trên Sun = 1, Mon = 2, Tue =
3, Wed = 57, Thu = 58, Fri = 59, Sat =
60

Cũng có thể gán 1 giá trị cho nhiều phần
tử khác nhau trong 1 tập liệt kê.

enum Days {Sat = 0, Sun = 0, Mon, Tue, Wed, Thu,
Fri}
• Sat=0,Sun=0, Mon=1,Tue=2,….Fri=5.
• Ngầm định : các phần tử trong tập liệt kê
tương ứng với 1 giá trị kiểu int . Tuy vậy,
có thể sử dụng 1 kiểu nguyên khác.

enum Days {Sun, Mon, Tue, Wed, Thu, Fri, Sat}????//int
enum Days : int {Sun, Mon, Tue, Wed, Thu, Fri,
Sat}????//tương đương
enum Days : short {Sun, Mon, Tue, Wed, Thu, Fri, Sat}

Days dayOfWeek;
dayOfWeek = Days.Sun;
Console.WriteLine("The day of the week is
{0}",dayOfWeek);
dayOfWeek = Days.Fri;
Console.WriteLine("The day of the week is
{0}",dayOfWeek);
Console.WriteLine("Friday has value {0}",(int) dayOfWeek);
} } }


Kết quả in ra :
The day of the week is Sun
The day of the week is Fri
Friday has value 6

Ngầm định : Phương thức WriteLine sẽ
in ra tên phần tử trong kiểu liệt kê.
Trong ví dụ trên sẽ in ra Sun và Fri , chứ
không in ra 1 và 6.

Để in giá trị ứng với 1 phần tử kiểu liệt
kê, ta phải thực hiện ép kiểu.

Hằng - Constants

Thường có nhu cầu về việc thể hiện các
đại lương có giá trị không đổi trong khi
chương trình thi hành


Nhờ tải bản gốc

Tài liệu, ebook tham khảo khác

Music ♫

Copyright: Tài liệu đại học © DMCA.com Protection Status