02. Data.docx
Document Details
Uploaded by Deleted User
Tags
Full Transcript
**MODUL PERKULIAHAN** **W112100037** **Praktikum Ilmu Dasar Komputer dan Pemograman Komputer** Data +-----------------------------------+-----------------------------------+ | **Abstrak** | **Sub-CPMK (lihat di RPS)** | +===================================+===========...
**MODUL PERKULIAHAN** **W112100037** **Praktikum Ilmu Dasar Komputer dan Pemograman Komputer** Data +-----------------------------------+-----------------------------------+ | **Abstrak** | **Sub-CPMK (lihat di RPS)** | +===================================+===================================+ | | | +-----------------------------------+-----------------------------------+ | Sebuah program komputer tidak | CPMK 1 (W112100036-1) | | lain adalah sekumpulan perintah | | | kepada komputer untuk melakukan | Mampu membuat program aplikasi | | suatu tindakan terhadap data. | teknik Sipil dengan Bahasa | | | pemrograman Fortran. | +-----------------------------------+-----------------------------------+ {#section.TOCHeading} {#section-1.TOCHeading} Daftar Isi {#daftar-isi.TOCHeading} ========== [Tipe Data 3](#tipe-data) [Real 3](#real) [Integer 3](#integer) [Complex 4](#complex) [Character 4](#character) [Logical 5](#logical) [Data Skalar dan Array 5](#data-skalar-dan-array) [Variabel dan Konstanta 7](#variabel-dan-konstanta) [Latihan 9](#latihan) [Hello World 9](#hello-world) [Hello World dengan sub-program 9](#hello-world-dengan-sub-program) [Hello World dengan input 9](#hello-world-dengan-input) [Hello World dengan sub-program dan input 10](#hello-world-dengan-sub-program-dan-input) [Menghitung Luas dan Keliling Lingkaran 10](#menghitung-luas-dan-keliling-lingkaran) [Perhitungan aritmatika 11](#perhitungan-aritmatika) [Daftar Pustaka 11](#daftar-pustaka) Tipe Data ========= Fortran 90/95 menyediakan lima tipe data, disebut tipe data intrinsik. Jika diperlukan, pembuat program juga dapat membuat sendiri suatu tipe data baru. Tipe data ini disebut tipe data turunan, karena dibuat dari kombinasi beberapa tipe data intrinsik. Namun, lima tipe data intrinsik yang disediakan Fortran 90/95 sesungguhnya cukup untuk memenuhi banyak sekali keperluan. Tipe data intrinsik dalam Fortran 90/95 yaitu REAL, INTEGER, COMPLEX, CHARACTER, dan LOGICAL. ### Real Real adalah tipe data untuk nilai bilangan riil, bilangan umum. Data REAL meli- puti nilai baik bilangan bulat maupun yang mengandung bilangan pecahan desimal (\< \|1.0\|). Contoh data REAL dan ekspresinya yaitu: -129.234 -0.00321 0.0 1.09 34.287 Data REAL juga dapat diekspresikan dalam bentuk eksponensial, contoh, nilai 1.6 × 10^−19^ ditulis sebagai: 1.6E-19 Bilangan 0 setelah tanda desimal boleh tidak dicantumkan, namun tanda desimal "." harus dicantumkan, contoh: 2\. 3.E-8 ### Integer Integer adalah tipe data untuk nilai khusus bilangan bulat. Contoh data Integer, yaitu: -7892213 -300 0 10 123456 Perhatikan bahwa ekspresi data INTEGER tidak memiliki tanda desimal "." dan apalagi bilangan pecahan desimal. Sebagai contoh, ekspresi data berikut: 100. 100.0 tidak menunjukkan bahwa data itu bertipe INTEGER, meskipun nilai bilangan 100. dan 100.0 itu bulat. ### Complex Complex adalah tipe data untuk nilai khusus bilangan kompleks. Bilangan kom- pleks memiliki dua komponen, yaitu komponen riil dan komponen imajiner. Baik nilai komponen riil maupun imajiner kedua-duanya bertipe data Real. Jadi, sebuah data Complex merupakan sepasang data Real. Contoh data Complex yaitu: (2.0,4.5) (-2.1,0.3) (0.0,0.0) (3.0,0.0) (0.0,1.0) Bilangan di sebelah kiri dan kanan tanda koma "," masing-masing adalah kompo- nen riil dan komponen imajiner. Kedua komponen harus ditempatkan di antara sepasang tanda kurung. ### Character Character adalah tipe data untuk ekspresi huruf, bilangan, simbol; singkatnya ekspresi karakter. Data Character diberikan di antara atau dibatasi oleh sepasang tanda petik tunggal atau sepasang tanda petik ganda, tapi bukan campuran tanda petik tunggal dan ganda. Contoh data Character yaitu: \"a\" \"Matahari bersinar terang.\" 'QED' \"Alamat\" '2 + 3 = 5' Jika suatu data CHARACTER mengandung tanda petik tunggal, maka sebagai pembatas dapat digunakan sepasang tanda petik ganda, contoh: \"ini adalah huruf 'a' kecil\" \"tanda ' disebut tanda petik tunggal\" Sebaliknya, jika suatu data CHARACTER mengandung tanda petik ganda, maka se- bagai pembatas dapat digunakan sepasang tanda petik tunggal, contoh: 'ini adalah huruf \"A\" besar' 'tanda \" disebut tanda petik ganda' Jumlah karakter di antara pasangan tanda petik tunggal atau tanda petik ganda menyatakan panjang data Character tersebut. Contoh, panjang data Character 'berlibur ke pantai' adalah 18. Perhatikan bahwa spasi juga merupakan karakter, sehingga turut dihitung. Sampai di sini ada sedikit masalah untuk menuliskan spasi dalam buku ini sebagai data Character, yaitu apabila terdapat beberapa spasi secara berurutan, maka secara visual jumlahnya agak sulit diketahui. Karena itu, mulai dari sini dalam menuliskan suatu data Character kita gunakan lambang "\~" hanya untuk menunjukkan bahwa di situ ada satu spasi. Contoh: 'berlibur\~ke\~pantai' 'S\~E\~L\~A\~M\~A\~T\~\~\~U\~L\~A\~N\~G\~\~\~T\~A\~H\~U\~N' ### Logical Logical adalah tipe data untuk nilai logika suatu hal / pernyataan. Nilai itu hanya dua, yaitu benar dan salah. Namun, tidak berarti bahwa data LOGICAL hanya ada dua, karena nilai logika benar dan salah dapat dinyatakan dalam berbagai bentuk. Contoh data LOGICAL yaitu:.TRUE. 2\0.FALSE. 10 : 2 \< 5 Pada contoh di atas tiga data pertama bernilai logika benar dan dua sisanya salah. Data Skalar dan Array ===================== Ada data tunggal, yaitu terdiri dari hanya satu data. Data seperti ini disebut data skalar. Ada pula data yang berisi sekelompok data yang tipenya sama. Data seperti ini disebut data array. Satu contoh data array yaitu data yang berisi bilangan bulat dari 0 sampai 10. Sebuah matriks juga merupakan data array, yang berisi sekelompok data bertipe sama, yang disusun dalam 2 dimensi, yaitu dalam baris dan kolom. Data-data yang terkandung dalam sebuah data array disebut elemen data array dan disusun secara berurutan dalam ruang berdimensi tertentu. Jumlah dimensi tidak di- batasi maksimum tiga, melainkan dapat lebih dari tiga. Jumlah dimensi menunjukkan rank data array tersebut, contoh, sebuah matriks merupakan data array rank 2. Secara umum, dengan demikian, data skalar dan data array merupakan tensor. Data skalar adalah tensor rank 0, sedangkan data array merupakan tensor rank lebih dari 0. Mari kita ambil sebuah matriks berukuran 2 × 3 sebagai satu contoh data array. Matriks itu memiliki 2 baris dan 3 kolom, sehingga jumlah elemennya adalah 2 × 3 = 6. Matriks tersebut merupakan contoh data array: - rank 2 atau berdimensi 2, sumbu dimensi pertama adalah sumbu baris dan yang kedua adalah sumbu kolom, ![](media/image2.png) - memiliki shape atau bentuk (2,3), - berukuran 6. Berikutnya, sangat perlu mengetahui seperti apa elemen data array disimpan secara berurutan menurut Fortran 90/95, karena ini menyangkut kecepatan eksekusi program. Jika elemen data array dibaca atau diberikan secara berurutan, maka program berjalan lebih cepat daripada jika tidak secara berurutan. Sebagai contoh, perhatikan matriks 2 × 3 berikut: \ [\$\$\\begin{pmatrix} a & \\begin{matrix} b & c \\\\ \\end{matrix} \\\\ d & \\begin{matrix} e & f \\\\ \\end{matrix} \\\\ \\end{pmatrix}\$\$]{.math.display}\ Urutan elemen matriks di atas menurut Fortran 90/95 adalah a, d, b, e, c, f. Dengan kata lain, elemen data diurutkan terlebih dahulu sepanjang sumbu dimensi pertama (baris), kemudian sepanjang sumbu dimensi kedua (kolom), seperti digambarkan sebagai berikut: A diagram of sumbu kolom Description automatically generated Untuk data array 3 dimensi urutan elemen-elemennya mula-mula sepanjang sumbu di- mensi pertama, lalu sepanjang sumbu kedua, terakhir sepanjang sumbu ketiga. Data array rank 1 dapat mudah dibuat dengan menggunakan satu perintah pemben- tuk array, yaitu (/ \[elemen data array\] /). Sebagai contoh, data array yang berisi bilangan bulat dari 0 sampai 10 dapat dibuat dengan perintah: (/ 0,1,2,3,4,5,6,7,8,9,10 /) Variabel dan Konstanta ====================== Variabel dan konstanta dibuat untuk menyimpan data. Data yang disimpan dalam variabel dapat diubah, sedangkan yang disimpan dalam konstanta tetap. Tipe variabel dan konstanta harus sesuai dengan tipe data yang disimpannya, begitu juga jenisnya, skalar atau array. Ada satu lagi jenis variabel, yaitu pointer. Jenis pointer tidak dimiliki oleh konstanta. Sebelum digunakan, variabel dan konstanta harus dideklarasikan dulu di awal pro- gram. Kita akan selalu menggunakan pernyataan IMPLICIT NONE dalam deklarasi vari- abel dan konstanta. Dengan demikian, kita lebih bebas dalam memberi nama variabel dan konstanta. Kalaupun dalam contoh-contoh di sini pernyataan IMPLICIT NONE tidak terlihat, dianggap bahwa pernyataan itu sudah diberikan di awal bagian spesifikasi. Berikut ini adalah contoh deklarasi variabel skalar: - Deklarasi diawali oleh tipe variabel sesuai tipe data. - Pada contoh di atas, i dan j adalah variabel skalar bertipe INTEGER, massa dan kelajuan bertipe REAL, z bertipe COMPLEX, bs bertipe LOGICAL, nip dan nik bertipe CHARACTER. - Variabel CHARACTER harus diberi keterangan yang jelas, seberapa panjang data CHARACTER yang akan disimpannya. Pada contoh di atas, variabel nip dan nik masing-masing dapat menyimpan data CHARACTER yang panjangnya maksimum 9 karakter. Contoh deklarasi variabel array adalah sebagai berikut: Catatan: Deklarasi variabel array sama dengan deklarasi variabel skalar, namun berisi tam- bahan atribut DIMENSION. Atribut DIMENSION menentukan rank atau jumlah di- mensi, bentuk, dan ukuran variabel array itu. Pada contoh di atas, variabel realita berdimensi 3, bentuknya (3,5,4), ukurannya 3 x 5 x 4 = 60. Contoh deklarasi konstanta skalar dapat dilihat sebagai berikut: Catatan: - Deklarasi diawali oleh tipe konstanta sesuai tipe data. - Deklarasi berisi atribut PARAMETER. - Pada contoh di atas, kilo dan mega adalah konstanta skalar bertipe INTEGER, gravitasi dan kecil bertipe REAL, bili bertipe COMPLEX, flag1 dan flag2 bertipe LOGICAL, alamat bertipe CHARACTER. - Nilai konstanta langsung diberikan saat dideklarasikan. - Panjang konstanta CHARACTER ditentukan dengan sendirinya oleh data yang di- simpannya. Simbol bintang "∗" dicantumkan sebagai ganti bilangan. Dengan demikian, panjang konstanta alamat di atas adalah 18. (Ingat bahwa dalam buku ini lambang "\~" dicantumkan hanya untuk menunjukkan bahwa di situ ada satu spasi.) - Program Fortran 90/95 dibaca per baris dari atas ke bawah, dalam satu baris dari kiri ke kanan. Deklarasi konstanta mega di atas menggunakan konstanta kilo. Namun, ini tidak menimbulkan masalah, karena kilo sudah dideklarasikan sebelum mega. Latihan ======= ### Hello World ![A close up of a text Description automatically generated](media/image4.png) ### Hello World dengan input A screenshot of a computer Description automatically generated ### Hello World dengan sub-program ![A screen shot of a computer code Description automatically generated](media/image6.png) ### Hello World dengan sub-program dan input A screen shot of a computer Description automatically generated ### Menghitung Luas dan Keliling Lingkaran ![A screen shot of a computer code Description automatically generated](media/image8.png) ### Perhitungan aritmatika A screenshot of a computer program Description automatically generated Daftar Pustaka ============== 1. Jogiyanto, 1987, Teori dan Aplikasi Program Komputer Bahasa Fortran, Andi Offset, Yogyakarta 2. William E. Mayo, Theory and Problems of Programming With Fortran 90, Schaum's Outline Series, The McGraw-Hill Companies