Chương 18: THUËT TO¸N CH¦¥NG TR×NH BẮT ĐẦU NHẬP DỮ LIỆU XỬ LÝ SỐ LIỆU TÍNH NỘI LỰC KHUNG TỔ HỢP NỘI LỰC XUẤT KẾT QUẢ KẾT THÚC... Ch-ơng trình con: Xác định t-ờng... Ten_tai = “GIOTRAI
Trang 1Chương 18: THUËT
TO¸N
CH¦¥NG
TR×NH
BẮT ĐẦU NHẬP DỮ LIỆU
XỬ LÝ SỐ LIỆU TÍNH NỘI LỰC KHUNG
TỔ HỢP NỘI LỰC XUẤT KẾT QUẢ KẾT THÚC
Trang 2IV.1 Ch-¬ng tr×nh con: Dån t¶i ph©n bè
CTC DON_TAI_PHAN_BO(
)
Dm (i,j) Sàn (i,j,1) Sàn (i,j,2) S Tng: n S Nhp: m
i = 1
i = i + 1 RETURN
5
1
–
+
– +
+
–
2
i <= n
j = 1
j <= m
Sàn (i,j,1).l1 < Sàn (i,j,1).l2
Dm (i,j).TT=Dn_Ti_Tam_Giác( Sàn (i,j,1).TT, Sàn (i,j,1).l1, Sàn
(i,j,1).l2 ) Dm (i,j).HT=Dn_Ti_Tam_Giác( Sàn (i,j,1).HT, Sàn (i,j,1).l1, Sàn
(i,j,1).l2 )
Trang 3Dm (i,j).TT=Dn_Ti_Hình_Thang( Sàn (i,j,1).TT, Sàn (i,j,1).l1, Sàn
(i,j,1).l2 )
Dm (i,j).HT=Dn_Ti_Hình_Thang( Sàn (i,j,1).HT, Sàn (i,j,1).l1, Sàn
(i,j,1).l2 )
2 1
Sàn (i,j,2).l1 < Sàn (i,j,2).l2
Dm (i,j).TT=Dn_Ti_Tam_Giác( Sàn (i,j,1).TT, Sàn (i,j,1).l1, Sàn
(i,j,1).l2 )
Dm (i,j).HT=Dn_Ti_Tam_Giác( Sàn (i,j,1).HT, Sàn (i,j,1).l1, Sàn
(i,j,1).l2 )
4
3 +
–
3
Dm (i,j).TT=Dn_Ti_Hình_Thang( Sàn (i,j,1).TT, Sàn (i,j,1).l1, Sàn
(i,j,1).l2 )
Dm (i,j).HT=Dn_Ti_Hình_Thang( Sàn (i,j,1).HT, Sàn (i,j,1).l1, Sàn
(i,j,1).l2 )
4
j = j + 1
5
Trang 4IV.2 Ch-¬ng tr×nh con: Dån t¶i tËp trung
CTC DON_TAI_TAP_TRUNG()
Dm (i,j) Sàn (i,j,1) Sàn (i,j,2) S Tng: n S Nhp: m
i = 1
i = i + 1 KT THÚC
5
1
2
i <= n
j = 1
j <= m
Sàn (i,j,1).l1 < Sàn (i,j,1).l2
Dm (i,j).TT=Dn_Ti_Tam_Giác( Sàn (i,j,1).TT, Sàn (i,j,1).l1, Sàn
(i,j,1).l2 ) Dm (i,j).HT=Dn_Ti_Tam_Giác( Sàn (i,j,1).HT, Sàn (i,j,1).l1, Sàn
(i,j,1).l2 )
Trang 63
1
k = 1
k <= Dm_Ph (i,j,2).Count
k = k + 1
j = j + 1
4 3
5
Dm (i,j).TTTT(k)=Dm_Ph (i,j,k,2).TT * 1/2
Dm (i,j).HTTT(k)=Dm_Ph (i,j,k,2).HT * 1/2
Dm (i,j).TDTT(k)=Dm_Ph (i,j,k,2).im_Du.X
– +
Trang 7IV.3 Ch-¬ng tr×nh con: Dån t¶i h×nh thang
CTC DON_TAI_HINH_THANG
Ti phân b: q Kích thc ô sàn: l1, l2 Ti phân b lên dm: qtd
qd = 0
qd = q*l1/2
Beta = 0
Beta = l1/2
qtd = (1-2*Beta^2 + Beta^3) * qd
RETURN
Trang 8IV.4 Ch-¬ng tr×nh con: Dån t¶i tam gi¸c
qdt = 5*qd/8 + qtd
RETURN
CTC DON_TAI_TAM_GIAC
Ti phân b: q Kích thc ô sàn: l1, l2 Ti phân b lên dm: qtd
qd = 0
qd = q*l1/2
Trang 9IV.5 Ch-ơng trình con: Xác định t-ờng
Trang 10Dam_phu[i,j,k].Loai_tuong = 1
Dam_phu[i,j,k].Loai_tuong = 2
CTC Gan_tuong(Dam_phu[i,j,k],2)
k < 4
j
<m_so_nhip
i <
n_so_tang
CTC Xac_dinh_tuong()
Dam_phu[k,m,n]
m_co_nhip n_so_tang
i = 1
j = 1
k = 1
CTC Gan_tuong(Dam_phu[i,j,k],1)
RETURN
k = k +
j = j + 1
i = i + 1
–
+
+
+
+
+
– – –
Trang 12IV.6 Ch-¬ng tr×nh con: G¸n t-êng
CTC Gan_tuong(Dam as Kieu_dam_phu, Loai_tuong as
KT_tang(k), Tuong()
Tai_tuong
Loai_tuong =
1
Tai_tuong = KT_tang(k)*Tuong[1].Tai_phan_bo Dam.Tinh_tai = Dam.Tinh_tai + Tai_tuong
Loai_tuong =
2
Tai_tuong = KT_tang(k)*Tuong[2].Tai_phan_bo Dam.Tinh_tai = Dam.Tinh_tai + Tai_tuong
RETUR N
–
–
+
+
Trang 13IV.7 Ch-¬ng tr×nh con: G¸n dÇm phô
–
– –
–
CTC Gan_tuong(Dam_phu[i,j,k],1) k = k +
j = j + 1
i = i + 1 Dam_phu[i,j,k].Loai_tuong = 1
Dam_phu[i,j,k].Loai_tuong = 2
CTC Gan_tuong(Dam_phu[i,j,k],2)
k < 4
j
<m_so_nhip
i <
CTC Gan_dam_phu(x As Single, Tang As Integer, Nhip As Integer, Tren As Boolean)
Dam_phu[k,m,n]
m_co_nhip n_so_tang
i = 1
j = 1
k = 1
RETURN
+
+
+
+
+
–
Trang 14IV.8 Ch-¬ng tr×nh con: G¸n t-êng chÝnh
CTC Gan_tuong_chinh(Dam as Kieu_dam, Loai_tuong as
KT_tang(k), Tuong()
Tai_tuong
Loai_tuong =
1
Tai_tuong = KT_tang(k)*Tuong[1].Tai_phan_bo Dam.Tinh_tai = Dam.Tinh_tai + Tai_tuong
Loai_tuong =
2
Tai_tuong = KT_tang(k)*Tuong[2].Tai_phan_bo Dam.Tinh_tai = Dam.Tinh_tai + Tai_tuong
RETUR N
–
+
–
+
Trang 15IV.9 Ch-ơng trình con: Xác định t-ờng chính
+ +
CTC Xac_dinh_tuong_chinh()
–
CTC Gan_tuong_chinh(Dam_chinh[i,j],1)
Dam_chinh[i,j].Loai_tuong = 2
CTC Gan_tuong_chinh(Dam_chinh[i,j],2)
–
– –
+
j
<m_so_nhip
i <
n_so_tang RETURN
j = j + 1
i = i + 1
+
Dam_chinh[i,j].Loai_tuong = 1
Dam_chinh[n,m]
m_so_nhip n_so_tang
i = 1
j = 1
Trang 16IV.10 Ch-¬ng tr×nh con: T¹o File OUT
Trang 18j = j + 1
1
j = 1
CTC gi_file (Mat_cat[j])
j
<So_mat_ca
CTC gi_file (Vat_lieu)
Ten_tai = “TINHTAI”
CTC gi_file (Ten_tai)
Ten_tai = “HOATTAI1”
CTC gi_file (Ten_tai)
Ten_tai = “HOATTAI2”
2 +
–
Trang 19Ten_tai = “GIOTRAI”
CTC gi_file (Ten_tai)
Ten_tai = “GIOPHAI”
CTC gi_file (Ten_tai)
RETURN