1. Trang chủ
  2. » Luận Văn - Báo Cáo

Xử lý số liệu thống kê bằng ngôn ngữ lập trình visual basic 6 0

31 709 1

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

THÔNG TIN TÀI LIỆU

Thông tin cơ bản

Tiêu đề Xử lý số liệu thống kê bằng ngôn ngữ lập trình Visual Basic 6.0
Người hướng dẫn ThS. Trần Anh Nghĩa
Trường học Trường Đại Học Vinh
Chuyên ngành Xử lý số liệu thống kê bằng ngôn ngữ lập trình Visual Basic 6.0
Thể loại Báo cáo thực tập
Năm xuất bản 2010
Thành phố Vinh
Định dạng
Số trang 31
Dung lượng 852 KB

Các công cụ chuyển đổi và chỉnh sửa cho tài liệu này

Nội dung

Lý thuyết mẫu của biến ngẫu nhiên Trong thực tế thờng phải nghiên cứu một tập hợp các phần tử đồng nhấttheo một hay nhiều dấu hiệu định tính hoặc định lợng đặc trng cho các phần tử đó..

Trang 1

Mục lục Trang

1.1 Mẫu ngẫu nhiên và thể hiện của mẫu ngẫu nhiên 3

Chơng 4 Minh hoạ chơng trình và ví dụ bằng ngôn ngữ lập trình

Lời nói đầu

Do nhu cầu ứng dụng rộng rãi của Lý thuyết Xác suất Thống kê trong thực

tế, nhiều chơng trình xử lý các bài toán Thống kê trên máy tính đã đợc ra đời Vìvậy trong Khoá luận này, chúng tôi đã tìm hiểu, nghiên cứu các kiến thức cơ bảncủa Thống kê và xây dựng đợc phần mềm Tin học để phục vụ cho việc giải một

số bài toán Thống kê trên máy tính bằng ngôn ngữ lập trình Visual Basic 6.0

Khoá luận này gồm có 4 chơng:

Chơng 1 Lý thuyết mẫu của biến ngẫu nhiên

Trang 2

Chơng 2 Lý thuyết Ước lợng tham số

Chơng 3 Lý thuyết Kiểm định giả thiết tham số

Chơng 4 Minh hoạ chơng trình và ví dụ bằng ngôn ngữ Visual Basic 6.0

Khoá luận này đợc thực hiện và hoàn thành tại Khoa Toán - Trờng ĐạiHọc Vinh và các kết quả trong lập trình để tạo ra sản phẩm này là của chúng tôi

thực hiện dới sự hớng dẫn của thầy giáo ThS Trần Anh Nghĩa Em xin bày tỏ

lời biết ơn sâu sắc tới Thầy đã tận tình giúp đỡ em trong quá trình học tập vànghiên cứu

Nhân dịp này em cũng xin đợc cảm ơn các thầy cô giáo trong Tổ Xác suấtThống kê & Toán ứng dụng Khoa Toán, đặc biệt là các thầy giáo PGS.TS.Nguyễn Văn Quảng, PGS.TS Trần Xuân Sinh đã tạo điều kiện giúp đỡ em hoànthành Khoá luận này

Mặc dù đã có rất nhiều cố gắng nhng vì năng lực và thời gian còn hạn chế nênKhoá luận không thể tránh khỏi những thiếu sót cả về nội dung và hình thức Vì vậy,

em rất mong lời chỉ bảo và sự góp ý của quý thầy cô và bạn đọc để hoàn chỉnh và nângcấp đầy đủ sản phẩm này để có ứng dụng trong thực tiễn

Em xin chân thành cảm ơn!

Vinh, tháng 05 năm 2010

Tác giả

Chơng 1 Lý thuyết mẫu của biến ngẫu nhiên

Trong thực tế thờng phải nghiên cứu một tập hợp các phần tử đồng nhấttheo một hay nhiều dấu hiệu định tính hoặc định lợng đặc trng cho các phần tử

đó Chẳng hạn một doanh nghiệp phải nghiên cứu tập hợp các khách hàng của nóthì dấu hiệu định tính có thể là mức độ hài lòng của khách hàng với sản phẩm(dịch vụ) của doanh nghiệp, còn dấu hiệu định lợng là nhu cầu của khách hàng

về số lợng sản phẩm của doanh nghiệp

