CƠ SỞ CHỌN NGÔN NGỮ, PHƯƠNG THỨC LẬP TRÌNH Với yêu cầu bài toán đặt ra ở trên và phương hướng giải quyết bài toán cũng như cách phân tích thiết kế chương trình đã nêu, chọn ngôn ngữ lập
Trang 1Chương 18
MÃ HOÁ CHƯƠNG TRÌNH
I CƠ SỞ CHỌN NGÔN NGỮ, PHƯƠNG THỨC LẬP TRÌNH
Với yêu cầu bài toán đặt ra ở trên và phương hướng giải quyết bài toán cũng như cách phân tích thiết kế chương trình đã
nêu, chọn ngôn ngữ lập trình Visual Basic 6.0 (VB6.0)
Dùng VB6 là cách nhanh và tốt nhất để lập trình cho Microsoft Windows Cho dù bạn là chuyên nghiệp hay mới mẻ đối với chương trình Windows, VB6 sẽ cung cấp cho bạn một bộ công
cụ hoàn chỉnh để đơn giản hóa việc triển khai lập trình ứng dụng cho MSWindows
Trong khi các ngôn ngữ lập trình khác như Visual C++ và Visual J++ là ngôn ngữ lập trình hướng đối tượng thì VB6.0 là ngôn ngữ lập trình có cấu trúc Với ngôn ngữ VB6.0 ta sẽ dễ dàng pháp triển ứng dụng quản lý, hầu hết các giao diện đều trực quan,
dễ thiết kế, chúng cho phép thiết kế các Form hay các Control một các tiện lợi, xuất và đọc tệp văn bản một cách dễ dàng Ngoài ra, VB6.0 được Microsoft hỗ trợ mạnh trong các sản phẩm của họ như Micrsoft Excel, Microsoft Access…Thêm vào đó, phải kể đến sự
hỗ trợ đồ hoạ cực mạnh của VB6.0 thông qua đối tượng hiển thị đồ hoạ VDRAW Đây là một đối tượng hỗ trợ đồ hoạ với các phương thức và thuộc tính đơn giản, dễ hiểu … Đặc biệt hơn, nó quản lý
Trang 2đối tượng đồ hoạ như trong phần mềm AutoCAD của hãng Autodesk giúp cho những lập trình viên khoa công nghệ thông tin trường đại học Xây Dựng càng cảm thấy dễ dàng hơn trong việc sử dụng nó Và cũng phải kể đến tính năng xuất sang AutoCAD của đối tượng này, đây là ưu điểm giúp cho những đối tượng đồ hoạ trong chương trình có thể được kết xuất sang môi trường AutoCAD, phục vụ người kỹ sư kết cấu những công việc khác mà chương trình chưa làm được , chẳng hạn như chèn ảnh, in ấn, chèn thư viện mẫu…
Mặt khác, giao diện của bất kỳ một ứng dụng nào đều là một yếu tố rất quan trọng đòi hỏi người thiết kế chương trình phải có sự thiết kế hợp lý, bố cục vừa mắt và thân thiện với người sử dụng
VB 6.0 cho phép người thiết kế chương trình có thể tích hợp vào trong dự án của mình những bộ công cụ khác nhau thông qua việc khai báo các thành phần OCX, giúp cho việc thiết kế giao diện chương trình đơn giản hơn mà mang lại hiệu quả cao hơn
Một yếu tố nữa khiến VB 6.0 được lựa chọn là ngôn ngữ viết chương trình vì trong quá trình thiết kế, người dùng có thể sử dụng font (phông chữ) của hệ thống hoặc của các công cụ trong VB 6.0
để hiển thị ngôn ngữ, và do đó, ngôn ngữ tiếng Việt của chúng ta cũng sẽ được áp dụng trong việc thiết kế các ứng dụng trên nền VB 6.0
Trang 3Cuối cùng, ngôn ngữ VB 6.0 được lựa chọn bởi đây là ngôn ngữ dễ đọc và dễ hiểu với các từ khoá tiếng Anh thông dụng, giúp cho quá trình tiếp thu phương thức lập trình cũng đơn giản hơn, thuận lợi hơn
Các lý do trên, tựu chung lại làm nên lý do chọn ngôn ngữ
VB 6.0 làm ngôn ngữ lập trình xây dựng nên chương trình đã được định trước
II CƠ SỞ DỮ LIỆU CỦA CHƯƠNG TRÌNH
1 Dữ liệu vào
a Vật liệu:
Móng băng mà ta đang xét là móng bêtông cốt thép cho nên
dữ liệu nhập vào là nhóm thép và mác bêtông Ứng với mỗi giá trị nhóm thép và mác bêtông ta có các cường độ của vật liệu Do vậy, các biến lưu giữ vật liệu trong chương trình được mô tả bởi một biến bản ghi như sau:
Type Kieu_thep
nhom As String ‘ Tên cường độ cốt thép
Ra As Single ‘ Cường độ chịu kéo Rac As Single ‘ Cường độ chịu nén
End Type
Type Kieu_be_tong
Mac As String ‘ Tên mác bê tông
Trang 4Rbn As Single ‘ Cường độ chịu nén bêtông
Rbk As Single ‘ Cường độ chịu kéo của bêtông
Eb As Single ‘ Module đàn hồi của bêtông
End Type
Để chương trình có một thư viện về vật liệu như đã trình bày
ở trên thì ta phải tạo một cơ sở dữ liệu lưu các giá trị đó
- Khai báo :
Public bThep(0 To 5) As Kieu_thep
Public bBetong(0 To 5) As Kieu_be_tong
Public Sub Vatlieu() ‘ Dùng để nạp thư viện vật liệu
With bBetong(0)
.Mac = "200"
.Rbn = 900
.Rbk = 75
.Eb = 240000
End With
With bBetong(1)
.Mac = "250"
.Rbn = 1100
Trang 5.Rbk = 88 .Eb = 265000 End With
With bBetong(2) Mac = "300" Rbn = 1300 Rbk = 100 Eb = 290000 End With
With bBetong(3) Mac = "400" Rbn = 1700 Rbk = 120 Eb = 330000 End With
With bBetong(4) Mac = "500" Rbn = 2150 Rbk = 134 Eb = 360000 End With
With bBetong(5) Mac = "600" Rbn = 2500
Trang 6.Rbk = 145
.Eb = 380000 End With
With bThep(0)
.nhom = "AI" Ra = 23000 Rac = 18000 End With
With bThep(1)
.nhom = "AII" Ra = 28000 Rac = 22000 End With
With bThep(2)
.nhom = "AIII" Ra = 36000 Rac = 28000 End With
With bThep(3)
.nhom = "CI" Ra = 20000 Rac = 16000 End With
With bThep(4)
Trang 7.nhom = "CII"
.Ra = 26000
.Rac = 21000
End With
With bThep(5)
.nhom = "CIII"
.Ra = 34000
.Rac = 27000
End With
End Sub
b Đất nền:
Vì chương trình tính toán trong nền nhiều lớp nên với bất kỳ một loại đất nào mà người dùng khai báo đều chứa các thông tin giống nhau về tên và tính chất cơ lý của đất Do đó, khai báo một kiểu bản ghi như sau :
Public Type So_lieu_dat ‘ Dữ liệu đất nền
s_Ten_lop As String
si_Chieuday As Single ‘ Chiều dày mỗi lớp đất
si_DosauTB As Single ‘ Độ sâu trung bình
Trang 8si_Htren As Single ‘ Độ sâu cận
trên
si_Hduoi As Single ‘ Độ sâu cận
dưới
b_Loaidat As ‘ Loại đất
s_tdat As String ‘ Tên đất
s_Trangthai As String ‘ Trạng thái
của đất
si_Dosetdat As Single ‘ Độ sệt của
si_Dungtrongdat As Single ‘ Dung
trọng tự nhiên
si_Dungtrongriengdat As Single‘ Dung
trọng riêng
si_doam As Single ‘ Độ ẩm
si_gocmasat As Single ‘ Góc ma sát
trong
si_Xtinh As Single ‘ Kết quả xuyên
tĩnh
si_Xtchuan As Single ‘ Kết quả xuyên
tiêu chuẩn
si_LucdinhC As Single ‘ Lực dính
E As Single ‘ Môđun đàn hồi si_hesonohong As Single ‘ Hệ số nở
hông
Trang 9si_beta As Single ‘ Hệ số điều chỉnh
eo As Single ‘ Hệ số rỗng ở trạng thái tự nhiên
ei(1 To 4) As Single ‘ Giá trị hệ số rỗng
Pe(1 To 4) As Single
si_gamadaynoi As Single ‘ Dung trọng đẩy nổi
si_doanngapnc As Single ‘ Đoạn ngập nước
Gamatt As Single ‘ Dung trọng tính toán
Ti As Single ‘ Lực ma sát đơn vị
Ri As Single ‘ Lực chống đơng vị
Rtc As Single ‘ Cường độ tiêu chuẩn của đất nền
si_xichmaMax As Single ‘ Các giá trị ứng suất
si_xichmaMin As Single
si_xichmaTB As Single
si_xichmaBT As Single
Trang 10si_xichmaGL As Single
End Type
Và các biên các lớp đất trong nền công trình được khai báo là một mảng một chiều:
Lopdat(1 To 100) As So_lieu_dat