LABORATORIUM KOMPUTER
SEMESTER GENAP 2012/2013
Disusun oleh :
SATRIYO WIWEKO SETYO M. NIM. 1110620080
Puji syukur kami panjatkan kehadirat Tuhan Yang Maha Esa karena
atas limpahan rahmat dan berkah-Nya sehingga Laporan Praktikum Laboratorium
Komputer ini dapat kami selesaikan dengan baik.
Pembuatan laporan ini bertujuan untuk memenuhi persyaratan dari
Laporan Praktikum Laboratorium Komputer. Penulis berharap laporan ini dapat
memberikan manfaat bagi kelancaran bidang akademik mahasiswa khususnya dan
bagi pembaca pada umumnya.
Dalam kesempatan kali ini pula penulis mengucapkan terima kasih
kepada semua pihak yang telah membantu menyelesaikan laporan ini. Secara
khusus penulis mengucapkan terima kasih kepada :
1. Bapak Prof. Dr.Ir. Rudy Soenoko M.Eng. Sc, selaku Kepala Laboratorium
Komputer, Jurusan Teknik Mesin, Fakultas Teknik, Universitas
Brawijaya.
Penulis
i
DAFTAR ISI
Halaman Judul
Lembar Persetujuan
Kata Pengantar ………………………………………………………………….....i
Daftar Isi..………………………………………………………………………....ii
BAB I Pendahuluan
1.1 Latar Belakang ……………………………………………………………….1
1.2 Tujuan Praktikum ……………………………………………………………..2
1.3 Batasan Masalah ………………………………………………………………2
1.4 Manfaat Peraktikum …………………………………………………………..2
ii
3.2 Project 2……………………………………………………………………...57
3.2.1 Definisi Masalah…………………………………………………………...57
3.2.2 Algoritma…………………………………………………………………..58
3.2.3 Flowchart…………………………………………………………………..59
3.2.4 Cara Kerja Program………………………………………………………...61
3.2.5 Gambar Tampilan ………………………………………………………….73
3.2.6 Listing Program…………………………………………………………….75
BAB IV Kesimpulan……………………………………………………………84
BAB V Saran……………………………………………………………………85
Daftar Pustaka……………….............................................................................iv
iii
JURUSAN MESIN
FAKULTAS TEKNIK
UNIVERSITAS BRAWIJAYA
BAB I
PENDAHULUAN
KELOMPOK 12 1
LAPORAN PRAKTIKUM PEMROGRAMAN KOMPUTER 2013
LABORATORIUM KOMPUTER
JURUSAN MESIN
FAKULTAS TEKNIK
UNIVERSITAS BRAWIJAYA
KELOMPOK 12 2
LAPORAN PRAKTIKUM PEMROGRAMAN KOMPUTER 2013
LABORATORIUM KOMPUTER
JURUSAN MESIN
FAKULTAS TEKNIK
UNIVERSITAS BRAWIJAYA
BAB II
LANDASAN TEORI
2.1 Algoritma
KELOMPOK 12 3
LAPORAN PRAKTIKUM PEMROGRAMAN KOMPUTER 2013
LABORATORIUM KOMPUTER
JURUSAN MESIN
FAKULTAS TEKNIK
UNIVERSITAS BRAWIJAYA
B. Definisi Algoritma
C. Jenis-jenis Algoritma
KELOMPOK 12 4
LAPORAN PRAKTIKUM PEMROGRAMAN KOMPUTER 2013
LABORATORIUM KOMPUTER
JURUSAN MESIN
FAKULTAS TEKNIK
UNIVERSITAS BRAWIJAYA
D. Contoh Algoritma
KELOMPOK 12 5
LAPORAN PRAKTIKUM PEMROGRAMAN KOMPUTER 2013
LABORATORIUM KOMPUTER
JURUSAN MESIN
FAKULTAS TEKNIK
UNIVERSITAS BRAWIJAYA
2.2 Flowchart
A. Simbol-simbol Flowchart
Simbol-simbol yang di pakai dalam flowchart dibagi menjadi 3 kelompok
:
1) Flow direction symbols
– Digunakan untuk menghubungkan simbol satu dengan yang lain
– Disebut juga connecting line
2) Processing symbols
KELOMPOK 12 6
LAPORAN PRAKTIKUM PEMROGRAMAN KOMPUTER 2013
LABORATORIUM KOMPUTER
JURUSAN MESIN
FAKULTAS TEKNIK
UNIVERSITAS BRAWIJAYA
(Wikipedia.com)
KELOMPOK 12 7
LAPORAN PRAKTIKUM PEMROGRAMAN KOMPUTER 2013
LABORATORIUM KOMPUTER
JURUSAN MESIN
FAKULTAS TEKNIK
UNIVERSITAS BRAWIJAYA
b. Processing Symbols
(Wikipedia.com)
KELOMPOK 12 8
LAPORAN PRAKTIKUM PEMROGRAMAN KOMPUTER 2013
LABORATORIUM KOMPUTER
JURUSAN MESIN
FAKULTAS TEKNIK
UNIVERSITAS BRAWIJAYA
(Wikipedia.com)
KELOMPOK 12 9
LAPORAN PRAKTIKUM PEMROGRAMAN KOMPUTER 2013
LABORATORIUM KOMPUTER
JURUSAN MESIN
FAKULTAS TEKNIK
UNIVERSITAS BRAWIJAYA
START
Panjang rusuk
V = r3
Volume kubus
selesai
KELOMPOK 12 10
LAPORAN PRAKTIKUM PEMROGRAMAN KOMPUTER 2013
LABORATORIUM KOMPUTER
JURUSAN MESIN
FAKULTAS TEKNIK
UNIVERSITAS BRAWIJAYA
b. Comment
Berisikan tulisan bebas yang berfungsi untuk memeberi keterangan
pada program, sehingga memudahkan untuk membaca dan analisis
membaca program. Simbol yang digunakan untuk comment yaitu diawali
dengan huruf C.
c. Konstanta
Konstanta adalah bilangan yang tidak berubah harganya selama
pelaksanaan sebuah program. Konstatnta diwujudkan dalam bentuk
numerik. Modus suatu konstanta dapat real (bilangan dapat pecahan),
integer (tidak mengandung desimal), konstanta karakter dan konstanta
logika.
Contoh :
+327, -173 konstanta integer
123.456, 5.0E03, -5.0E-03 konstanta real
‘ABC’,’ ‘, ‘PT. XYZ’ konstanta karakter, diapit oleh petik
tunggal
.TRUE. , .FALSE. konstanta logika hanya memiliki dua
nilai yaitu benar (true) dan salah (false)
d. Verb
KELOMPOK 12 11
LAPORAN PRAKTIKUM PEMROGRAMAN KOMPUTER 2013
LABORATORIUM KOMPUTER
JURUSAN MESIN
FAKULTAS TEKNIK
UNIVERSITAS BRAWIJAYA
e. Unit Specifier
KELOMPOK 12 12
LAPORAN PRAKTIKUM PEMROGRAMAN KOMPUTER 2013
LABORATORIUM KOMPUTER
JURUSAN MESIN
FAKULTAS TEKNIK
UNIVERSITAS BRAWIJAYA
g. Tipe data
Tipe data adalah suatu hal yang menggambarkan jenis nilai dari
suatu obyek data (konstanta atau variabel) yang nantinya akan digunakan
saat program dijalankan, tipe data yang umumnya ada di fortran ada 3
yaitu tipe data real, tipe data integer, dan tipe data character. (Ayub
Adiputra, Tipe Data Dasar)
Contoh:
KELOMPOK 12 13
LAPORAN PRAKTIKUM PEMROGRAMAN KOMPUTER 2013
LABORATORIUM KOMPUTER
JURUSAN MESIN
FAKULTAS TEKNIK
UNIVERSITAS BRAWIJAYA
Nomor statemen “125” pada baris 2,3,4 mempunyai arti yang sama .
“Label” sama artinya dengan “nomor statemen”,dapat disebut juga “alamat
statemen”.
Contoh :
KELOMPOK 12 14
LAPORAN PRAKTIKUM PEMROGRAMAN KOMPUTER 2013
LABORATORIUM KOMPUTER
JURUSAN MESIN
FAKULTAS TEKNIK
UNIVERSITAS BRAWIJAYA
Sumber : belajar sendiri bahasa fortran (Ir F Soesianto, 2001 : Hal 14)
Nomor-nomor: 00123,00124,00125 adalah nomor-nomor staemen.
3. Kalau kolom 1 diberi huruf C,maka kolom 2-80 boleh ditulisi apa saja
sebagai komentar,dan tidak akan diproses.
Sumber : Belajar Sendiri Bahasa Fortran (Ir F Soesianto, 2001 : Hal 25)
Verb
Tipe data adalah suatu hal yang menggambarkan jenis nilai dari
suatu obyek data (konstanta atau variabel) yang nantinya akan digunakan saat
program dijalankan. (Ayub Adiputra, Tipe Data Dasar)
KELOMPOK 12 16
LAPORAN PRAKTIKUM PEMROGRAMAN KOMPUTER 2013
LABORATORIUM KOMPUTER
JURUSAN MESIN
FAKULTAS TEKNIK
UNIVERSITAS BRAWIJAYA
Berikut ini adalah secara lengkap tipe data yang di gunakan di dalam
FORTRAN :
KELOMPOK 12 17
LAPORAN PRAKTIKUM PEMROGRAMAN KOMPUTER 2013
LABORATORIUM KOMPUTER
JURUSAN MESIN
FAKULTAS TEKNIK
UNIVERSITAS BRAWIJAYA
KELOMPOK 12 18
LAPORAN PRAKTIKUM PEMROGRAMAN KOMPUTER 2013
LABORATORIUM KOMPUTER
JURUSAN MESIN
FAKULTAS TEKNIK
UNIVERSITAS BRAWIJAYA
2.6 Variabel
Variabel digunakan untuk menyimpan suatu konstanta. Nama variabel
bisa sesuai keinginan, namun harus memenuhi aturan-aturan sebagai berikut
:
a) Minimal satu karakter, maksimal enam karakter.
b) Karakter pertama harus karakter alfabetis.
c) Tidak mengandung karakter khusus ( ?, =, !, - )
d) Tidak mengandung karakter kosong.
e) Tidak menggunakan kata standar yang sudah dipakai compiler, seperti
READ, WRITE, GOTO, dan lain-lain.
KELOMPOK 12 19
LAPORAN PRAKTIKUM PEMROGRAMAN KOMPUTER 2013
LABORATORIUM KOMPUTER
JURUSAN MESIN
FAKULTAS TEKNIK
UNIVERSITAS BRAWIJAYA
REAL*8 NILAI
NILAI = 275
Atau
DOUBLE PRECISION NILAI
NILAI = 75
c) Variabel real preposisi tunggal
Adalah variabel yang digunakan untuk menyimpan nilai numerik
pecahan sebesar 4 byte. Bila tidak didefinisikan, maka variabel integer
harus ditunjukkan oleh nama variabelnya yang diawali dengan huruf I,
J, K , L, M, atau N.
Contoh :
REAL NILAI
NILAI = 99
d) Variabel karakter
Adalah variabel yang digunakan untuk menyimpan nilai karakter.
Default dari variabel ini adalah 4 byte dan dapat didefinisikan menjadi
1 byte atau n byte (n maksimum 127 byte). Nama dari variabel
karakter bebas ini bebas diawali dengan huruf apapun.
e) Variabel logika
Adalah Variabel yang digunakan untuk menyimpan nilai logika.
Default dari variabel ini adalah 4 byte dan dapat didefinisikan menjadi
2 byte.
Contoh :
STATUS = .TRUE
2.7 Operator
Operator di dalam bahasa FORTRAN dapat terdiri dari operator
arithmatika (arithmetic operator), operator hubungan (relational operator)
KELOMPOK 12 20
LAPORAN PRAKTIKUM PEMROGRAMAN KOMPUTER 2013
LABORATORIUM KOMPUTER
JURUSAN MESIN
FAKULTAS TEKNIK
UNIVERSITAS BRAWIJAYA
KELOMPOK 12 21
LAPORAN PRAKTIKUM PEMROGRAMAN KOMPUTER 2013
LABORATORIUM KOMPUTER
JURUSAN MESIN
FAKULTAS TEKNIK
UNIVERSITAS BRAWIJAYA
Ungkapan hubungan
Ungkapan arithmatika
Ungkapan logika
KELOMPOK 12 22
LAPORAN PRAKTIKUM PEMROGRAMAN KOMPUTER 2013
LABORATORIUM KOMPUTER
JURUSAN MESIN
FAKULTAS TEKNIK
UNIVERSITAS BRAWIJAYA
(A+B)/C+D +D
(A**2+B**2)**0.5
KELOMPOK 12 23
LAPORAN PRAKTIKUM PEMROGRAMAN KOMPUTER 2013
LABORATORIUM KOMPUTER
JURUSAN MESIN
FAKULTAS TEKNIK
UNIVERSITAS BRAWIJAYA
Sumber : ti-menengah.lab.gunadarma.ac.id/wp-content/uploads/2010/02/bab2-
2. Ungkapan Hubungan.
Ungkapan hubungan membandingkan nilai dari dua buah numerik
atau karakter. Pembandingan tersebut menggunakan operator sebagai
berikut:
Tabel Operator
Operator Arti Contoh
.LT. Lebih kecil dari A .LT. B (A<B)
.LE. Lebih kecil sama dengan dari A .LE. B (A≤B)
.EQ. Sama dengan A .EQ. B (A=B)
.NE. Tidak sama dengan A .NE. B (A≠B)
.GT. Lebi besar dari A .GT. B (A>B)
.GE. Lebih besar sama dengan dari A .GE. B (A≥B)
Sumber : ti-menengah.lab.gunadarma.ac.id/wp-content/uploads/2010/02/bab2-
RK.pdf
Contoh :
IF (A .LT. B) C=5 (Jika A Kurang dari B maka C = 5)
Ungkapan hubungan
KELOMPOK 12 24
LAPORAN PRAKTIKUM PEMROGRAMAN KOMPUTER 2013
LABORATORIUM KOMPUTER
JURUSAN MESIN
FAKULTAS TEKNIK
UNIVERSITAS BRAWIJAYA
3. Ungkapan Logika.
Untuk logikal Variabel menggunakan salah satu dari logical
operator berikut yang menghasilkan suatu nilai benar (TRUE) atau salah
(FALSE):
Tabel Operator Logika
Operator Arti Jenjang
.NOT. Tidak atau bukan 1
.AND. Dan 2
.OR. Atau 3
Sumber: ti-menengah.lab.gunadarma.ac.id/wp-content/uploads/2010/02/bab2-
RK.pdf
Tabel contoh operator logika .NOT.
A .NOT. A
TRUE FALSE
FALSE TRUE
Sumber: ti-menengah.lab.gunadarma.ac.id/wp-content/uploads/2010/02/bab2-
RK.pdf
Tabel contoh operator logika .AND.
A B A .NOT. B
TRUE TRUE TRUE
TRUE FALSE FALSE
FALSE TRUE FALSE
FALSE FALSE FALSE
Sumber: ti-menengah.lab.gunadarma.ac.id/wp-content/uploads/2010/02/bab2-
RK.pdf
KELOMPOK 12 25
LAPORAN PRAKTIKUM PEMROGRAMAN KOMPUTER 2013
LABORATORIUM KOMPUTER
JURUSAN MESIN
FAKULTAS TEKNIK
UNIVERSITAS BRAWIJAYA
ELSEIF
ENDIF
Suatu statemen Blok If harus diawali dengan statemen
IF-THENdan diakhiri dengan statement ENDIF. Suatu
loncatan menujukedalam Blok If tidak diperbolehkan, tetapi
loncatan keluar Blok If diperbolehkan.
KELOMPOK 12 27
LAPORAN PRAKTIKUM PEMROGRAMAN KOMPUTER 2013
LABORATORIUM KOMPUTER
JURUSAN MESIN
FAKULTAS TEKNIK
UNIVERSITAS BRAWIJAYA
close(1)
end
Keterangan:
Program tersebut akan membaca data dari file bernama
“Data1.dat”kemudian hasil dari pembacaan ditulis di Console
(Display). Keluaran pada console berupa 12.30 123.45 (hasil ini
didapat dari data1.dat yang sudah berisi data 12.30 123.45).
B. Statement OPEN
Untuk membuka File yang berguna bagi pembacaan data
dari dan penulisan data padafile yang dibuka tersebut. Penulisan
statetment open sebagai berikut :
Keterangan:
Unit specifier yang digunakan 1
Nama File yang dibuka : test1.txt
Access yang digunakan SEQUENTIAL (default)
Record adalah FORMATTED( default)
Isi File test1.txt test1-test-tes
C. Statemen WRITE
KELOMPOK 12 30
LAPORAN PRAKTIKUM PEMROGRAMAN KOMPUTER 2013
LABORATORIUM KOMPUTER
JURUSAN MESIN
FAKULTAS TEKNIK
UNIVERSITAS BRAWIJAYA
DO 10 I=1,5
10 write (*,50) I
50 format (1x.’I= ‘,1x,I1)
end
Hasil keluaran program
I=1
I=2
I=3
I=4
I=5
3. Pelompatan (GOTO)
Statement GOTO merupakan statemen yang dapat digunakan
untuk melompat menuju ke statemen yang lainnya. Statemen GOTO dapat
dibedakan atas:Ada dua bentuk statemenini, yaitu:
A. Statemen GOTO tanpa syarat
Fungsi: untuk memerintahkan proses meloncat langsung ke
statemen dengan label yang ditunjuk
Bentuk umum:
GO TO n
Dengan n = label dari suatu instruksi selanjutnya yang harus
dilaksanakan
Contoh:
C2345678
READ(*,*) A, B
WRITE(*,*) ‘ NILAI A=’ , A
GOTO 50
WRITE(*,*) ‘ NILAI B=’ , B
50 STOP
END
KELOMPOK 12 32
LAPORAN PRAKTIKUM PEMROGRAMAN KOMPUTER 2013
LABORATORIUM KOMPUTER
JURUSAN MESIN
FAKULTAS TEKNIK
UNIVERSITAS BRAWIJAYA
Contoh penggunaan :
write(*,'(3x,a,\)')'nilai a = '
read(*,*)a
write(*,'(3x,a,\)')'nilai b = '
read(*,*)b
if (a.gt.b) write(*,'(3x,a)')'nilai a besar dari b'
if (a.lt.b) write(*,'(3x,a)')'nilai b besar dari a'
end
Aritmatika IF
KELOMPOK 12 34
LAPORAN PRAKTIKUM PEMROGRAMAN KOMPUTER 2013
LABORATORIUM KOMPUTER
JURUSAN MESIN
FAKULTAS TEKNIK
UNIVERSITAS BRAWIJAYA
STOP
END
B. Statement Block IF
Statemen ini digunakan untuk menyeleksi suatu kondisi dan
mengambil tindakan apa yang harus dilakukan dalam bentuk blok-
blok statement. Statemen Block IF ini didukung oleh beberapa
statemen, antara lain statemen IF-THEN, ELSE, ELSE IF, serta
ENDIF.
IF – THEN
Fungsi: Menyatakan suatu blok statemen-statemen yang
harus digarap bila suatu kondisi tertentu dipenuhi.
Bentuk umum:
…………………………………..
…………………………………..
IF (Ekspresi nalar) THEN
…………………………………..
………………………………….. Statemen kolompok A
…………………………………..
ENDIF
…………………………………..
Di mana:
- Ekspresi nalar : adalah suatu ekspresi nalar biasa
seperti yangsudah dijelaskan pada bab terdahulu
- Statemen IF-THEN ini tidak bisa dilepaskan dari
statemen ENDIF sebagai batas akhir dari blok IF-
THEN
- Statemen kelompok A: kelompok statemen ini akan
digarap apabila ekspresi nalar terpenuhi. Apabila
ekspresi nalar tidak terpenuhi maka progrm akan
KELOMPOK 12 36
LAPORAN PRAKTIKUM PEMROGRAMAN KOMPUTER 2013
LABORATORIUM KOMPUTER
JURUSAN MESIN
FAKULTAS TEKNIK
UNIVERSITAS BRAWIJAYA
ELSE
……………………….
………………………. Statemen kelompok B
……………………….
ENDIF
……………………….
STOP
END
Dimana:
- Ekspresi nalar: adalah suatu ekspresi nalar biasa
seperti yang sudah dijelaskan pada bab terdahulu.
- Statemen kelompok A : kelompok yang akan
digarap apabila ekspresi nalar dipenuhi
- Statemen kelompok B : kelompok statemen yang
harus digarap bila ekspresi nalar tidak dipenuhi.
ELSEIF
KELOMPOK 12 37
LAPORAN PRAKTIKUM PEMROGRAMAN KOMPUTER 2013
LABORATORIUM KOMPUTER
JURUSAN MESIN
FAKULTAS TEKNIK
UNIVERSITAS BRAWIJAYA
ENDIF
Dimana: statemen ENDIF diletakkan di akhir blok statemen
IF-THEN.
5. Subprogram.
Yang dimaksud dengan Subprogram adalah suatu program
tersendiri yang dapat dipanggil berkali-kali oleh program utama maupun
oleh Subprogram lain untuk suatu tujuantertentu. Subprogram bersifat
otonom, sehingga pada prinsipnya terpisah dari program utama maupun
terhadap Subprogram yang lain. (http://docs.oracle.com/cd/E19059-
01/stud.8/817-5066/11_cfort.html)
Subprogram ada 2 macam:
A. Subprogram SUBROUTINE
Statement ini dapat digunakan untuk mengidentifikasikan
suatu unit program adalah suatu rutin bagian serta sekaligus
memberikan nama dan argumen-argumennya.
Bentuk umum:
SUBROUTINE <nama_subroutine> [<parameter1>,
<parameter2>..]
Keterangan :
- <subroutine-name> adalah nama dari rutin bagian
- <parameter> adalah nama dari argumen, atau disebut juga
dengan dummy argumen
Berikut ini diberikan beberapa ketentuan dari subroutine:
Subroutine merupakan unit program tersendiri yang diawali
dengan statement SUBROUTINE dan diakhiri dengan
statement END atau RETURN, serta dipergunakan oleh
unit program yang lain dengan statement CALL.
Bentuk Pemanggilan:
Program Utama
….
KELOMPOK 12 39
LAPORAN PRAKTIKUM PEMROGRAMAN KOMPUTER 2013
LABORATORIUM KOMPUTER
JURUSAN MESIN
FAKULTAS TEKNIK
UNIVERSITAS BRAWIJAYA
write(*,*)
write(*,10)x,y
10 format(//,1x,'x =',F5.2,2x,'; x^2+2x+10 =',f7.2)
end
Subroutine compute(x,y)
y=x**2+2*x+10
return
end
SUBROUTINE hitung
common x,y
y=x**2-2*x
end
Hasil keluaran program pada console
Masukkan Harga x?
3.
y= 3.00
KELOMPOK 12 42
LAPORAN PRAKTIKUM PEMROGRAMAN KOMPUTER 2013
LABORATORIUM KOMPUTER
JURUSAN MESIN
FAKULTAS TEKNIK
UNIVERSITAS BRAWIJAYA
BAB III
PEMBUATAN PROGRAM
3.1 Project 1
Dalam project 1, merupakan gabungan dari beberapa program yang
sebelumnya telah dibuat terlebih dahulu. Program gabungan yang kami buat
ini merupakan program dengan menggunakan rumus efisiensi thermal siklus
otto, usaha, dan kecepatan pengeboran
KELOMPOK 12 43
LAPORAN PRAKTIKUM PEMROGRAMAN KOMPUTER 2013
LABORATORIUM KOMPUTER
JURUSAN MESIN
FAKULTAS TEKNIK
UNIVERSITAS BRAWIJAYA
wnet=qin - qout
atau
KELOMPOK 12 44
LAPORAN PRAKTIKUM PEMROGRAMAN KOMPUTER 2013
LABORATORIUM KOMPUTER
JURUSAN MESIN
FAKULTAS TEKNIK
UNIVERSITAS BRAWIJAYA
KELOMPOK 12 45
LAPORAN PRAKTIKUM PEMROGRAMAN KOMPUTER 2013
LABORATORIUM KOMPUTER
JURUSAN MESIN
FAKULTAS TEKNIK
UNIVERSITAS BRAWIJAYA
3.1.3 Flowchart
mulai
A A A
Tekan y atau t
Tidak Tidak
Jika 1 Jika 2 Jika 3
Tidak
Masukkan e
masukkan a Masukkan e
Ya Selesai
Ya
Ya Tidak
Tidak Tidak
Ya
Ya Ya
Masukkan b
Masukkan b Masukkan b
Ya
Ya Tidak
Tidak Ya
Tidak
Ya
Ya Ya
C
A B
KELOMPOK 12 46
LAPORAN PRAKTIKUM PEMROGRAMAN KOMPUTER 2013
LABORATORIUM KOMPUTER
JURUSAN MESIN
FAKULTAS TEKNIK
UNIVERSITAS BRAWIJAYA
write(*,*)'========================================
=====
/======================' (3)
Statement (1), dan (3) adalah hiasan dan akan muncul di
console tanda (=) dan untuk statement (2) adalha untuk menampilkan
tulisan “menghitung efsiensi siklus otto” dengan syarat diberi tanda
petik tunggal (‘) pada awal dan akhir kalimat.
KELOMPOK 12 47
LAPORAN PRAKTIKUM PEMROGRAMAN KOMPUTER 2013
LABORATORIUM KOMPUTER
JURUSAN MESIN
FAKULTAS TEKNIK
UNIVERSITAS BRAWIJAYA
write(*,83)C (40)
83 format(3/,1x,"efesiensi mesin otto adalah",f10.2,"%") (41)
goto 61 (42)
pada statement 37 mengeluarkan tulisan untuk memasukkan
nilai kompresi rasio kemudian statement 38 untuk membaca inputan
nilai yang di masukkan, pada statement 39 yaitu berfungsi untuk
memanggil subprogram dengan nama efisien3(C,f), untuk statement 40
dan 41 adalah hasil dari perhitungan efisien thermal siklus otto dengan
format tertentu, dan statement 42 berfungsi untuk kembali pada koding
dengan nomer command 61.
subroutine efisien2(C,e,b)
C=1-e/b
return
end
subroutine efisien3(C,f)
C=1-(1/(f**(0,4)))
return
end
dan di atas ini adalah subprogram, subprogram ini akan
berfungsi apabila terdapat fungsi call.
3.1.5 Gambar Tampilan
Setelah itu pilih pilih folder force 2.0
Pilih force 2.0
Maka akan tampil program force 2.0 seperti di bawah ini
KELOMPOK 12 51
LAPORAN PRAKTIKUM PEMROGRAMAN KOMPUTER 2013
LABORATORIUM KOMPUTER
JURUSAN MESIN
FAKULTAS TEKNIK
UNIVERSITAS BRAWIJAYA
KELOMPOK 12 52
LAPORAN PRAKTIKUM PEMROGRAMAN KOMPUTER 2013
LABORATORIUM KOMPUTER
JURUSAN MESIN
FAKULTAS TEKNIK
UNIVERSITAS BRAWIJAYA
KELOMPOK 12 53
LAPORAN PRAKTIKUM PEMROGRAMAN KOMPUTER 2013
LABORATORIUM KOMPUTER
JURUSAN MESIN
FAKULTAS TEKNIK
UNIVERSITAS BRAWIJAYA
KELOMPOK 12 54
LAPORAN PRAKTIKUM PEMROGRAMAN KOMPUTER 2013
LABORATORIUM KOMPUTER
JURUSAN MESIN
FAKULTAS TEKNIK
UNIVERSITAS BRAWIJAYA
if(K.EQ.'1') goto 11
if(K.EQ.'2') goto 12
if(K.EQ.'3') goto 13
if(K.NE.'1,2,3') then
write(*,*)'maaf inputan yang anda masukkan salah'
goto 91
endif
11 write(*,*)'masukkan nilai W net'
read(*,'(f5.0)',err=14)a
71 write(*,*)'masukkan nilai q in'
read(*,'(f5.0)',err=15)b
C=a/b
write(*,81)C
81 format(3/,1x,"efesiensi mesin otto adalah",f10.2,"%")
goto 61
12 write(*,*)'nilai q in harus lebih besar daripada q out'
write(*,*)''
write(*,*)'masukkan nilai q in'
read(*,'(f5.0)',err=16) b
72 write(*,*)'masukkan nilai q out'
read(*,'(f5.0)',err=18) e
if(b.LT.e) then
write(*,*)'maaf data yang anda inputkan salah'
goto 12
endif
C=1-e/b
write(*,82)C
82 format(3/,1x,"efesiensi mesin otto adalah",f10.2,"%")
goto 61
13 write(*,*)'masukkan nilai compression rasio'
read(*,'(f5.0)',err=19)f
KELOMPOK 12 55
LAPORAN PRAKTIKUM PEMROGRAMAN KOMPUTER 2013
LABORATORIUM KOMPUTER
JURUSAN MESIN
FAKULTAS TEKNIK
UNIVERSITAS BRAWIJAYA
C=1-(1/(f**(0,4)))
write(*,83)C
83 format(3/,1x,"efesiensi mesin otto adalah",f10.2,"%")
write(*,*)'hasil diatas jika nilai K = 1,4 (udara pada suhu ruanga
/n)'
goto 61
61 write(*,*)'apakah anda ingin melakukan perhitungan lagi ?'
write(*,*)'tekan y untuk melakukan perhitungan lagi'
write(*,*)'tekan t untuk selesai'
read(*,*)K
if(K.EQ.'y') goto 1
if(K.EQ.'t') then
write(*,*)'terima kasih'
endif
goto 79
14 write(*,*)'nilai tidak logis'
goto 11
15 write(*,*)'nilai tidak logis'
goto 71
16 write(*,*)'nilai tidak logis'
goto 12
18 write(*,*)'nilai tidak logis'
goto 72
19 write(*,*)'nilai tidak logis'
goto 13
79 end
KELOMPOK 12 56
LAPORAN PRAKTIKUM PEMROGRAMAN KOMPUTER 2013
LABORATORIUM KOMPUTER
JURUSAN MESIN
FAKULTAS TEKNIK
UNIVERSITAS BRAWIJAYA
3.2 Project 2
Dalam projek 2 ini kami membuat program untuk mencari hasil
Invers matriks maupun perkalian matriks pada ordo 3 x 3.
KELOMPOK 12 57
LAPORAN PRAKTIKUM PEMROGRAMAN KOMPUTER 2013
LABORATORIUM KOMPUTER
JURUSAN MESIN
FAKULTAS TEKNIK
UNIVERSITAS BRAWIJAYA
3.2.2 Alogaritma
1 Mulai
2 Masukkan 1 atau 2
3 Jika tidak memilih kembali ke langkah 2
4 Jika 1, Inputan matrik dari notepad ‘input matriks.txt’
5 Muncul matrik orde 3x3
6 Hitung determinan matriks
7 Hasil determinan matriks
8 Hitung kofaktor matriks
9 Hasil kofaktor
10 Hitung Adjoint
11 Hasil Adjoint
12 Hitung dengan rumus invers = 1/Determinan x Adjoint
13 Hasil Invers matriks
14 Jika 2, Inputan matriks dari notepad ada 2 yaitu ‘MATRIKS A.txt’ dan
‘MATRIKS B.txt’ .
15 Muncul matriks 3 x 3 sebanyak 2 jenis yaitu matriks A dan Matriks B
16 Hitung perkalian matriks A x Matriks B
17 Hasil perkalian matriks A dan matriks B keluar di notepad ‘hasil perkalian
matriks A x B.txt’
18 Selesai
KELOMPOK 12 58
LAPORAN PRAKTIKUM PEMROGRAMAN KOMPUTER 2013
LABORATORIUM KOMPUTER
JURUSAN MESIN
FAKULTAS TEKNIK
UNIVERSITAS BRAWIJAYA
3.2.3 Flowchart
Mulai
Tidak
1
Masukkan 1 atau 2
Jika 2
Tidak
Jika 1
Inputan dari
Notepad i1 i2 i3 l1 l2 l3
A= j1 j2 j3 B= m1 m2 m3
k1 k2 k3 n1 n2 n3
x1 x2 x3
A= y1 y2 y3 Hitung matriks A x matriks B
z1 z2 z3
(i1 x l1) + (i2 x m1) + (i3 x n1) (i1 x l2) + (i2 x m2) + (i3 x n2) (i1 x l3) + (i2 x m3) + (i3 x n3)
(j1 x l1) + (j2 x m1) + (j3 x n1) (j1 x l2) + (j2 x m2) + (j3 x n2) (j1 x l3) + (j2 x m3) + (j3 x n3)
(k1 x l1) + (k2 x m1) + (k3 x n1) (k1 x l2) + (k2 x m2) + (k3 x n2) (k1 x l3) + (k2 x m3) + (k3 x n3)
Hasil Perkalian
Matriks A x Matriks B
KELOMPOK 12 59
LAPORAN PRAKTIKUM PEMROGRAMAN KOMPUTER 2013
LABORATORIUM KOMPUTER
JURUSAN MESIN
FAKULTAS TEKNIK
UNIVERSITAS BRAWIJAYA
A B
Hitung kofaktor A
Adjoint A
A invers
ya
Apakah ingin 1
menghitung lagi?
tidak
Selesai
KELOMPOK 12 60
LAPORAN PRAKTIKUM PEMROGRAMAN KOMPUTER 2013
LABORATORIUM KOMPUTER
JURUSAN MESIN
FAKULTAS TEKNIK
UNIVERSITAS BRAWIJAYA
Write(*,*)'=============================================
=========' (7)
Write(*,*)'| 1 | INVERS MATRIKS ' (8)
Write(*,*)'| 2 | PERKALIAN MATRIKS ' (9)
Write(*,*)'=============================================
=========' (10)
write(*,*) (11)
Write(*,*)' Masukkan Nomor Program yang Ingin anda jalankan'
(12)
read(*,*,ERR=2)a (13)
if(a.EQ.1) goto 5000 (14)
if(a.EQ.2) goto 5001 (15)
2 write(*,*) (16)
Write(*,*)'Maaf Keyword Yang Anda Maasukkan Salah' (17)
write(*,*) (18)
Goto 1 (19)
Cinversmatriks (20)
5000 write(*,*)'' (21)
write(*,*)'------------------------------------------------------- (22)
/--------------' (23)
write(*,*)' -Mencari invers matriks ordo 3x3- ' (24)
write(*,*)' I x1 x2 x3 I ' (25)
write(*,*)' I y1 y2 y3 I ' (26)
write(*,*)' I z1 z2 z3 I ' (27)
write(*,*)'------------------------------------------------------- (28)
/--------------' (29)
write(*,*) (30)
open(1, file='input matriks.txt', status='old') (31)
read(1,*)x1,x2,x3 (32)
write(*,10)x1,x2,x3 (33)
10 format(1x,'I',2x,F6.2,4x,F6.2,4x,F6.2,2x,'I') (34)
read(1,*)y1,y2,y3 (35)
write(*,20)y1,y2,y3 (36)
20 format(1x,'I',2x,F6.2,4x,F6.2,4x,F6.2,2x,'I') (37)
read(1,*)z1,z2,z3 (38)
write(*,30)z1,z2,z3 (39)
30 format(1x,'I',2x,F6.2,4x,F6.2,4x,F6.2,2x,'I') (40)
write(*,*)'' (41)
KELOMPOK 12 62
LAPORAN PRAKTIKUM PEMROGRAMAN KOMPUTER 2013
LABORATORIUM KOMPUTER
JURUSAN MESIN
FAKULTAS TEKNIK
UNIVERSITAS BRAWIJAYA
write(*,*) (42)
40 write(*,*)'------------------------------------------------------- (43)
/-------------' (44)
endif (58)
write(*,*)'' (59)
60 write(*,*)'------------------------------------------------------- (60)
/-------------' (61)
write(*,*)'Kofaktornya adalah' (62)
write(*,*)'------------------------------------------------------- (63)
/-------------' (64)
write(*,*) (65)
Crumus (66)
x11=(1)*(y2*z3-y3*z2) (67)
y11=(-1)*(x2*z3-x3*z2) (68)
z11=(1)*(x2*y3-x3*y2) (69)
x21=(-1)*(y1*z3-y3*z1) (70)
y21=(1)*(x1*z3-x3*z1) (71)
z21=(-1)*(x1*y3-x3*y1) (72)
x31=(1)*(y1*z2-y2*z1) (73)
y31=(-1)*(x1*z2-x2*y1) (74)
z31=(1)*(x1*y2-x2*y1) (75)
write(*,*)'' (76)
write(*,70)x11,x21,x31 (77)
70 format(1x,'I',2x,F6.2,4x,F6.2,4x,F6.2,2x,'I') (78)
KELOMPOK 12 64
LAPORAN PRAKTIKUM PEMROGRAMAN KOMPUTER 2013
LABORATORIUM KOMPUTER
JURUSAN MESIN
FAKULTAS TEKNIK
UNIVERSITAS BRAWIJAYA
write(*,80)y11,y21,y31 (79)
80 format(1x,'I',2x,F6.2,4x,F6.2,4x,F6.2,2x,'I') (80)
write(*,90)z11,z21,z31 (81)
90 format(1x,'I',2x,F6.2,4x,F6.2,4x,F6.2,2x,'I') (82)
write(*,*)'' (83)
write(*,*)'------------------------------------------------------- (84)
/-------------' (85)
write(*,*)' mencari adjoint matriks A' (86)
write(*,*)'------------------------------------------------------- (87)
/-------------' (88)
write(*,*)'' (89)
print 100 (90)
100 format('adjoint adalah transpos dari kofaktor maka',2/) (91)
write(*,*)'' (92)
write(*,110)x11,y11,z11 (93)
110 format(1x,'I',2x,F6.2,4x,F6.2,4x,F6.2,2x,'I') (94)
write(*,120)x21,y21,z21 (95)
120 format(1x,'I',2x,F6.2,4x,F6.2,4x,F6.2,2x,'I') (96)
write(*,130)x31,y31,z31 (97)
130 format(1x,'I',2x,F6.2,4x,F6.2,4x,F6.2,2x,'I') (98)
KELOMPOK 12 65
LAPORAN PRAKTIKUM PEMROGRAMAN KOMPUTER 2013
LABORATORIUM KOMPUTER
JURUSAN MESIN
FAKULTAS TEKNIK
UNIVERSITAS BRAWIJAYA
write(*,*)'' (99)
write(*,*)'------------------------------------------------------- (100)
/-------------' (101)
write(*,*)' maka hasil invers matrik A adalah' (102)
write(*,*)'------------------------------------------------------- (103)
/-------------' (104)
C = rumus mencari matrik A (105)
x12=(1/D)*(x11) (106)
x22=(1/D)*(x21) (107)
x32=(1/D)*(x31) (108)
y12=(1/D)*(y11) (109)
y22=(1/D)*(y21) (110)
y32=(1/D)*(y31) (111)
z12=(1/D)*(z11) (112)
z22=(1/D)*(z21) (113)
z32=(1/D)*(z31) (114)
write(*,*)'' (115)
write(*,140)x12,y12,z12 (116)
140 format(1x,'I',2x,F6.2,4x,F6.2,4x,F6.2,2x,'I') (117)
write(*,150)x22,y22,z22 (118)
150 format(1x,'I',2x,F6.2,4x,F6.2,4x,F6.2,2x,'I') (119)
write(*,160)x32,y32,z32 (120)
160 format(1x,'I',2x,F6.2,4x,F6.2,4x,F6.2,2x,'I') (121)
KELOMPOK 12 66
LAPORAN PRAKTIKUM PEMROGRAMAN KOMPUTER 2013
LABORATORIUM KOMPUTER
JURUSAN MESIN
FAKULTAS TEKNIK
UNIVERSITAS BRAWIJAYA
write(*,*)'___________________________________________________
____ (122)
/_______________' (123)
KELOMPOK 12 67
LAPORAN PRAKTIKUM PEMROGRAMAN KOMPUTER 2013
LABORATORIUM KOMPUTER
JURUSAN MESIN
FAKULTAS TEKNIK
UNIVERSITAS BRAWIJAYA
Write(*,*) (138)
write (*,*) ' matriks A = ' (139)
open (3, file='MATRIKS A.txt', status='old') (140)
read (3,*)I1,J1,K1 (141)
write (*,200)I1,J1,K1 (142)
200 format ('|',F5.1,1x,F5.1,1x,F5.1,1x,'|') (143)
read (3,*)I2,J2,K2 (144)
write (*,210)I2,J2,K2 (145)
210 format ('|',F5.1,1x,F5.1,1x,F5.1,1x,'|') (146)
read (3,*)I3,J3,K3 (147)
write (*,220)I3,J3,K3 (148)
220 format ('|',F5.1,1x,F5.1,1x,F5.1,1x,'|') (149)
KELOMPOK 12 68
LAPORAN PRAKTIKUM PEMROGRAMAN KOMPUTER 2013
LABORATORIUM KOMPUTER
JURUSAN MESIN
FAKULTAS TEKNIK
UNIVERSITAS BRAWIJAYA
Crumusperkalian (162)
write (*,*) (163)
C11= (I1*L1)+(J1*L2)+(K1*L3) (164)
C12= (I1*M1)+(J1*M2)+(K1*M3) (165)
C13= (I1*N1)+(J1*N2)+(K1*N3) (166)
C21= (I2*L1)+(J2*L2)+(K2*L3) (167)
C22= (I2*M1)+(J2*M2)+(K2*M3) (168)
C23= (I2*N1)+(J2*N2)+(K2*N3) (169)
C31= (I3*L1)+(J3*L2)+(K3*L3) (170)
C32= (I3*M1)+(J3*M2)+(K3*M3) (171)
C33= (I3*N1)+(J3*N2)+(K3*N3) (172)
KELOMPOK 12 70
LAPORAN PRAKTIKUM PEMROGRAMAN KOMPUTER 2013
LABORATORIUM KOMPUTER
JURUSAN MESIN
FAKULTAS TEKNIK
UNIVERSITAS BRAWIJAYA
(176), dan (178) kemudian ditampilkan sesuai dengan format yang tertera
pada statement (175), (177), dan (179).
C end (191)
19 write(*,*)'' (192)
write(*,*)'apakah anda akan menghitung lagi ?' (193)
write(*,*)' ketik y apabila ingin menghitung lagi' (194)
write(*,*)' ketik t apabila tidak' (195)
read(*,*)K (196)
if(K.EQ.'y') goto 1001 (197)
if(K.EQ.'t') goto 1002 (198)
if(K.NE.'y,t') then (199)
KELOMPOK 12 71
LAPORAN PRAKTIKUM PEMROGRAMAN KOMPUTER 2013
LABORATORIUM KOMPUTER
JURUSAN MESIN
FAKULTAS TEKNIK
UNIVERSITAS BRAWIJAYA
KELOMPOK 12 72
LAPORAN PRAKTIKUM PEMROGRAMAN KOMPUTER 2013
LABORATORIUM KOMPUTER
JURUSAN MESIN
FAKULTAS TEKNIK
UNIVERSITAS BRAWIJAYA
Gambar 3.8 : Langkah pertama saat akan membuka fortran dengan membuka
start
Sumber : Dokumentasi Pribadi
KELOMPOK 12 74
LAPORAN PRAKTIKUM PEMROGRAMAN KOMPUTER 2013
LABORATORIUM KOMPUTER
JURUSAN MESIN
FAKULTAS TEKNIK
UNIVERSITAS BRAWIJAYA
Write(*,*)'=============================================
========='
Write(*,*)'| 1 | INVERS MATRIKS '
Write(*,*)'| 2 | PERKALIAN MATRIKS '
Write(*,*)'=============================================
========='
write(*,*)
Write(*,*)'Masukkan Nomor Program yang Ingin anda jalankan'
KELOMPOK 12 75
LAPORAN PRAKTIKUM PEMROGRAMAN KOMPUTER 2013
LABORATORIUM KOMPUTER
JURUSAN MESIN
FAKULTAS TEKNIK
UNIVERSITAS BRAWIJAYA
read(*,*,ERR=2)a
if(a.EQ.1) goto 5000
if(a.EQ.2) goto 5001
2 write(*,*)
Write(*,*)'Maaf Keyword Yang Anda Maasukkan Salah'
write(*,*)
Goto 1
Cinversmatriks
5000 write(*,*)''
write(*,*)'-------------------------------------------------------
/--------------'
write(*,*)' -Mencari invers matriks ordo 3x3- '
write(*,*)' I x1 x2 x3 I '
write(*,*)' I y1 y2 y3 I '
write(*,*)' I z1 z2 z3 I '
write(*,*)'-------------------------------------------------------
/--------------'
write(*,*)
open(1, file='input matriks.txt', status='old')
read(1,*)x1,x2,x3
write(*,10)x1,x2,x3
10 format(1x,'I',2x,F6.2,4x,F6.2,4x,F6.2,2x,'I')
read(1,*)y1,y2,y3
write(*,20)y1,y2,y3
20 format(1x,'I',2x,F6.2,4x,F6.2,4x,F6.2,2x,'I')
read(1,*)z1,z2,z3
write(*,30)z1,z2,z3
30 format(1x,'I',2x,F6.2,4x,F6.2,4x,F6.2,2x,'I')
KELOMPOK 12 76
LAPORAN PRAKTIKUM PEMROGRAMAN KOMPUTER 2013
LABORATORIUM KOMPUTER
JURUSAN MESIN
FAKULTAS TEKNIK
UNIVERSITAS BRAWIJAYA
write(*,*)''
write(*,*)
40 write(*,*)'-------------------------------------------------------
/-------------'
write(*,*)' Menghitung Determinan'
write(*,*)'-------------------------------------------------------
/-------------'
write(*,*)
D=x1*y2*z3+x2*y3*z1+x3*y1*z2-x3*y2*z1-x1*y3*z2-x2*y1*z3
write(*,50)D
50 format(' hasil determinannya adalah =',2x,f6.2,2x)
if(D.EQ.0) then
write(*,*)' matriks A tidak mempunyai invers'
goto 1002
endif
if(D.NE.0) then
goto 60
endif
write(*,*)''
60 write(*,*)'-------------------------------------------------------
/-------------'
write(*,*)'Kofaktornya adalah'
write(*,*)'-------------------------------------------------------
/-------------'
write(*,*)
Crumus
x11=(1)*(y2*z3-y3*z2)
y11=(-1)*(x2*z3-x3*z2)
KELOMPOK 12 77
LAPORAN PRAKTIKUM PEMROGRAMAN KOMPUTER 2013
LABORATORIUM KOMPUTER
JURUSAN MESIN
FAKULTAS TEKNIK
UNIVERSITAS BRAWIJAYA
z11=(1)*(x2*y3-x3*y2)
x21=(-1)*(y1*z3-y3*z1)
y21=(1)*(x1*z3-x3*z1)
z21=(-1)*(x1*y3-x3*y1)
x31=(1)*(y1*z2-y2*z1)
y31=(-1)*(x1*z2-x2*y1)
z31=(1)*(x1*y2-x2*y1)
write(*,*)''
write(*,70)x11,x21,x31
70 format(1x,'I',2x,F6.2,4x,F6.2,4x,F6.2,2x,'I')
write(*,80)y11,y21,y31
80 format(1x,'I',2x,F6.2,4x,F6.2,4x,F6.2,2x,'I')
write(*,90)z11,z21,z31
90 format(1x,'I',2x,F6.2,4x,F6.2,4x,F6.2,2x,'I')
write(*,*)''
write(*,*)'-------------------------------------------------------
/-------------'
write(*,*)' mencari adjoint matriks A'
write(*,*)'-------------------------------------------------------
/-------------'
write(*,*)''
print 100
100 format('adjoint adalah transpos dari kofaktor maka',2/)
write(*,*)''
write(*,110)x11,y11,z11
KELOMPOK 12 78
LAPORAN PRAKTIKUM PEMROGRAMAN KOMPUTER 2013
LABORATORIUM KOMPUTER
JURUSAN MESIN
FAKULTAS TEKNIK
UNIVERSITAS BRAWIJAYA
110 format(1x,'I',2x,F6.2,4x,F6.2,4x,F6.2,2x,'I')
write(*,120)x21,y21,z21
120 format(1x,'I',2x,F6.2,4x,F6.2,4x,F6.2,2x,'I')
write(*,130)x31,y31,z31
130 format(1x,'I',2x,F6.2,4x,F6.2,4x,F6.2,2x,'I')
write(*,*)''
write(*,*)'-------------------------------------------------------
/-------------'
write(*,*)' maka hasil invers matrik A adalah'
write(*,*)'-------------------------------------------------------
/-------------'
C = rumus mencari matrik A
x12=(1/D)*(x11)
x22=(1/D)*(x21)
x32=(1/D)*(x31)
y12=(1/D)*(y11)
y22=(1/D)*(y21)
y32=(1/D)*(y31)
z12=(1/D)*(z11)
z22=(1/D)*(z21)
z32=(1/D)*(z31)
write(*,*)''
write(*,140)x12,y12,z12
140 format(1x,'I',2x,F6.2,4x,F6.2,4x,F6.2,2x,'I')
write(*,150)x22,y22,z22
150 format(1x,'I',2x,F6.2,4x,F6.2,4x,F6.2,2x,'I')
KELOMPOK 12 79
LAPORAN PRAKTIKUM PEMROGRAMAN KOMPUTER 2013
LABORATORIUM KOMPUTER
JURUSAN MESIN
FAKULTAS TEKNIK
UNIVERSITAS BRAWIJAYA
write(*,160)x32,y32,z32
160 format(1x,'I',2x,F6.2,4x,F6.2,4x,F6.2,2x,'I')
write(*,*)'___________________________________________________
____
/_______________'
Cperkalian matriks
5001 Write(*,*)'
==================================================== '
Write(*,*)' MENGHITUNG PERKALIAN MATRIKS ORDO 3
X3 '
Write(*,*)'
==================================================== '
Write(*,*)
write (*,*) ' matriks A = '
read (3,*)I1,J1,K1
write (*,200)I1,J1,K1
200 format ('|',F5.1,1x,F5.1,1x,F5.1,1x,'|')
read (3,*)I2,J2,K2
write (*,210)I2,J2,K2
210 format ('|',F5.1,1x,F5.1,1x,F5.1,1x,'|')
read (3,*)I3,J3,K3
write (*,220)I3,J3,K3
220 format ('|',F5.1,1x,F5.1,1x,F5.1,1x,'|')
write(*,*) ' '
write (*,*) ' matriks B = '
open (4, file='MATRIKS B.txt', status='old')
read (4,*)L1,M1,N1
write (*,230)L1,M1,N1
230 format ('|',F5.1,1x,F5.1,1x,F5.1,1x,'|')
read (4,*)L2,M2,N2
write (*,240)L2,M2,N2
240 format ('|',F5.1,1x,F5.1,1x,F5.1,1x,'|')
read (4,*)L3,M3,N3
write (*,250)L3,M3,N3
250 format ('|',F5.1,1x,F5.1,1x,F5.1,1x,'|')
Crumusperkalian
write (*,*)
C11= (I1*L1)+(J1*L2)+(K1*L3)
C12= (I1*M1)+(J1*M2)+(K1*M3)
C13= (I1*N1)+(J1*N2)+(K1*N3)
C21= (I2*L1)+(J2*L2)+(K2*L3)
KELOMPOK 12 81
LAPORAN PRAKTIKUM PEMROGRAMAN KOMPUTER 2013
LABORATORIUM KOMPUTER
JURUSAN MESIN
FAKULTAS TEKNIK
UNIVERSITAS BRAWIJAYA
C22= (I2*M1)+(J2*M2)+(K2*M3)
C23= (I2*N1)+(J2*N2)+(K2*N3)
C31= (I3*L1)+(J3*L2)+(K3*L3)
C32= (I3*M1)+(J3*M2)+(K3*M3)
C33= (I3*N1)+(J3*N2)+(K3*N3)
C end
19 write(*,*)''
KELOMPOK 12 82
LAPORAN PRAKTIKUM PEMROGRAMAN KOMPUTER 2013
LABORATORIUM KOMPUTER
JURUSAN MESIN
FAKULTAS TEKNIK
UNIVERSITAS BRAWIJAYA
1001 write(*,*)
write(*,*)
write(*,*) 'silahkan ganti nilai matriks anda pada notepad yang te
/lah disediakan terlebih dahulu lalu save, kemudian jalankan prog
/ram ini kembali'
write(*,*)
write(*,*)
1002 write(*,*)'terima kasih !'
write(*,*)'klik tanda silang X pada pojok kanan atas untuk mengakh
/iri program !'
end
KELOMPOK 12 83
LAPORAN PRAKTIKUM PEMROGRAMAN KOMPUTER 2013
LABORATORIUM KOMPUTER
JURUSAN MESIN
FAKULTAS TEKNIK
UNIVERSITAS BRAWIJAYA
BAB IV
KESIMPULAN
Kesimpulan
Pada prinsip kerja semua mesin selalu ada losses yang terjadi, baik terjadi
karena adanya friction, pembakaran yang tidak sempurna, atau pun isolasi panas yang
tidak optimum. Efisiensi dari suatu mesin pun menjadi pertimbangan utama apakah meisn
itu bekerja dengan baik atau tidak. Biasanya efisiensi suatu mesin dihitung melalui
perbandingan kerja output dan kerja input. Pada mesin Otto, sering disebut pula dengan
mesin bensin, efisiensi dihitung dengan membandingkan kerja bersih yang dihasilkan
mesin (wnet) dan kalor masukkan (qin). Berikut adalah rumus - rumus yang digunakan
, wnet=qin - qout, dan atau
KELOMPOK 12 84
LAPORAN PRAKTIKUM PEMROGRAMAN KOMPUTER 2013
LABORATORIUM KOMPUTER
JURUSAN MESIN
FAKULTAS TEKNIK
UNIVERSITAS BRAWIJAYA
r = rasiokompresi
Kami juga membuat program untuk mencari nilai invers matriks ber-ordo
3x3. Dalam hal ini kami bertujuan agar memudahkan para pengguna yang ingin
mencari invers matriks tanpa harus mengerjakan secara manual. Seperti pada
umumnya, invers matrik dapat diketahui dengan menggunakan rumus
, secara umum untuk penghitungan determinan dan
penghitungan adjoin sama dengan perhitungan manual. Namun dalam program ini
kami membuat agar nantinya tidak perlu input nilai matriks pada saat eksekusi
program, namun langsung memanggil data dari notepad yang telah tersimpan
sebelumnya dan hasil outputnya pun bisa keluar ke notepad. Begitu juga untuk
perkalian matrik secara umum menggunakan rumus manual tapi dengan program
ini data matrik yang akan di kalikan dan data matrik yang sebagai pengalinya
akan di panggil melalui notepad, begitu juga dengan hasil perkalian matrik ini,
hasil outputnya akan keluar di notepad yang telah disediakan.
KELOMPOK 12 85
LAPORAN PRAKTIKUM PEMROGRAMAN KOMPUTER 2013
LABORATORIUM KOMPUTER
JURUSAN MESIN
FAKULTAS TEKNIK
UNIVERSITAS BRAWIJAYA
BAB V
SARAN
KELOMPOK 12 86
LAPORAN PRAKTIKUM PEMROGRAMAN KOMPUTER 2013
LABORATORIUM KOMPUTER
DAFTAR PUSTAKA