Việc nghiên cứu đợc chia thành 2 loại là nghiên cứu toàn bộ và nghiên cứukhông toàn bộ Vì trong thực tế phơng pháp nghiên cứu toàn bộ thờng chỉ đợc ápdụng đối với tập hợp có quy mô nhỏ nên ngời ta áp dụng phơng pháp nghiên cứukhông toàn bộ, đặc biệt phơng pháp nghiên cứu chọn mẫu Phơng pháp này chủtrơng từ tập hợp nghiên cứu chọn ra một số phần tử (mẫu), phân tích các phần tửnày và dựa vào đó suy ra các kết luận về tập hợp cần nghiên cứu Nếu mẫu đợcchọn ra một cách ngẫu nhiên và xử lý bằng các phơng pháp xác suất thì thu đợccác kết luận một cách nhanh chóng, đỡ tốn kém mà vẫn đảm bảo độ chính xác

1.1 mẫu ngẫu nhiên và thể hiện của mẫu ngẫu nhiên

Trang 3

1.1.1 Định nghĩa mẫu ngẫu nhiên

Mẫu ngẫu nhiên kích thớc n là tập hợp của n biến ngẫu nhiên độc lập X 1 ,

X 2 , …, X , X n đợc thành lập từ biến ngẫu nhiên X trong tổng thể nghiên cứu và có

cùng quy luật phân phối xác suất với X.

Giả sử từ tổng thể với biến ngẫu nhiên gốc X rút ra một mẫu cụ thể kích

th-ớc n, trong đó giá trị x1 xuất hiện với tần số n1, x2 xuất hiện với tần số n2, …, x, k

xuất hiện với tần số n k (n = n1 + …, n + k)

b) Bảng phân phối tần suất.

Nếu ký hiệu f i = n i / n là tần suất xuất hiện giá trị x i trong mẫu thì lúc đó

giá trị của mẫu w còn có thể mô tả bằng bảng sau.(1 = f 1 + …, X + f k)

rời rạc về X, vì các giá trị X i của mẫu có cùng quy luật phân phối xác suất với X

song quy luật này lại thờng cha đợc xác định hoàn toàn Song nếu tổng hợp các

biến ngẫu nhiên (X 1 , X 2 , …, X , X n) này lại thì theo luật số lớn chúng sẽ bộc lộ những

tính quy luật mới làm cơ sở để nhận định về biến ngẫu nhiên gốc X trong tổng

thể

Việc tổng hợp mẫu W = (X 1 , X 2 , …, X , X n ) đợc thực hiện dới dạng một hàm

nào đó của các giá trị (X 1 , , X n ) của mẫu Nó đợc gọi là thống kê, ký hiệu là G.

Nh vậy, G = f(X 1 , …, X , X n ) là một hàm của các biến ngẫu nhiên do đó bản thân nó

Trang 4

cũng sẽ là một biến ngẫu nhiên tuân theo một quy luật phân phối xác suất nhất

định và có các tham số E(G), D(G) Mặt khác khi mẫu ngẫu nhiên nhận một giá trị cụ thể w = (x 1 , x 2 , …, X , x n ) thì G cũng nhận một giá trị cụ thể là g = f(x 1 , x 2 , …, X ,

X

1

1

Khi mẫu ngẫu nhiên nhận

một giá trị cụ thể thì trung bình mẫu cũng nhận giá trị cụ thể bằng 

X X

2 2

1

1

1 ) (

Về thực chất, thống kê f là một biến ngẫu nhiên vì nó là hàm của biến ngẫu nhiên

X - số lần xuất hiện dấu hiệu trong mẫu, tức là trong n phép thử độc lập Còn giá

trị của nó trên một giá trị cụ thể của mẫu là một số xác định

Nếu biến ngẫu nhiên gốc X tuân theo quy luật A(p) với E(X) = p và

D(X) = p(1 - p) thì E(f) = p và D(f) = p(1 – p)/n. p)/n.

Trang 5

Chơng 2 Lý thuyết ớc Lợng tham số

Bài toán ớc lợng tham số có thể phát biểu nh sau: Cho biến ngẫu nhiên X

