Bài giảng Ngôn ngữ lập trình nâng cao - Bài 2: Cấu trúc điều khiển - Nguyễn Xuân Hùng
Cấu trúc điều khiển được sử dụng để cho phép lựa chọn xử lý
câu lệnh. Cấu trúc điều khiển trong C# là:
if else
switch case
Vòng lặp được sử dụng khi chúng ta muốn một phần của
chương trình lặp đi lặp lại một số lần nhất định. C# đưa ra một
số cấu trúc vòng lặp sau:
while
do while
for
Câu lệnh break và continue được sử dụng để điều khiển
luồng chương trình trong vòng lặp
26 trang |
Chia sẻ: huongthu9 | Lượt xem: 552 | Lượt tải: 0
Bạn đang xem trước 20 trang tài liệu Bài giảng Ngôn ngữ lập trình nâng cao - Bài 2: Cấu trúc điều khiển - Nguyễn Xuân Hùng, để xem tài liệu hoàn chỉnh bạn click vào nút DOWNLOAD ở trên
Slide 1 of 25Ver. 1.0
Object-Oriented Programming Using C#
NGÔN NGỮ LẬP TRÌNH NÂNG CAO
Slide 2 of 25Ver. 1.0
Object-Oriented Programming Using C#
Nội dung:
Sử dụng đa dạng toán tử:
Số học
Gán số học
Một ngôi
So sánh
Logic
Cấu trúc điều khiển
Cấu trúc lặp
Mục tiêu
Slide 3 of 25Ver. 1.0
Object-Oriented Programming Using C#
Ứng dụng sử dụng toán tư cho quá trình xử lý dữ liệu người
dùng nhập vào.
Toán tử trong C# có thể được phân loại như sau:
Toán tử số học
Toán tử gán toán số học
Toán tử một ngôi
Toán tử so sánh
Toán tử logic
SỬ dụng toán tử
Slide 4 of 25Ver. 1.0
Object-Oriented Programming Using C#
Toán tử số học là các ký hiệu được sử dụng thể thực thi các
các phép tính trên các biến.
Bảng sau miêu tả các toán tử số học thường sử dụng.
Toán tử số học
Operator Description Example
+ Used to add two
numbers
X=Y+Z;
If Y is equal to 20 and Z is equal to 2, X will have the
value 22.
- Used to subtract two
numbers
X=Y-Z;
If Y is equal to 20 and Z is equal to 2, X will have the
value 18.
* Used to multiply two
numbers
X=Y*Z;
If Y is equal to 20 and Z is equal to 2, X will have the
value 40.
/ Used to divide one
number by another
X=Y/Z;
If Y is equal to 21 and Z is equal to 2, X will have the
value 10.
But, if Y is equal to 21.0 and Z is equal to 2, X will
have the value 10.5.
% Used to divide two
numbers and return the
remainder
X=Y%Z;
If Y is equal to 21 and Z is equal to 2, X will contain
the value 1.
Slide 5 of 25Ver. 1.0
Object-Oriented Programming Using C#
Toán tử gán số học được sử dụng để thực thi các phép toán
số học để gán giá trị vào một toán hạng.
Bảng sau liệt kê cách sử dụng và miêu tả các toán tử gán
được sử dụng.
Toán tử gán toán học
Operator Usage Description
= X = 5; Stores the value 5 in the variable X.
+= X+=Y; Same as:
X = X + Y;
-= X-=Y; Same as:
X = X - Y;
*= X*=Y; Same as:
X = X * Y;
/= X/=Y; Same as:
X = X / Y;
%= X%=Y; Same as:
X = X % Y;
Slide 6 of 25Ver. 1.0
Object-Oriented Programming Using C#
Toán tử một ngôi được sử dụng để tang hoặc giảm giá trị
của toán hạng đi 1 đơn vị.
Bảng sau giải thích cách sử dụng toán tử tang và giảm.
Toán tử một ngôi
Operator Usage Description Example
++ ++Operand;
(Preincrement operator)
Or,
Operand++; (Postincrement
operator)
Used to
increment the
value of an
operand by 1
Y = ++X;
If the initial value of X is 5, after the
execution of the preceding statement, values
of both X and Y will be 6.
Y = X++;
If the initial value of X is 5, after the
execution of the preceding statement, value
of X will be 6 and the value of Y will be 5.
-- --Operand;
(Predecrement operator)
Or,
Operand--;
(Postdecrement)
Used to
decrement the
value of an
operand by 1
Y = --X;
If the initial value of X is 5, after the
execution of the preceding statement, values
of X and Y will be 4.
Y = X--;
If the initial value of X is 5, after the
execution of the preceding statement, value
of X will be 4 and the value of Y will be 5.
Slide 7 of 25Ver. 1.0
Object-Oriented Programming Using C#
Toán tử so sánh được sử dụng để so sánh hai giá trị và thực
thi một hành động từ kết quả của so sánh đó.
Bảng sau giải thích cách sử dụng của các toán tử thường sử
dụng.
Toán tử so sánh
Operator Usage Description Example
(In the following examples, the value of X
is assumed to be 20 and the value of Y is
assumed to be 25)
< expression1 <
expression2
Used to check whether
expression1 is less than
expression2
bool Result;
Result = X < Y;
Result will have the value true.
> expression1 >
expression2
Used to check whether
expression1 is greater than
expression2
bool Result;
Result = X > Y;
Result will have the value false.
<= expression1 <=
expression2
Used to check whether
expression1 is less than or equal
to expression2
bool Result;
Result = X <= Y;
Result will have the value true.
>= expression1 >=
expression2
Used to check whether
expression1 is greater than or
equal to expression2
bool Result;
Result = X >= Y;
Result will have the value false.
Slide 8 of 25Ver. 1.0
Object-Oriented Programming Using C#
Toán tử so sánh (tiếp)
Operator Usage Description Example
(In the following examples, the value of X is
assumed to be 20 and the value of Y is
assumed to be 25)
== expression1 ==
expression2
Used to check whether
expression1 is equal to
expression2
bool Result;
Result = X == Y;
Result will have the value false.
!= expression1 !=
expression2
Used to check whether
expression1 is not equal to
expression2
bool Result;
Result = X != Y;
Result will have the value true.
Slide 9 of 25Ver. 1.0
Object-Oriented Programming Using C#
Toán tử logic được sử dụng để đánh giá các biểu thức và trả
về một giá trị đúng/sai.
Bảng sau giải thích các sử dụng của các toán tử logic.
Toán tử logic
Operator Usage Description Example
&& expression1 &&
expression2
Returns true if
both expression1
and expression2
are true.
bool Result;
string str1, str2;
str1 = “Korea”;
str2 = “France”;
Result= ((str1==“Korea”) &&
(str2==“France”))
Console.WriteLine (Result
.ToString());
The message displays True because
str1 has the value “Korea” and str2
has the value “France”.
! ! expression Returns true if
the expression is
false.
bool Result
int x;
x = 20;
Result=(!( x == 10))
Console.WriteLine(Result.ToSt
ring());
The message displays True because
the expression used returns true.
Slide 10 of 25Ver. 1.0
Object-Oriented Programming Using C#
Toán tử logic (tiếp)
Operator Usage Description Example
|| expression1 ||
expression2
Returns true if either
expression1 or
expression2 or both of
them are true.
bool Result
string str1, str2;
str1 = “Korea”;
str2 = “England”;
Result= ((str1==“Korea”) || (str2==
“France”))
Console.WriteLine (Result
.ToString());
The message displays True if either str1 has
the value “Korea” or str2 has the value
“France”.
^ expression1 ^
expression2
Returns true if either
expression1 or
expression2 is true. It
returns false if both
expression1 and
expression2 are true
or if both expression1
and expression2 are
false.
bool Result;
string str1, str2;
str1 = “Korea”;
str2= “France”;
Result = (str1== “Korea”) ^ (str2==
“France”);
Console.WriteLine (Result
.ToString());
The message False is displayed because both
the expressions are true.
Slide 11 of 25Ver. 1.0
Object-Oriented Programming Using C#
Sử dụng cấu trúc điều khiển
Cấu trúc điều khiển cho phép lựa chọn xử lý các cấu lệnh,
phụ thuộc vào giá trị của biểu thức liên quan.
Toán tử so sánh được yêu cầu để đánh giá các điều kiện.
Đa dạng cấu trúc điều khiển được sử dụng:
Cấu trúc ifelse
Cấu trúc switchcase
Slide 12 of 25Ver. 1.0
Object-Oriented Programming Using C#
Cấu trúc điều khiển ifelse theo sau là một biểu thức
logic nơi dữ liệu được so sánh và một quyết định được sử
dụng dựa trên kết quả so sánh.
Cú pháp của cấu trúc ifelse:
if (expression)
{
statements;
}
else
{
statements;
}
Cấu trúc ifelse
Slide 13 of 25Ver. 1.0
Object-Oriented Programming Using C#
Cấu trúc ifelse có thể được lồng trong cấu trúc if..else
khác.
Khi cấu trúc ifelse lồng nhau, cấu trúc này còn được
biết tới như cấu trúc cascading ifelse.
Cấu trúc ifelse (tiếp)
Slide 14 of 25Ver. 1.0
Object-Oriented Programming Using C#
Cấu trúc switchcase được sử dụng khi có nhiều giá trị
cho một biến.
Cú pháp cấu trúc switchcase như sau:
switch (VariableName)
{
case ConstantExpression_1:
statements;
break;
case ConstantExpression_2:
statements;
break;
Cấu trúc switchcase
Slide 15 of 25Ver. 1.0
Object-Oriented Programming Using C#
case ConstantExpression_n:
statements;
break;
default:
statements;
break;
}
Cấu trúc switchcase (tiếp)
Slide 16 of 25Ver. 1.0
Object-Oriented Programming Using C#
Vấn đề:
Viết một chương trình mà giống với một máy tính cầm tay. Máy
tính này sẽ cho phép thực thi các phép tính toán học sau:
Cộng
Trừ
Nhân
Chia
Câu hỏi: Tính toán sử dụng cấu trúc điều khiển
Slide 17 of 25Ver. 1.0
Object-Oriented Programming Using C#
Cấu trúc vòng lặp
Cấu trúc vòng lặp được sử dụng để xử lý một hoặc nhiều
dòng lệnh tương ứng.
Các cấu trúc vòng lặp được hỗ trợ bởi C#:
while
dowhile
for
Slide 18 of 25Ver. 1.0
Object-Oriented Programming Using C#
Vòng lặp while
Cấu trúc vòng lặp while được sử dụng để xử lý một khối
câu lệnh cho một số lần lặp, phụ thuộc vào điều kiện.
Cú pháp cấu trúc vòng lặp while như sau:
while (expression)
{
statements;
}
Slide 19 of 25Ver. 1.0
Object-Oriented Programming Using C#
Vòn lặp dowhile
Cấu trúc vòng lặp dowhile tương tự như cấu trúc vòng
lặp while.
Cả hai đều lặp đến khi điều kiện vòng lặp là sai (false).
Cấu trúc vòng lặp dowhile như sau:
do
{
statements;
}while(expression);
Slide 20 of 25Ver. 1.0
Object-Oriented Programming Using C#
Cấu trúc vòng lặp dowhile (tiếp)
Hình sau minh họa sự khác biệt giữa cấu trúc vòng lặp
dowhile và while.
False
do while
False
True
Execute body of
Loop
Evaluate
Condition
True
Execute body of
Loop
Evaluate
Condition
while
Slide 21 of 25Ver. 1.0
Object-Oriented Programming Using C#
Vòng lặp for
Cấu trúc vòng lặp for được sử dụng để xử lý một khối câu
lệnh với một số lần cụ thể.
Cú pháp cấu trúc vòng lặp for như sau:
for (initialization; termination;
increment/decrement)
{
statements
}
Slide 22 of 25Ver. 1.0
Object-Oriented Programming Using C#
Vòng lặp for (tiếp)
Hình sau chỉ ra quá trình xử lý của cấu trúc vòng lặp for
hoàn chỉnh.
True
False
Initialization
Evaluate
Condition
Body of the
for Loop
Exit the for
Loop
Increment/
Decrement
Slide 23 of 25Ver. 1.0
Object-Oriented Programming Using C#
Câu hỏi: Dãy số Fibonacci sử dụng cấu trúc vòng lặp
Vấn đề:
Viết một chương trình sinh ra dãy số Fibonacci lên tới 200.
Slide 24 of 25Ver. 1.0
Object-Oriented Programming Using C#
Câu lệnh break và continue
Câu lệnh break được sử dụng để thoát khỏi vòng lặp và
ngăn cản việc xử lý vòng lặp còn lại.
Câu lệnh continue được sử dụng để bỏ qua tất cả câu
lệnh con và đưa ra một điều khiển trở lại vòng lặp.
Slide 25 of 25Ver. 1.0
Object-Oriented Programming Using C#
Trong mục này, các bạn đã được học:
Toán tử được sử dụng để tính toán, so sánh các giá trị và kiểm
tra nhiều điều kiện.
Sử dụng các toán tử số học để thực thi các phép toán số học
trên các biến như là: cộng, trừ, nhân, chia.
Sử dụng toán tử gán số học để thực thi phép toán số học và
gán kết quả vào biến.
Toán tử một ngôi như là: tăng hoặc giảm thực thi trên một toán
hạng.
Toán tử so sánh được sử dụng để so sánh hai giá trị và thực
thi một hành động dựa trên kết quả so sánh.
Toán tử logic được sử dụng để đánh giá biểu thức và trả về
giá trị đúng hoặc sai.
Tổng kết
Slide 26 of 25Ver. 1.0
Object-Oriented Programming Using C#
Cấu trúc điều khiển được sử dụng để cho phép lựa chọn xử lý
câu lệnh. Cấu trúc điều khiển trong C# là:
ifelse
switchcase
Vòng lặp được sử dụng khi chúng ta muốn một phần của
chương trình lặp đi lặp lại một số lần nhất định. C# đưa ra một
số cấu trúc vòng lặp sau:
while
dowhile
for
Câu lệnh break và continue được sử dụng để điều khiển
luồng chương trình trong vòng lặp.
Tổng kết (tiếp.)
Các file đính kèm theo tài liệu này:
- bai_giang_ngon_ngu_lap_trinh_nang_cao_bai_2_cau_truc_dieu_kh.pdf