thông d ng, và đôi khi đ
c g i là
ụ
ượ ọ
tham s tr u t
ng
ố ừ
ượ . đây, “tr u t ng” có nghĩa là th mà đúng
Ở
ừ ượ
ứ
ra không có m t trên mã l nh ch
ng trình, nh ng l i di n t tính năng c a ch
ng trình theo c p đ ý
ặ
ệ
ươ
ư
ạ
ễ ả
ủ
ươ
ấ
ộ
t
ng cao h n.
ưở
ơ
Ch ng h n, khi b n kích ho t m t ph
ng th c r i truy n vào m t m ng cùng v i các gi i
ẳ
ạ
ạ
ạ
ộ
ươ
ứ ồ
ề
ộ
ả
ớ
ớ
h n
ạ low và high, không có gì ngăn c n
c ph
ng th c đã kích ho t kh i truy c p ph n c a m ng
ả ươợ
ươ
ứ
ạ
ỏ
ậ
ầ ủ
ả
n m ngoài ph m vi gi i h n nói trên. B i v y th t ra b n không g i m t t p con c a c bài; b n đang
ằ
ạ
ớ ạ
ở ậ
ậ
ạ
ử
ộ ậ
ủ ỗ
ạ
g i toàn b c bài. Nh ng mi n là b ph n ti p nh n (t c là ph n n i dung ph
ng th c) tuân theo lu t
ử
ộ ỗ
ư
ễ
ộ
ậ
ế
ậ
ứ
ầ
ộ
ươ
ứ
ậ
ch i, thì ta có th coi r ng đó chính là m t c bài con.
ơ
ể
ằ
ộ ỗ
Hình th c suy nghĩ này, trong đó ch
ng trình có hàm ý cao xa h n là nh ng câu mã l nh, chính là m t
ứ
ươ
ơ
ữ
ệ
ộ
ph n quan tr ng trong t duy nhà khoa h c máy tính. T “tr u t
ng” đã xu t hi n quá nhi u trong
ầ
ọ
ư
ọ
ừ
ừ ượ
ấ
ệ
ề
nhi u ng c nh khác nhau và đi u này khi n cho ý nghĩa c a nó b loãng đi. M c dù v y,
ề
ữ ả
ề
ế
ủ
ị
ặ
ậ tr u
ừ
t
ng
ượ chính là m t ý t ng tr ng tâm trong ngành khoa h c máy tính (cũng nh nhi u ngành khác).
ộ
ưở
ọ
ọ
ư
ề
M t đ nh nghĩa khái quát h n cho “tr u t
ng” là “Quá trình mô hình hóa m t h th ng ph c t p b ng
ộ ị
ơ
ừ ượ
ộ ệ ố
ứ ạ
ằ
di n gi i đ
c gi n hóa, nh m l
c đi nh ng chi ti t không liên quan đ ng th i n m b t đ
c nh ng
ễ
ả ượ
ả
ằ
ượ
ữ
ế
ồ
ờ ắ
ắ ượ
ữ
đ ng thái mà ta c n quan tâm.”
ộ
ầ
13.10 Thu t ng
ậ
ữ
mã hóa:
Vi c bi u di n m t t p h p các giá tr b ng m t t p h p các giá tr khác, b ng vi c thi t l p m t ánh
ệ
ể
ễ
ộ ậ
ợ
ị ằ
ộ ậ
ợ
ị
ằ
ệ
ế ậ
ộ
x gi a chúng.
ạ ữ
gi ng h t:
ố
ệ
S b ng nhau gi a các tham chi u. Hai tham chi u ch đ n cùng m t đ i t
ng trong b nh .
ự ằ
ữ
ế
ế
ỉ ế
ộ ố ượ
ộ
ớ
t
ng đ ng:
ươ
ồ
S b ng nhau gi a các giá tr . Hai tham chi u ch đ n hai đ i t ng ch a d li u gi ng nhau.
ự ằ
ữ
ị
ế
ỉ ế
ố ượ
ứ
ữ ệ
ố
tham s tr u t
ng:
ố ừ
ượ
M t t p h p g m các tham s ho t đ ng cùng nhau nh m t tham s th ng nh t.
ộ ậ
ợ
ồ
ố
ạ ộ
ư ộ
ố ố
ấ
tr u t
ng:
ừ
ượ
Quá trình di n gi i m t ch ng trình (hay th khác) m t c p đ cao h n so v i nh ng gì đ
c
ễ
ả
ộ
ươ
ứ
ở ộ ấ
ộ
ơ
ớ
ữ
ượ
vi t d
i d ng mã l nh.
ế ướ ạ
ệ
13.11 Bài t p
ậ
Bài t p 1
ậ
Hãy gói b c mã l nh trong M c
ọ
ệ
ụ 13.5 vào m t ph ng th c. Sau đó ch nh s a nó đ b c c a
ộ
ươ
ứ
ỉ
ử
ể ậ ủ
Át cao h n K.
ơ
Bài t p
ậ 2 Hãy gói b c mã l nh thi t l p c bài M c
ọ
ệ
ế ậ ỗ
ở ụ 13.6 vào trong m t ph ng th c có
ộ
ươ
ứ
tên makeDeck không nh n tham s nào và tr l i m t m ng đã đi n đ y đ nh ng lá bài (
ậ
ố
ả ạ
ộ
ả
ề
ầ
ủ
ữ
Card).
Bài t p
ậ 3 Trong trò ch i Blackjack, m c tiêu là l y đ c m t nhóm cây bài có t ng đi m b ng 21.
ơ
ụ
ấ
ượ
ộ
ổ
ể
ằ
Đi m c a nhóm bài b ng t ng các đi m trên nh ng cây bài. Đi m cho nh ng quân Át b ng 1, cho nh ng
ể
ủ
ằ
ổ
ể
ữ
ể
ữ
ằ
ữ
quân bài m t ng
i b ng 10, và nh ng quân khác thì đi m đúng b ng b c. Ch ng h n, nhóm ba quân
ặ
ườ ằ
ữ
ể
ằ
ậ
ẳ
ạ
bài (Ace, 10, Jack, 3) có t ng đi m là 1 + 10 + 10 + 3 = 24.
ổ
ể
Hãy vi t m t ph
ng th c có
ế
ộ
ươ
ứ
tên handScore nh n vào đ i ó là m t m ng nh ng lá bài r i tr l i t ng đi m.
ậ
ố ố
ộ
ả
ữ
ồ ả ạ ổ
ể
Bài t p
ậ 4 Trong trò ch i Poker, m t “dây” (flush) là m t nhóm lá bài có t 5 lá tr lên cùng ch t. M t
ơ
ộ
ộ
ừ
ở
ấ
ộ
nhóm bài có th ch a bao nhiêu lá bài cũng đ
c.
ể ứ
ượ