với quy luật phân phối xác suất đã biết song cha biết tham số  nào đó của nó.Phải ớc lợng (xác định một cách gần đúng) giá trị  Phơng pháp mẫu cho phépgiải quyết bài toán trên bằng quy nạp thống kê nh sau: Từ tổng thể nghiên cứu

rút ra một mẫu ngẫu nhiên kích thớc n và dựa vào đó mà xây dựng một thống kê

G dùng để ớc lợng  bằng cách này hay cách khác Có 2 phơng pháp sử dụng G

để ớc lợng  là phơng pháp ớc lợng điểm và phơng pháp ớc lợng bằng khoảng tincậy

dùng làm ớc lợng của  Vì vậy cần đa ra các tiêu chuẩn để đánh giá chất lợng

của các thống kê G, từ đó lựa chọn đợc thống kê “xấp xỉ một cách tốt nhất” tham

số cần ớc lợng Đó là tiêu chuẩn:

- Ước lợng không chệch: Thống kê G của mẫu đợc gọi là ớc lợng không chệch của tham số  của biến ngẫu nhiên gốc X nếu E(G) = , ngợc lại thì G là -

ớc lợng chệch của  Trung bình mẫu X là ớc lợng không chệch của kỳ vọng

toán  của biến ngẫu nhiên gốc, E( X ) =  Tần suất mẫu f là ớc lợng không chệch của xác suất p của biến ngẫu nhiên gốc, E(f) = p Phơng sai mẫu S 2 và ph-

ơng sai S* 2 đều là các ớc lợng không chệch của phơng sai 2 của biến ngẫu nhiên

gốc: E(S 2 ) = 2 và E(S* 2 ) = 2

- Vì vậy, nếu cha biết  có thể dùng X để ớc lợng điểm của kỳ vọng Nếu

cha biết p có thể dùng f để ớc lợng điểm của xác suất Nếu cha biết phơng sai 2

có thể dùng S2 hoặc S*2 để ớc lợng điểm của phơng sai

2.1.2 Phơng pháp ớc lợng điểm

Phơng pháp này chủ trơng dùng một giá trị để thay thế cho tham số  chabiết của tổng thể, vì bản thân  là một số xác định Thông thờng giá trị đợc chọn

là một thống kê G nào đó của biến ngẫu nhiên Có nhiều cách chọn thống kê G

khác nhau tạo nên những phơng pháp ớc lợng điểm khác nhau, trong đó có

ph-ơng pháp hàm ớc lợng

2.2 ớc lợng khoảng

2.2.1 Khái niệm về khoảng tin cậy

Trang 6

Để ớc lợng tham số  của biến ngẫu nhiên gốc X trong tổng thể, phơng pháp này chủ trơng từ một thống kê G nào đó của mẫu xây dựng một khoảng giá trị (G 1 ,

G 2 ) sao cho với một xác suất cho trớc tham số  sẽ rơi vào khoảng (G 1 , G 2 ) đó Do G

là biến ngẫu nhiên nên khoảng (G 1 , G 2 ) cũng là một khoảng ngẫu nhiên, còn  lại là

một số xác định nên phải nói chính xác hơn là khoảng (G 1 , G 2 ) sẽ chứa đựng giá trị 

với một xác suất cho trớc Từ đó ta có định nghĩa sau:

Khoảng (G 1 , G 2 ) của thống kê G đợc gọi là khoảng tin cậy của tham số 

nếu với xác suất bằng (1 - ) cho trớc thoả mãn điều kiện

P (G 1 <  < G 2 ) = 1 -  =  Xác suất  đợc gọi là độ tin cậy của ớc lợng, còn I = G 2 - G 1 đợc gọi là độdài khoảng tin cậy

2.2.2 Ước lợng khoảng tin cậy cho kỳ vọng toán của biến ngẫu nhiên phân phối theo quy luật chuẩn

Giả sử biến ngẫu nhiên gốc X phân phối chuẩn N(,  2 ) nhng cha biết

tham số  của nó Để chọn thống kê G, ta xét hai trờng hợp sau:

1) Trờng hợp đã biết phơng sai 2 của biến ngẫu nhiên gốc

) (

Chú ý rằng khi kích thớc mẫu n > 30 thì phân phối Student đã xấp xỉ phân

phối chuẩn hoá, nên ta sử dụng thống kê nh trên:

Trang 7

G = U =

S

n X

X Se

) (

S

n 

 2(n – p)/n 1) Khi đó, khoảng tin

