2
Posted by Eni Tui3z on 15:48


Virtual Lab Sem 1 2013-2014
Komputasi Numerik

1.     Jelaskan Struktur Program Fortran dan Aturan Penulisan dalam Fortran!
Jawab :
Struktur Program Fortran :
Dibagi menjadi 5 bagian kolom dan  tiap  baris  di  dalam program dapat berisi :
a. Metacommand
b. Komentar
c. Statement
d. Sambungan dari statement baris sebelumnya.
Aturan Penulisan Dalam Bahasa Fortran
a.      Kolom pertama digunakan untuk indicator metacommand atau komentar untuk metacommand digunakan karakter “$” sedangkan jika berisi “C” atau “c” berarti baris tersebut merupakan suatu komentar.
b.     Kolom 1- 5 digunakan sebagai label statement, berupa suatu angka yang menunjukkan letak dari suatu statement
c.      Kolom 6 digunakan sebagai indikator sambungan dari baris sebelumnya. Baris sambungan harus diberi indikator dengan cara meletakkan di kolom ke 6 karakter apapun kecuali ”blank” atau ”0”. Sampai dengan baris 19 baris sambungan berturut-turut dapat dipergunakan.
d.     Kolom 7 – 72 digunakan sebagai tempat untuk penulisan rutin program (statement) FORTRAN
e.      Kolom 73 – 80 digunakan sebagai dokumentasi yang sifatnya optional.

2.     Apa perbedaan Statement Stop dan End?
a.      Statement STOP berfungsi menghentikan proses operasi pengerjaan program secara logika dan cirinya penulisannya bebas, yang merupakan indikator bahwa operasi program secara logika telah berakhir. Pada umumnya statement STOP selalu mengiringi statement END didalam penulisan bahasa pemrograman FORTRAN.
b.     Statement END digunakan untuk memberitahu komputer sebagai batas akhir dari statement program. Statement END harus diletakkan paling akhir di suatu program, tidak boleh diberi label statement dan harus berdiri sendiri tidak boleh digabung dengan statement lainnya. Statement End dapat berupa ENDCASE, ENDFOR, ENDIF, ENDWHILE [unit] END.
3.     Perbedaan Procedure dan Function
a.      Procedure (Prosedur) adalah suatu bagian yang terpisah dari program dan dapat diaktifkan di manapun di dalam program. Procedure dibuat jika program akan dibagi menjadi beberapa blok modul. Procedure dibuat di dalam program dengan cara mendeklarasikannya di bagian deklarasi procedure. Kata cadangan PROCEDURE digunakan sebagai judul dari bagian deklarasi procedure, diikuti oleh identifier yang merupakan nama procedurenya dan secara optional dapat diikuti lagi oleh kumpulan parameter yang diakhiri dengan titik koma.
Bentuk Umum :
Procedure
( statement 1)
( statement 2)
( statement 3)
b.     Function (Fungsi)
1)     Bersifat otonom, sehingga nama-nama variabel di dalam subprogram boleh sama dengan nama-nama variabel di dalam program pemanggil dengan tidak terjadi kesalahan, oleh karena memang pada prinsipnya terpisah. Boleh melakukan operasi READ atau WRITE, boleh memanggil subprogram yang lain.
2)     Dipanggil langsung dengan namanya.
3)      Argumen-argumen hanya merupakan input, output keluar melalui nama subprogram function. Sehingga akibatnya, input bisa banyak (sebab argumen-argumen bisa banyak), tetapi output selalu hanya satu yaitu melalui nama function.
4)     Boleh mempunyai lebih dari satu statement RETURN, maupun juga statement STOP.
5)     Hubungan antar argumen dalam program pemanggil dan program dipanggil adalah hubungan atas dasar posisi, bukan atas dasar nama variabel.
6)      Argumen-argumen dapat berupa konstanta maupun variabel baik real ataupun integer.
Bentuk umum :
FUNCTION nf(arg1, arg2,…argm)
Keterangan :
nf : nama subprogram function, sekaligus sebagai nama variabel outputnya, apabila namanya real maka sifat functionya real, begitu pula jika integer
Arg1,arg2,…argm : argumen-argumen yang dikirim dari program pemanggil ke subprogram function. Argumen boleh berupa variabel ataupun konstanta, baik real maupun integer.

4.     Program Fortran
a.      Program Menghitung Luas Trapesium
PROGRAM luastrapesium
real*4 A
real s1,s2,
write(*,*)' Program ini berfungsi untuk menghitung luas dari bangun trapesium'
write(*,*) ' masukkan nilai sisi sejajar 1 (s1)'
write(*,'(A,$)') ' s1= '
read(*,*)s1
write(*,*) ' masukkan nilai sisi sejajar 2 (s2)'
write(*,'(A,$)') 's2= '
read(*,*)s2
write(*,*) ' masukkan nilai tinggi trapesium (t)'
write(*,'(A,$)') 't= '
read(*,*)t
A= (s1+s2)*t / 2
write(*,*) 'luas trapesium = ', A
stop
end

b.     Program Perkalian Matrik
PROGRAM matriks
IMPLICIT NONE
INTEGER :: N, M, L, I, J, K
REAL :: A(1000,1000), B(1000,1000), C(1000,1000)
WRITE(*,*) 'program perkalian matriks'
WRITE(*,*) 
WRITE(*,*) 'Jumlah baris matriks A='
READ(*,*) N
WRITE(*,*) 'Jumlah kolom matriks A='
READ(*,*) M
WRITE(*,*) 'Jumlah baris matriks B='
READ(*,*) M
WRITE(*,*) 'Jumlah kolom matriks B='
READ(*,*) L
WRITE(*,*) 
DO I=1,N
DO J=1,M
WRITE(*,*) 'masukan matriks A baris, I, kolom, J'
READ(*,*) A(I,J)
END DO
END DO
DO J=1,M
DO K=1,L
WRITE(*,*) 'masukan matriks B baris, J, kolom, J'
END DO
END DO
DO I=1,N
DO K=1,L
C(I,K)=0
DO J=1,M
C(I,K)=C(I,K)+A(I,J)*B(J,K)
END DO
END DO
END DO
WRITE(*,*) 
WRITE(*,*) 'matriks A'
DO I=1,N
WRITE(*,*) (A(I,J),J=1,M)
END DO
WRITE(*,*) 
WRITE(*,*) 'matriks B'
DO J=1,M
WRITE(*,*) (A(J,K),K=1,L)
END DO
WRITE(*,*) 
WRITE(*,*) 'matriks C= matriks A kali matriks B'
DO I=1,N
WRITE(*,*) (A(I,K),K=1,L)
END DO
END

5.     Hasil output dari program yaitu:
a.      Jika ‘Masukan Banyaknya Deret = 5’
                                       5 5 5 5
                                   4 4          4 4
                             3 3                        3 3
1       2                                 2 2
                 1 1                                               1 1
b.     Jika ‘Masukan Banyaknya Deret = 5’
               5
               4
               3 3
               2 2
               1 1
               2 2
               3 3
4       4
               5
c.       Jika ‘Masukan Jumlah Deret = 5’
               1 3 5 7 9
               2 4 6 8
               3 5 7
               4 6
               5

2 Comments


terimakasih ilmunya sangat bermanfaat

Post a Comment

Copyright © 2009 EMMAJ HOHO... All rights reserved. Theme by Laptop Geek. | Bloggerized by FalconHive.