Kelas : 3IA26
Praktikum ke- : 3
Materi : Fortran
NPM : 5D414318
Nama Asisten :
Paraf Asisten :
LABORATORIUM INFORMATIKA
UNIVERSITAS GUNADARMA
2017
LUAS DAN KELILING BANGUN DATAR
PERSEGI
Listing Program
program persegi
integer::S,Luas,Keliling
write(*,*) 'Program Menghitung Luas dan Keliling Persegi'
write(*,*) '============================================'
write(*,1)
1 format(1x, 'Sisi = ',\)
read(*,*)S
Luas=S*S
Keliling=4*S
write(*,*)'Luas = ',Luas
write(*,*)'Keliling = ',Keliling
end program
Logika Program
program persegi
integer::S,Luas,Keliling
write(*,*) '============================================'
write(*,1)
1 format(1x, 'Sisi = ',\)
read(*,*)S
Menampilkan output sesuai dengan format label 1. Format label 1 ini digunakan
untuk menampilkan output Sisi = dan terdapat 1 buah ruang kosong (spasi)
sebelum diletakan output tersebut, simbol \ maksudnya hasil inputan user akan
tercetak sebaris dengan kata Sisi =. Lalu pembacaan input dari user akan
disimpan dalam variable S.
Luas=S*S
Keliling=4*S
Listing diatas merupakan rumus untuk menghitung luas dan keliling pergegi,
dimana rumus luas = S x S serta rumus keliling 4 x S, kemudian hasil
perhitungannya akan disimpan dalam variable Luas dan Keliling.
write(*,*)'Luas = ',Luas
write(*,*)'Keliling = ',Keliling
end program
Output Program
PERSEGI PANJANG
Listing Program
program persegipanjang
integer::P,L,Luas,Keliling
write(*,*) 'Program Menghitung Luas dan Keliling Persegi Panjang'
write(*,*) '===================================================='
write(*,1)
1 format(1x, 'Panjang = ',\)
read(*,*)P
write(*,2)
2 format(1x, 'Lebar = ',\)
read(*,*)L
Luas=P*L
Keliling=2*(P+L)
write(*,*)'Luas = ',Luas
write(*,*)'Keliling = ',Keliling
end program
Logika Program
program persegipanjang
integer::P,L,Luas,Keliling
write(*,*) '===================================================='
write(*,1)
1 format(1x, 'Panjang = ',\)
read(*,*)P
Menampilkan output sesuai dengan format label 1. Format label 1 ini digunakan
untuk menampilkan output Panjang = dan terdapat 1 buah ruang kosong
(spasi) sebelum diletakan output tersebut, simbol \ maksudnya hasil inputan
user akan tercetak sebaris dengan kata Panjang =. Lalu pembacaan input dari
user akan disimpan dalam variable P.
write(*,2)
2 format(1x, 'Lebar = ',\)
read(*,*)L
Menampilkan output sesuai dengan format label 2. Format label 2 ini digunakan
untuk menampilkan output Lebar = dan terdapat 1 buah ruang kosong (spasi)
sebelum diletakan output tersebut, simbol \ maksudnya hasil inputan user akan
tercetak sebaris dengan kata Lebar =. Lalu pembacaan input dari user akan
disimpan dalam variable L. .
Luas=P*L
Keliling=2*(P+L)
Listing diatas merupakan rumus untuk menghitung luas dan keliling pergegi
panjang, dimana rumus luas = P x L serta rumus keliling 2 x (P+L), kemudian
hasil perhitungannya akan disimpan dalam variable Luas dan Keliling.
write(*,*)'Luas = ',Luas
write(*,*)'Keliling = ',Keliling
end program
Output Program
SEGITIGA
Listing Program
program segitiga
integer::A,T,S,Luas,Keliling
write(*,*) 'Program Menghitung Luas dan Keliling Segitiga'
write(*,*) '============================================='
write(*,1)
1 format(1x, 'Alas = ',\)
read(*,*)A
write(*,2)
2 format(1x, 'Tinggi = ',\)
read(*,*)T
write(*,3)
3 format(1x, 'Sisi Miring = ',\)
read(*,*)S
Luas=(A*T)/2
Keliling=A+T+S
write(*,*)'Luas = ',Luas
write(*,*)'Keliling = ',Keliling
end program
Logika Program
program segitiga
integer::A,T,S,Luas,Keliling
write(*,*) '============================================='
Menampilkan output sesuai dengan format label 3. Format label 3 ini digunakan
untuk menampilkan output Sisi Miring = dan terdapat 1 buah ruang kosong
(spasi) sebelum diletakan output tersebut, simbol \ maksudnya hasil inputan
user akan tercetak sebaris dengan kata Sisi Miring =. Lalu pembacaan input
dari user akan disimpan dalam variable S.
Luas=(A*T)/2
Keliling=A+T+S
Listing diatas merupakan rumus untuk menghitung luas dan keliling segitiga,
dimana rumus luas = (A x T) / 2 serta rumus keliling A+T+S, kemudian hasil
perhitungannya akan disimpan dalam variable Luas dan Keliling.
write(*,*)'Luas = ',Luas
write(*,*)'Keliling = ',Keliling
end program
KONVERSI SUHU
Listing Program
real C, R, F, K
character s
write(*,*)"PILIH KONVERSI"
write(*,*)"________________________________________"
10 write(*,1)
if(A.EQ.1)then
write(*,2)
read(*,*)C
R=(4./5)*C
F=(9./5)*C+32
K=C+273
else if(A.EQ.2)then
write(*,3)
read(*,*)F
C=(5./9)*(F-32)
R=(4./9)*(F-32)
K=C+273
else if(A.EQ.3)then
write(*,4)
read(*,*)R
C=(5./4)*R
F=(9./4)*R+32
K=C+273
else if(A.EQ.4)then
write(*,5)
read(*,*)K
C=K-273
F=(9./5)*(K-273)+32
R=(4./5)*(K-273)
else if(A.EQ.0)then
goto 100
else
write(*,*)"pilihan hanya 1,2,3,4,0"
endif
20 write(*,6)
read (*,*)s
if((s.EQ."y").OR.(s.EQ."Y"))then
goto 10
else if((s.EQ."n").OR.(s.EQ."N"))then
goto 100
else
goto 20
endif
100 end
Logika Program
real C, R, F, K
character s
write(*,*)"PILIH KONVERSI"
write(*,*)"________________________________________"
Listing diatas merupakan tampilan menu utama pada program koversi, disini ada 5
pilihan menunya yaitu konversi dari celcius, fahrenheit, reamur, kelvin serta keluar.
10 write(*,1)
Menampilkan output sesuai dengan format label 1. Listing diatas mempunyai label
dengan nomor 10.
read(*,*)A
Format label 1 ini digunakan untuk menampilkan output pilihan = dan terdapat 1
buah ruang kosong (spasi) sebelum diletakan output tersebut, simbol \ maksudnya
hasil inputan user akan tercetak sebaris dengan kata pilihan =. Lalu pembacaan
input dari user akan disimpan dalam variable A.
if(A.EQ.1)then
write(*,2)
read(*,*)C
Jika pilihan yang diinput user sama dengan 1, maka program akan menampilkan
output sesuai dengan format label 2. Kemudian format label 2 ini akan menampilkan
output masukkan nilai C = dan terdapat 1 buah ruang kosong (spasi) sebelum
diletakan output tersebut, simbol \ maksudnya hasil inputan user akan tercetak
sebaris dengan masukkan nilai C =. Lalu pembacaan input dari user akan
disimpan dalam variable C.
R=(4./5)*C
F=(9./5)*C+32
K=C+273
Listing diatas merupakan rumus untuk menghitung konversi dari celcius ke reamur,
fahrenheit, dan kelvin. Yang dimana rumus celcius ke reamur = (4 / 5) x C, celcius ke
fahrenheit = (9 / 5) x C + 32, serta celcius ke kelvin = C + 32, kemudian hasil
perhitungannya akan disimpan dalam variable R untuk reamur, F untuk fahrenheit,
dan K untuk Kelvin.
else if(A.EQ.2)then
write(*,3)
read(*,*)F
Jika pilihan yang diinput user sama dengan 2, maka program akan menampilkan
output sesuai dengan format label 3. Kemudian format label 3 ini akan menampilkan
output masukkan nilai F = dan terdapat 1 buah ruang kosong (spasi) sebelum
diletakan output tersebut, simbol \ maksudnya hasil inputan user akan tercetak
sebaris dengan masukkan nilai F =. Lalu pembacaan input dari user akan
disimpan dalam variable F.
C=(5./9)*(F-32)
R=(4./9)*(F-32)
K=C+273
else if(A.EQ.3)then
write(*,4)
read(*,*)R
Jika pilihan yang diinput user sama dengan 3, maka program akan menampilkan
output sesuai dengan format label 4. Kemudian format label 4 ini akan menampilkan
output masukkan nilai R = dan terdapat 1 buah ruang kosong (spasi) sebelum
diletakan output tersebut, simbol \ maksudnya hasil inputan user akan tercetak
sebaris dengan masukkan nilai R =. Lalu pembacaan input dari user akan
disimpan dalam variable R.
C=(5./4)*R
F=(9./4)*R+32
K=C+273
Listing diatas merupakan rumus untuk menghitung konversi dari reamur ke celcius,
fahrenheit, dan kelvin. Yang dimana rumus reamur ke celcius = (5 / 4) x R, reamur
ke fahrenheit = (9 / 4) x (R+32), serta reamur ke kelvin = C + 273, kemudian hasil
perhitungannya akan disimpan dalam variable C untuk celcius, F untuk fahrenheit,
dan K untuk Kelvin.
write(*,*) "C = ", C
else if(A.EQ.4)then
write(*,5)
read(*,*)K
Jika pilihan yang diinput user sama dengan 4, maka program akan menampilkan
output sesuai dengan format label 5. Kemudian format label 5 ini akan menampilkan
output masukkan nilai K = dan terdapat 1 buah ruang kosong (spasi) sebelum
diletakan output tersebut, simbol \ maksudnya hasil inputan user akan tercetak
sebaris dengan masukkan nilai K =. Lalu pembacaan input dari user akan
disimpan dalam variable K.
C=K-273
F=(9./5)*(K-273)+32
R=(4./5)*(K-273)
Listing diatas merupakan rumus untuk menghitung konversi dari Kelvin ke celcius,
fahrenheit, dan reamur. Yang dimana rumus kelvin ke celcius = K - 273, kelvin ke
fahrenheit = (9 / 5) x (K-273) + 32, serta kelvin ke reamur = (4 / 5) x (K - 273),
kemudian hasil perhitungannya akan disimpan dalam variable C untuk celcius, F
untuk fahrenheit, dan R untuk Reamur.
else if(A.EQ.0)then
goto 100
Jika pilihan yang diinput user sama dengan 0, maka program akan pindah ke label
nomor 100.
else
endif
Jika pilihan yang diinput user tidak sama dengan 1, 2, 3, 4, atau 0, maka program
akan menampilkan output pilihan hanya 1,2,3,4,0
20 write(*,6)
Menampilkan output sesuai dengan format label 6. Listing diatas mempunyai label
dengan nomor 20.
read (*,*)s
Kemudian format label 6 ini akan menampilkan output hitung lagi ?(y/n) dan
terdapat 1 buah ruang kosong (spasi) sebelum diletakan output tersebut, simbol \
maksudnya hasil inputan user akan tercetak sebaris dengan hitung lagi ?(y/n)
Lalu pembacaan input dari user akan disimpan dalam variable s.
if((s.EQ."y").OR.(s.EQ."Y"))then
goto 10
Jika inputan user sama dengan y atau Y, maka program akan pindah ke label nomor
10.
else if((s.EQ."n").OR.(s.EQ."N"))then
goto 100
Jika inputan user sama dengan n atau N, maka program akan pindah ke label nomor
100.
else
goto 20
endif
Jika inputan user tidak sama dengan kondisi-kondisi sebelumnya, maka program
akan pindah ke label nomor 20.
100 end
Output Program