cậy của 2 với độ tin cậy (1 - ) có dạng:

Sau đây ta sẽ xét một trờng hợp cụ thể khá thông dụng trong thực tế là bài

toán ớc lợng xác suất của biến ngẫu nhiên phân phối theo quy luật A(p).

Giả sử trong tổng thể kích thớc N có M phần tử mang dấu hiệu nghiên cứu Nếu lấy ngẫu nhiên ra mẫu có n phần tử và gọi m là số phần tử mang dấu hiệu nghiên cứu đợc lấy ra thì m là biến ngẫu nhiên phân phối theo quy luật A(p), trong đó p là xác suất để lấy ngẫu nhiên một phần tử thì đợc phần tử mang dấu hiệu nghiên cứu p = M/N Do đó, nếu có thể điều tra một mẫu có kích thớc n khá lớn (n  100) thì ta sử dụng thống kê:

Trang 8

Chơng 3 Lý thuyết Kiểm định giả thiết tham số

3.1 các khái niệm về giả thiết thống kê

3.1.1 Định nghĩa

Giả thiết thống kê là giả thiết về dạng phân phối xác suất của biến ngẫunhiên; về các tham số đặc trng của biến ngẫu nhiên hoặc về tính độc lập của cácbiến ngẫu nhiên

Để giải quyết bài toán kiểm định thì từ biến ngẫu nhiên gốc X ta lấy ra mẫu ngẫu nhiên W = (X 1 , X 2 , …, X , X n ) rồi sử dụng lý thuyết xác suất để tìm miền

W sao cho:

- Nếu W  W thì bác bỏ H, thừa nhận K

- Nếu W  W thì chấp nhận H, cha có cơ sở để bác bỏ H

Trong đó, H là giả thiết, K là đối thiết và miền W là miền bác bỏ

3.1.2 Các loại sai lầm

- Sai lầm loại 1: Bác bỏ giả thiết H trong khi H đúng

- Sai lầm loại 2: Thừa nhận giả thiết H trong khi H sai

- Ta phải tìm miền W sao cho cả hai sai lầm đó đạt giá trị cực tiểu nhngvới cỡ mẫu n là cố định thì rất khó thực hiện Cho nên ngời ta sẽ cho trớc giớihạn trên của xác suất phạm sai lầm loại 1 là  (mức ý nghĩa) Sau đó chỉ cần tìm

miền W sao cho sai lầm loại 2 đạt cực tiểu với mức ý nghĩa  cho trớc

Sau đây ta sẽ vận dụng các thủ tục kiểm định trên vào một số giả thiếtthống kê thông dụng hơn cả trong nghiên cứu kinh tế -xã hội

3.2 các thủ tục kiểm định tham số

3.2.1 Kiểm định giả thiết về kỳ vọng toán của biến ngẫu nhiên phân phối theo quy luật chuẩn

1) Trờng hợp đã biết phơng sai

Trang 9

Giả sử biến ngẫu nhiên gốc X phân phối theo quy luật chuẩn N(, 2) vớiphơng sai đã biết nhng cha biết kỳ vọng toán  Nếu có cơ sở để giả thiết rằnggiá trị của nó bằng 0 ta đa ra giả thiết thống kê H:  = 0 Để kiểm định giả thiết

2) Trờng hợp cha biết phơng sai

Lúc đó tiêu chuẩn kiểm định là thống kê

Trang 10

ˆ(n 1)S

ˆ( 1)

0

ˆ(n 1)S ; n

ˆ( 1)

3.2.3 Kiểm định giả thiết về xác suất

Giả sử biến ngẫu nhiên gốc X  A(p), nếu cha biết p song có cơ sở giả thiết rằng giá trị của nó bằng p0, ta đa ra giả thiết thống kê H: p = p0 Khi đó ta

xét trờng hợp nếu n, p thoả mãn điều kiện:

Trang 11

1 Giao diÖn 1: NhËp d÷ liÖu

*Ch¬ng tr×nh:

Private Sub Command1_Click()

Dim n As Integer

n = Val(txt_nhapn.Text)

If Not IsNumeric(txt_nhapn.Text) Then

MsgBox "Ban chua nhap hoac nhap sai n"

Trang 12

MsgBox "Ban chua nhap gia tri hoac nhap sai du lieu"

