Start
Deklarasi Variabel
Phi,c,D,B,L,Nq,Nc,Ngm,alfa,Sc,Sq,Sgm,
Dc,dq,dgm,ic,iq,igm,qu,qun,SF,pmax,gama,g,a,m
Input
phi,c,gama,D,B,
L
Kapasitas Dukung
Pondasi
phi=0
Ya
Nq=1
Nc=5.14
Ngm=0
Tidak
Nq=((tand(45+(phi/2)))**2)*(exp((22.0/7.0)*tand(phi))
Nc=(Nq-1)*(1/tand(phi))
Ngm=(Nq-1)*tand (1.4*phi)
Ya
phi
10
Nq=Ngm=1
Tidak
Sq=Sgm=1+(0.1*(B/L))*(tand(45+(phi/2)))**2
Ya
phi
10
dq=dgm=1
Tidak
dq=dgm=1+(0.1*(D/B))*(tand(45+(phi/2)))
Beban
Tegak
Lurus
Ya
Tidak
Masukan nilai
alfa
Hitung Faktor Kemiringan Beban
ic=iq=(1-(alfa/90))**2
alfa =
0
Ya
phi
10
igm=1
Tidak
igm==(1-(alfa/phi))**2
Tulis
qu,qun
Input
SF
Hitung Beban Kolom Maksimum
pmax=(B*L)*(qun/SF)
Tulis
pmax
End
ALGORITMA
1. Deklarasi Variabel:
Phi,c,D,B,L,Nq,Nc,Ngm,alfa,Sc,Sq,Sgm,Dc,dq,dgm,ic,iq,igm,qu,qun,SF,pmax,ga
ma,g,a,m
2. Memasukkan nilai : phi,c,gama,D,B,L
3. Menghitung Kapasitas Dukung Pondasi
phi = 0, jika Ya maka Nq=1,Nc=5.14,Ngm=0
qu,qun
8. Menghitung Beban Kolom Maksimum
Masukan harga SF( faktor keamanan )
Hitung : pmax=(B*L)*(qun/SF)
Menuliskan Hasil Beban Kolom Maksimum : pmax
LISTING PROGRAM
! Heading Statement
! Program Menghitung Daya Dukung Pondasi Dangkal
! Declaration
real :: phi,c,D,B,L,Nq,Nc,Ngm,alfa,Sc,Sq,Sgm,dc,dq,dgm,ic,iq,igm,qu,qun,SF,pmax,gamma,g,a,m
! Program Execution
do
write (*,*)'++++++++++++++++++++++++++++++++++++++++++++++++++++++'
write (*,*)'+ | PROGRAM MENGHITUNG DAYA DUKUNG PONDASI DANGKAL | +'
write (*,*)'+ | UNTUK BEBAN SENTRIS (TEGAK LURUS / MIRING) | +'
write (*,*)'+
+'
: ',\)
: ',\)
: ',\)
if (phi.LE.10) then
Sq=1
else
Sq=1+(0.1*(B/L))* (tand (45+(phi/2)))**2
end if
Sgm=Sq
write (*,*)'Faktor Bentuk Pondasi :'
write (*,17) Sc, Sq, Sgm
17 format (1x, 'Sc = ',F6.2,1x,'Sq = ',F6.2,1x,'Sgm = ',F6.2)
! Menghitung Faktor Kedalaman pondasi
write (*,*)''
write (*,*)'Menghitung Faktor Kedalaman Pondasi'
write (*,*)'-----------------------------------'
dc=1+(0.2*(D/B))* (tand (45+(phi/2)))
if (phi.LE.10) then
dq=1
else
dq=1+(0.1*(D/B))* (tand (45+(phi/2)))
end if
dgm=dq
write (*,*)'Faktor Kedalaman Pondasi :'
write (*,18) dc, dq, dgm
18 format (1x, 'dc = ',F6.2,1x,'dq = ',F6.2,1x,'dgm = ',F6.2)
! Menghitung Faktor Kemiringan Beban
write (*,*)''
write (*,*)'Menghitung Faktor Kemiringan Beban'
write (*,*)'----------------------------------'
write (*,*)'Beban Kolom Termasuk Jenis Beban Apa? [1] Tegak Lurus [2] Miring'
read(*,*) a
if (a.EQ.1) then
alfa=0
goto 20
else
write (*,*)''
write (*,26)
read (*,*) alfa
26 format (1x, 'Masukkan Sudut Kemiringan beban Terhadap arah vertikal (Derajat) : ',\)
end if
20 ic=(1-(alfa/90))**2
iq=ic
if (phi.LE.10) then
igm=1
else
igm=(1-(alfa/phi))**2
end if
write (*,*)''
write (*,*)'Faktor Kemiringan Beban :'
write (*,19) ic, iq, igm
19 format (1x, 'ic = ',F6.2,1x,'iq = ',F6.2,1x,'igm = ',F6.2)
! Menghitung Daya Dukung Ultimate & Daya Dukung Ultimate netto
qu=(Sc*dc*ic*c*Nc)+(Sq*dq*iq*D*gamma*Nq)+(Sgm*dgm*igm*0.5*B*gamma*Ngm)
qun=qu-(D*gamma)
write (*,*)''
write (*,*)'Menghitung Daya Dukung Ultimate'
write (*,*)'-------------------------------'
write (*,*)'Daya Dukung Ultimate :'
write (*,21) qu
21 format (1x, 'qu = ',F7.2)
write (*,*)''
write (*,*)'Menghitung Daya Dukung Ultimate Netto'
write (*,*)'-------------------------------------'
write (*,*)'Daya Dukung Ultimate Netto :'
write (*,22) qun
22 format (1x, 'qun = ',F7.2)
! Menghitung Beban Kolom Maksimum
write (*,*)''
write (*,*)''
write (*,*)'[1] Menghitung Lagi'
write (*,*)'[2] Selesai'
read (*,*) m
if (m.EQ.2) exit
end do
! Ending Statement
end