Private Sub Command2_Click()

If Not IsNumeric(txt_nhapn.Text) Then

MsgBox "Ban chua nhap hoac nhap sai n"

ElseIf Not IsNumeric(txt_gtri.Text) Then

MsgBox "Ban chua nhap hoac nhap sai gia tri"

ElseIf Not IsNumeric(txt_tsuat.Text) Then

MsgBox "Ban chua nhap hoac nhap sai tan suat"

Trang 13

kvm = kvm / n

Form2.lbl_kvm = Format(CSng(kvm), "0.####0")

Form2.lbl_psm = Format(CSng(psm / n) - kvm * kvm, "0.#####0")

Form2.lbl_psmm.Caption = Format(CSng(CSng(Form2.lbl_psm.Caption) *(Val(txt_nhapn.Text) / (Val(txt_nhapn.Text) - 1))), "0.#####0")

For i = 0 To list2.ListCount - 1

If a <= Val(list2.List(i)) And Val(list2.List(i)) <= b Then

dem = dem + Val(list3.List(i))

For i = 0 To list1.ListCount - 1

If a <= Val(list1.List(i)) And Val(list1.List(i)) <= b Then

dem = dem + 1

Trang 14

End Sub Form2.Hide

Private Sub Command1_Click() End Sub

Form11.Show Private Sub Command2_Click()End Sub Form12.Show

Trang 16

4 Giao diện 4: Các trờng hợp của bài toán kiểm định giả thiết

5 Giao diện 5: Ước lợng khoảng tin cậy cho Kỳ vọng

* Chơng trình:

Private Sub cmd_kq1_Click()

Dim a As Single

If Not IsNumeric(txt_nhapdx.Text) Then

MsgBox "Ban chua nhap DX"

End If

If Not IsNumeric(txt_nhapu.Text) Then

MsgBox "Ban nhap sai U hoac chua nhap U"

Else

a = Sqr(Val(txt_nhapdx.Text)) / Sqr(Val(Form12.txt_nhapn.Text))

lbl_11.Caption = Format(CSng(CSng(Form2.lbl_kvm.Caption) Val(txt_nhapu.Text) * a), "0.#####0")

Trang 17

lbl_12.Caption=format(CSng(CSng(Form2.lbl_kvm.Caption)+Val(txt_nhapu.Text) * a), "0.#####0")

lbl_21.Caption = Format(CSng(CSng(Form2.lbl_kvm.Caption) Val(txt_nhapt.Text) * b), "0.#####0")

lbl_22.Caption = Format(CSng(CSng(Form2.lbl_kvm.Caption) +Val(txt_nhapt.Text) * b), "0.#####0")

Trang 18

Private Sub Command4_Click()

If Not IsNumeric(txt_nhapx1.Text) Then

MsgBox "Ban chua nhap gia tri X(alfa/2)"

End If

If Not IsNumeric(txt_nhapx2.Text) Then

MsgBox "Ban chua nhap gia tri X(1-alfa/2)"

Else

Trang 19

lbl_kq1.Caption = Format(CSng((Val(Form12.txt_nhapn.Text) - 1)*CSng(txt_psm.Text) / Val(txt_nhapx1.Text)), "0.#####0")

lbl_kq2.Caption = Format(CSng((Val(Form12.txt_nhapn.Text) - 1) *CSng(txt_psm.Text) / Val(txt_nhapx2.Text)), "0.#####0")

Trang 20

Private Sub cmd_kq_Click()

If Not IsNumeric(txt_nhapu.Text) Then

MsgBox "Ban chua nhap U(alpha/2)"

Trang 21

Giao diện 7

8 Giao diện 8: Kiểm định giả thiết cho Kỳ vọng

*Chơng trình:

Private Sub Command1_Click()

If Not IsNumeric(txt_m.Text) Or Not IsNumeric(txt_delta.Text) Then

MsgBox "Ban chua nhap hoac nhap sai Muy hoac ban chua nhap Delta^2" Else

txt_uqs.Text = Format(CSng((CSng(txt_kvm.Text) - Val(txt_m.Text)) *Sqr(Val(txt_n.Text)) / Sqr(Val(txt_delta.Text))), "0.#####0")

Trang 22

Private Sub Command2_Click()

If Not IsNumeric(txt_u1.Text) Then

MsgBox "ban chua nhap U(alfa/2)"

End If

If Abs(CSng(txt_uqs.Text)) > Val(txt_u1.Text) Then

MsgBox "Chap nhan K,bac bo H"

Else

MsgBox "Chap nhan H, bac bo K"

End If

End Sub

Private Sub Command3_Click()

If Not IsNumeric(txt_u2.Text) Then

MsgBox "Ban chua nhap U(alfa)"

End If

If CSng(txt_uqs.Text) >= Val(txt_u2.Text) Then

MsgBox "Chap nhan K,bac bo H"

Else

MsgBox "Chap nhan H,bac bo K"

End If

End Sub

Private Sub Command4_Click()

If Not IsNumeric(txt_u3.Text) Then

MsgBox "Ban chua nhap U(alfa)"

End If

If CSng(txt_uqs.Text) <= Val(txt_u3.Text) Then

MsgBox "Chap nhan K,bac bo H"

Else

MsgBox "Chap nhan H,bac bo K"

End If

End Sub

Private Sub Command5_Click()

txt_t.Text = Format(CSng((CSng(txt_kvm.Text) - Val(txt_m.Text)) *Sqr(Val(txt_n.Text) - 1) / Sqr(CSng(txt_psm.Text))), "0.#####0")

lbl_21.Caption = Format(Val(txt_m.Text), "0.###0")

lbl_22.Caption = Format(Val(txt_m.Text), "0.###0")

lbl_23.Caption = Format(Val(txt_m.Text), "0.###0")

End Sub

Trang 23

Private Sub Command6_Click()

If Not IsNumeric(txt_z1.Text) Then

MsgBox "Ban chua nhap T(alfa/2)"

End If

If Abs(CSng(txt_t.Text)) > Val(txt_z1.Text) Then

MsgBox "Chap nhan K,bac bo H"

Else

MsgBox "Chap nhan H, bac bo K"

End If

End Sub

Private Sub Command7_Click()

If Not IsNumeric(txt_z2.Text) Then

MsgBox "Ban chua nhap T(alfa)"

End If

If CSng(txt_t.Text) >= Val(txt_u2.Text) Then

MsgBox "Chap nhan K,bac bo H"

Else

MsgBox "Chap nhan H,bac bo K "

End If

End Sub

Private Sub Command8_Click()

If Not IsNumeric(txt_z3.Text) Then

MsgBox "Ban chua nhap T(alfa)"

End If

If CSng(txt_t.Text) <= Val(txt_z3.Text) Then

MsgBox "Chap nhan K,bac bo H"

Ngày đăng: 27/12/2013, 21:17

Nguồn tham khảo

Tài liệu tham khảo Loại Chi tiết
[1]. Đào Hữu Hồ, Xác suất thống kê, NXB ĐHQG Hà Nội – 2001 Sách, tạp chí
Tiêu đề: Xác suất thống kê
Nhà XB: NXB ĐHQG Hà Nội – 2001
[2]. Đào Hữu Hồ và Nguyễn Thị Hồng Minh, Xử lý số liệu bằng thống kê toán học trên máy tính, NXB ĐHQG Hà Nội - 2002 Sách, tạp chí
Tiêu đề: Xử lý số liệu bằng thống kê toánhọc trên máy tính
Nhà XB: NXB ĐHQG Hà Nội - 2002
[3]. Nguyễn Cao Văn và Trần Thái Ninh, Lý thuyết xác suất và thống kê toán học, NXB Giáo dục - 2002 Sách, tạp chí
Tiêu đề: Lý thuyết xác suất và thống kê toán học
Nhà XB: NXB Giáo dục - 2002
[6]. Lê Văn Doanh-Trần Khắc Tuấn, 101 thuật toán và chơng trình, NXB Khoa học và Kỹ thuật, Hà Nội - 1993 Sách, tạp chí
Tiêu đề: 101 thuật toán và chơng trình
Nhà XB: NXB Khoahọc và Kỹ thuật
[5]. Tìm hiểu, tham khảo giáo trình về ngôn ngữ Visual Basic trên mạng internet Khác

TỪ KHÓA LIÊN QUAN

TÀI LIỆU CÙNG NGƯỜI DÙNG

TÀI LIỆU LIÊN QUAN

w