Lapororan Praktikum Pascal 2

download Lapororan Praktikum Pascal 2

of 13

Transcript of Lapororan Praktikum Pascal 2

LAPORAN PRAKTIKUMDASAR PEMROGRAMANSemester Ganji Tahun Akademik 2010/2011Oleh :Nama : Pulung AguswantoNPM : 107006164LABORATORIUM INFORMATIKAJURUSAN TEKNIK INFORMATIKAFAKULTAS TEKNIK UNIVERSITAS SILIWANGITASIKMALAYA2011KATA PENGANTARPuji syukur saya panjatkankepada Allah SWT karena berkat rahmat danhidayahnya saya telah mampu menyelesaikan laporan yang berjudul PraktikumDasar Pemrpgraman .Laporan ini berisikan mengenaiPengenalan Pascal, Tipe Data Nilai input dan output, Analisis Kasus (Pemilihan), Pengulangan, Record dan Array, Array Bertipe Record, Prosedur dan Fungsi.Saya menyadari bahwa selama penulisan laporan ini saya banyak mendapat bantuan dari berbagai pihak. Oleh karena itu, saya mengucapkan terimakasih kepada:1. Ibu Heni Sulastri, ST., selaku Dosen mata kuliah DasarPemrograman, yang telah membantu dan membimbing penyusunan laporan ini.2. Pak IKhsan Nurfalah, ST., selaku Asisten Dosen MataKuliah Praktikum Dasar Pemrograman, yang telah membantu dan membimbingpenyusunan laporan ini.3. Orang Tua, karena dengan arahan, doa serta dukungannya,penulis dapat termotivasi untuk menyelesaikan laporan ini dengan sbaik-baiknya.4. Teman-teman, yang senantiasa memberi semangat danmembantu yang turut serta dan membantu dalam pembuatan laporan ini .5. Semua pihak yang turut memberikan motivasi dalampembuatan laporan ini.Laporan ini bukanlah karya yang sempurna karena masih memiliki banyak kekurangan, baik dalam hal isi maupun sistematika dan tekhnik penulisannya. Oleh sebab itu, penulis sangat mengharapkan kritik yang membangun demi kesempurnaan laporan ini.Akhirnya semoga laporan ini bisamemberikan manfaat bagi kita semua, khususnya untuk penulis dan umumnyauntuk pembaca. AminTasikmalaya, 19 Januari 2011SalamHormatPulungAguswantoDAFTAR ISIKATA PENGANTAR ........................................................................................... iDAFTAR ISI ........................................................................................................... iiBAB 1PENGENALAN PASCAL1.1. TujuanPraktikum.................................................................................. 11.2. DasarTeori............................................................................................ 21.3. Hasil danPembahasan........................................................................... 3BAB II TIPE DATA, NILAI, INPUT DATA OUTPUT2.1 Tujuan Praktikum.................................................................................... 92.2 DasarTeori.............................................................................................. 92.3 Hasil danPembahasan............................................................................ 10BAB III ANALISISKASUS ( PEMILIHAN )3.1 Tujuan Praktikum.................................................................................... 253.2 Dasar Teori.............................................................................................. 253.3 Hasil dan Pembahasan............................................................................ 26BAB IV PENGULANGAN4.1 Tujuan Praktikum.................................................................................... 434.2 Dasar Teori.............................................................................................. 434.3 Hasil dan Pembahasan............................................................................ 44BAB VRECORD DAN ARRAY5.1 Tujuan Praktikum.................................................................................... 685.2 Dasar Teori.............................................................................................. 685.3 Hasil dan Pembahasan............................................................................ 70BABVI ARRAYBERTIPE RECORD6.1 Tujuan Praktikum.................................................................................... 82 6.2 DasarTeori.............................................................................................. 826.3 Hasil dan Pembahasan............................................................................ 83BAB VII PROSEDURDAN FUNGSI7.1 Tujuan Praktikum.................................................................................... 907.2 Dasar Teori.............................................................................................. 907.3 Hasil dan Pembahasan............................................................................ 91DAFTAR PUSTAKA

BAB IPENGENALAN PASCAL1.1 TUJUAN PRAKTIKUMPraktikum diharapkan dapat :Mengenal bahasa pascal dan struktur program pada turbo pascal Mengetahui dan memahami penggunaan komponen-komponen dasar pada pascalMenggunakan perintah dasar penulisan dalam membuat program1.2 DASAR TEORI1.2.1 PENGENALANPASCALPascal merupakan pengembangan dari bahasa ALGOL 60, bahasa pemrogramanuntuk sains komputasi. Tahun 1960, beberapa ahli komputer bekerja untukmengembangkan bahasa ALGOL, salah satunya adalah Dr. Niklaus Wirth dari SwissFederal Institute of Technology (ETH-Zurich), yang merupakan anggota grup yangmembuat ALGOL. Dia menamainya dengan PASCAL (dari nama Blaise Pascal, ahlimatematika dan philosophi terkenal abad 17 dari Perancis). Pascal bersifat dataoriented, yaitu program diberi kelulasaan untuk mendefinisikan data sendiri.Pascal juga merupakan teaching language (banyak dipakai untuk pengajaran tentangkonsep pemrograman). Kelebihan yang lain adalah penulisan kode pascal yangluwes, tidak seperti misalnya FORTRAN, yang memerlukan programmer untuk menuliskode dengan format tertentu.1.2.2 STRUKTURPROGRAM PASCALProgram pascal memiliki struktur seperti judul program, bagiandeklarasi dan bagian pernyataan(statement). Judul program harus diketik di bagian awal sebab sifatnyaoptional dan di akhir judul diberi tanda titik koma (;). Bagian deklarasidigunakan apabila dalam program menggunakan pengenal / identifier. Sehinggamenuntut supaya identifier diperkenalkan terlebih dahulu sebelum digunakan.Struktur Minimal Pascal terdiri dari :BeginStatement;End.Struktur Lengkap (Umum) Pascal(Judul Program)Program nama_program;(pemberian nama program yang akan dibuat)(Bagian deklarasi)Uses(semua jenis perintah yang akan digunakan bisa digunakannya disini)Label(semua jenis label di definisikan disini)Const(semua nilai tetapan di definisikan disini)Type(didefinisikan untuk semua type bentukan yang ada)Var(semua jenis variable yang ada didefinisikan disini)(penulisan prosedur dan fungsi program)(bagian deskripsi / statement / pernyataan)BeginStatement.1;Statement.2;. Statement.n;(semua pernyataan / instruksi dituliskan disini dengan diakhiri tanda (;) disetiap akhir pernyataan)End.(akhiran setelah menyelesaikan pernyataan dari keseluruhan statement)Jadi secara keseluruhan yaitu setiap programmenerima piranti masukan (input) untuk melakukan sebuah proses dan menghasilkanpiranti keluaran (output). Berikut ini adalah contoh yang menggunakan Pascal.Contoh program dibawah ini tidak menerima masukan juga tidak ada prosestertentu dalam setiap pernyataan hanya menghasilkan keluaran yang menampilkankumpulan karakter (string) dilayar.

Program1.1 Program Menulis Stringprogram Hallo;begin writeln ('hallo selamat datang !!!!') writeln ('anda sedang menggunakan pascal'); readln;end.Hasil tampilan di layarAnalisis: Program :perintah untuk menuliskan judul program yang akan di jalankan. Begin :berisi tentang pengolahan program yang sedang di jalankan. Write :perintah untuk masukan (input data ). Writeln :untuk garis baru. Readln :untuk menampilkan / membaca sintak ke exc /tampilan. End : untukmengakhiri sebuah program.Komentar:Program yangmenampilkan beberapakalimat dengan menggunakan perintah write dan writeln.Program diatas tidak menerima masukan. Dan juga tidak melakukan proses tertentu, hanyamenghasilkan keluaran saja.Program1.2 Program menjumlahkandua buah bilangan yang sudah terdefinisi dan menampilkan hasilnya di layarprogram penjumlahan;uses crt;begin clrscr; writeln ('penjumlahan dua bilangan') writeln ('6+4'); write ('='); write (6+4); readln;end.Hasil tampilan di layarAnalisis: Clrscr :untuk menghapus prevew dalam exc Write :perintah untuk masukan (input data ) writeln :untuk garis baru readln :untuk menampilkan / membaca sintak ke exc /tampilan end : untukmengakhiri sebuah programKomentar:Program di atas adalah program yang mempunyaiproses penjumlahan dan masih menggunakan sintaks write dan writeln. Programtersebut tidak menerima masukan. Dan hanya melakukan keluaran.Program1.3 Program menuliskan nama lembaga dan alamatnyaprogram tulis alamat;begin writeln ('teknik informatika') write ('fakultas teknik'); writeln ('universitas siliwangi'); writeln; write (' jl. siliwangi no 24 tasikmalaya'); readln;end.Hadil tampilan di layarAnalisis: Clrscr :untuk menghapus prevew dalam exc Write :perintah untuk masukan (input data ) writeln :untuk garis baru readln :untuk menampilkan / membaca sintak ke exc /tampilan end : untukmengakhiri sebuah programKomentar:Program 1.3 adalah program sama seperti program1.1. tidak mnerima masukan dan hanya ada keluaran saja.1.2.3 LATIHAN1. Program 1.81 Program Membuat Program Data Mahasiswaprogram program data mahasiswa;begin writeln ('program data mahasiswa') write ('nama :Pulung Aguswanto'); writeln (''); write ('NIM :107006164'); writeln (' '); writeln ('kelas : 1D '); readln;end.Hasil tampilan di layarAnalisis: Clrscr :untuk menghapus prevew dalam exc Write :perintah untuk masukan (input data ) writeln :untuk garis baru readln :untuk menampilkan / membaca sintak ke exc /tampilan end : untukmengakhiri sebuah programkomentar :program di atas untuk membuat program data mahasiswayang di tampilkan di layar.2. Program 1.8.2 Program Membuat BintangProgram membuat_bintang;;uses crt;begin writeln ('program membuat susunan bintang'); write (' * '); writeln (' '); write (' * * * '); writeln (' '); write (' * * * * * '); writeln (' '); write (' * * * * * *'); readln;end.Hasil tampilan di layarAnalisis: Clrscr :untuk menghapus prevew dalam exc Write :perintah untuk masukan (input data ) writeln :untuk garis baru readln :untuk menampilkan / membaca sintak ke exc /tampilan end : untukmengakhiri sebuah programkomentar :Program diatas adalah program yang di gunakan untukmembuat susunan bintang yan g di tampilkan di layar3. Program 1.8.3 Program HitungPROGRAM BILANGAN_MATEMATIKAUsesCrt;VarA:real;BeginClrscr;Writeln(Program Bilangan Matematika);Write(120+12);Write(=);Write(120+12);Writeln( );Write(120-12);Write(=);Write(120-12);Writeln( );Write(120*12);Write(=);Writeln( );A:=120/12;Write(120/12);Write(= ,a:4:2);Readln;End.Hasil tampilan di layarAnalisis: Var : untukmenyimpan sebuah nilai Clrscr :untuk menghapus prevew dalam exc Write :perintah untuk masukan (input data ) writeln :untuk garis baru readln :untuk menampilkan / membaca sintak ke exc /tampilan end : untukmengakhiri sebuah programkomentar :Program diatas adalah program yang menamplkan hasilpenjumlahan, pengurangan , penelitian, dan pembagian dua buah bilangan.

BAB IITIPE DATA, NILAI, INPUT DATA OUTPUT2.1 TUJUAN PRAKTIKUMPraktikum diharapkan dapat :Mengetahui dan memahami penggunaan tipe-tipe data dasar pada pascalMemahami penggunaan operator dan ekspresi dalam membuat program Memahami penggunaan perintah dasar input-output pada pascal 2.2 DASAR TEORI2.2.1 TIPE DATAJenis jenis data yangdikenal dalam bahasa pascal antara lain yaitu:1. Boolean : tipe data logika yang hanya bernilai True (benar) dan False (salah).2. Integer : tipe data bilangan bulat. Macam-macamtipe data integer :

TipeUkuran (byte)Jangkauan nilaiByte10..255Shortint1-128..127Integer2-32768..32767Word20..65535longint4-2147483648..2147483647Operator Integer terdiri atas : + , - , * , / , DIV dan MOD3. Real : tipe data bilangan desimal. Macam-macam tipedata real :TipeUkuran (byte)Jangkauan nilaiReal62.9 x 10-39 ... 1.7 x 1038Single41.5 x 10-45 ... 3.4 x 1038Double85.0 x 10E-324 ... 1.7 x 10308Extended101.9 x 10-4932 .. 1.1 x 104932Comp8-2E+63+1 .. 2E+63-1Operator untuk jenis data ini terdiri atas : + , -, * dan /4. Char : tipe data karakter.Yang dimaksud denganjenis data ini adalah karakter tunggal atau sebuah karakter yang ditulisdiantara tanda petik tunggal, seperti misalnya A,a,!,5 dsb. Dasarnyaadalah semua karakter yang terdapat pada kode ASCII.5. String : tipe data dari kumpulan beberapa karakter.Nilai data stringmerupakan kumpulan karakter yang terletak di antara tanda petik tunggaldan panjangnya tidakboleh lebih dari 255 karakter.

Program2.1 Deklarasi dan contoh pengisian data dasarprogram Tipe_data;const phi = 3.14; Nmaks = 200;var luasL : real; nilai : integer; indeks : char; ketemu : boolean; nama_mhs : string;begin luasL := 32.4; nilai := 68; indeks := 'A'; ketemu := false; ketemu := true; nama_mhs := ' Blase Pascal'; readln;end.Hasil tampilan di layar.Analisis : Const :Nilai yang sifatnya tetap dan nilai yang disimpan padanya tidakdapat diubah selama eksekusi program berlangsung. Var :Digunakan untuk menyimpan sebuah nilai dan nilai yang diSimpan padanya dapat diubah selama eksekusi prograberlangsung. Begin :Perintah untuk mengawali perogram. END. :Untuk menggakhiri suatu program dan pengisian nilainya menggunakan tanda := atau (assignment), Baik dalampariabel ataupun konstanta.Komentar :Program diatas tidak menerima masukan, tidak melakukan proses tertentu dan juga tidakmenghasilkan keluaran di layar.Program 2.2 Program menghitung danmenampilkan luas dan keliling lingkaran dengan nilai jari-jari yang sudahterdefinisiprogram lingkaran;const phi = 3.14;var jari_jari, luas, keliling :real;begin jari_jari :=7; luas:=phi*jari_jari*jari_jari; keliling:= 2*phi*jari_jari; writeln ( 'luas lingkaran ', luas); writeln ( 'keliling lingkaran ', keliling );); readln;end.Hasil tampilan di layar.Analisis: Const :Nilai yang sifatnya tetap dan nilai yang disimpan padanya tidak dapat diubah selama eksekusi program berlangsung. Var : Digunakanuntuk menyimpan sebuah nilai dan nilai yang disimpan padanya dapat diubahselama eksekusi programberlangsung. Begin :Perintah untuk mengawali perogram. END. : Untuk menggakhiri suatu program dan pengisian nilainya menggunakan tanda := atau (assignment), Baik dalam pariabel ataupun konstanta.Komentar:Program di atas tidak menerima masukan, tetapiprogram di atas menghitung danmenampilkan luas dan keliling lingkaran dengan nilai jari-jari yang sudahterdefinisi dan menghasilkan keluaran dilayar.Program2.3 Programmencari dan menampilkan nilai Determinanprogram Nilai_Determinan;var a, b, c, d: integer ;begin a:=12; b:=14; c:=24; D:=b*b-4*a*c; writeln ('Nilai Determinan D=',d); readln;end.Hasil tampilan di layarAnalisis: Var : Digunakanuntuk menyimpan sebuah nilai dan nilai yang di simpan padanya dapat diubah selama eksekusi program berlangsung. Begin :Perintah untuk mengawali perogram. END. :Untuk menggakhiri suatu program dan pengisian nilainya menggunakan tanda := atau (assignment), Baik dalam pariabel ataupun konstanta.Komentar:Program di atas tidak menerima masukan dan tidakmelakukan proses tertentu tetapimenghasilkan keluaran di layar.Program 2.4 Contoh penggunaan operator logika danperbandingamprogram logika;var a, b, c, d: boolean ;begin k := true; l := false; m := ( k or 1) and 1 ; n := (-8 ) and (9 1) ) or (3(7); writeln ('n, '',n); readln;end.Hasil tampilan di layar.Analisis: Var : Digunakanuntuk menyimpan sebuah nilai dan nilai yang di simpan padanya dapat diubah selama eksekusi program berlangsung. Begin :Perintah untuk mengawali perogram. END. :Untuk menggakhiri suatu program. Dan pengisian nilainya menggunakan tanda := atau(assignment), Baik dalamvariabel ataupun konstanta.Komentar:Program di atas tidak menerima masukan dan tidakmelakukan proses tertentu tetapi menghasilkan keluaran di layarProgram2.5 Contoh penggunaan operator stringvar A, B : string [3];begin A:= ' Aku '; B:= ' Dia '; writeln ( A);writeln (B); writeln ( A+' dan ' +B); readln;end.Hasil tampilan di layar.Analisis: Var : Digunakanuntuk menyimpan sebuah nilai dan nilai yang di simpan padanya dapat diubah selama eksekusi program berlangsung. Begin :Perintah untuk mengawali perogram. END. :Untuk menggakhiri suatu program dan pengisian nilainya menggunakan tanda := atau (assignment), Baik dalam pariabel ataupun konstanta.Komentar:Program yangmenampilkan bebrapa kalimat dengan menggunakan perintah writeln.Program diatas tidak menerima masukan. Dan juga tidak melakukan proses tertentu, hanyamenghasilkan keluaran saja.2.2.2 OPERASIINPUT-OUTPUT2.2.2.1 Operasi Input OperasiInput dilakukan untuk membaca data atau harga yang akan diproses. Pembacaandata secara interaktif menggunakan piranti masukan (input device) sepeti keyboard. Untuk melakukan operasi input dapatmenggunakan perintah Read, Readln, atauReadkey.READ Perintah untuk membaca data yang dimasukan pemakaimelalui keyboard, data tersebut disimpan pada variable. Pada statemen ini kursor tidak pindah kebarisselanjutnya. Sintaks: read(nama_variable);Program2.6 Data angkaProgram Data_Angka;Var X, Y, Z :char;Begin write ( ' masukan 3 buah karakter ; ' ); read ( X, Y, Z ); writeln; writeln ( ' karakter pertama = ', X ); writeln ( ' karakter kedua = ', Y ); writeln ( ' karakter ketiga = ', Z ); readln;End.Hasil tampilan di layarAnalisis: Program :Perintah untuk menuliskan judul program yang akan di jalankan. Var :Digunakan untuk menyimpan sebuah nilai dan nilai yang di Simpan padanya dapat diubah selama eksekusi program berlangsung. Begin :Perintah untuk mengawali perogram. Read :untuk membaca data yang di masukan pemakai melalui keyboard data tersebut di simpan divariabel Write :Perintah untuk masukan (input data ). Writeln :Untuk garis baru. Readln : Untuk menampilkan / membaca sintak ke exc / tampilan. End : Untukmenggakhiri suatu program.Dan pengisian nilainyamenggunakan tanda := atau(assignment), Baik dalam pariabel ataupun konstanta.Komentar :Program diatas melakukan operasi dengan menggunakan perintah Read yang ada pada variabelsehingga perintah yang di tuliskan di begin dapat muncul di layar karena diperintah write terdapat read dan writeln yang psisi kursornya tidak pindah kebarisan selanjutnya.READLNPrintah untuk membaca data yang dimasukan pemakai,pada statemen ini posisi kursor akan pindah kebaris selanjutnya setelah diinput. Readln juga bisa digunakanuntuk menghentikan program ( menungguenter diletakan).Sintaks: readln(nama_variable); readln;Program2.7 Jumlah bilanganProgram Jumlah_Bilangan;Var angka1, angka2 : integer;Begin writeln ( ' input angka pertama : ' ); readln ( angka1 ); writeln ( ' input angka kedua : ' ); readln ( angka2 ); writeln (angka1,'+',angka2,'=', angka1+angka2); readln;endHasil tampilan dilayarAnlisis: Program :Perintah untuk menuliskan judul program yang akan di jalankan.. Var :Digunakan untuk menyimpan sebuah nilai dan nilai yang di simpan padanya dapat diubahselama eksekusi program berlangsung. Begin :Perintah untuk mengawali perogram. Write :Perintah untuk masukan (input data ). Writeln :Untuk garis baru. Readln :Untuk menampilkan / membaca sintak ke exc /tampilan. End :Untuk menggakhiri suatu program dan pengisian nilainya menggunakan tanda := atau(assignment), Baik dalam variabel ataupun konstanta.Komentar :Program di atas melakukan operasi denganmenggunakan perinah Readln untuk membaca data yang di simpan di variabelsehingga perintah yang di tulis di writeln akan muncul di layar tetapi posisikursor akan pindah ke baris selanjutnya setelah di input. Readln juga bisadigunakan untuk menghentikan program ( menunggu enter di tekan ) maka akanmuncul hasilnya.READKEYUntuk pembacaan sebuah karakter dari keyboard. Tipedata yang dihasilkan adalah char.Karakter yang dimasukkan tidak ditampilkan di layar.Sintaks : nama_variable=ReadKey;2.2.2.3 Operasi Output Operasi output dilakukan untukmengirimkan data kepada piranti keluaran (inputdevice ) seperti layar ( monitor )dan printer. Untuk melakukan operasi operasi output dapat menggunakan perintahwrite atau wrieln. Perbedaan antara perintah write telah dibahas pada modul 1.Sintaks : write ( parameter); writeln ( parameter);Parameter: konstanta, variabel, nilai, ekspresi aritmatika,atau ekspresi yang melibatkan fungsi.Program2.8 Operasi Output dengan berbagai jenis parameterprogram output;const max = 1000;var bil :real;begin write ( 'masukan bilangan ;'); readln (bil)); writeln ( bil); writeln ( max); writeln ( 100); writeln ( 'teknik informatika '); writeln ( 100*2-4); writeln ( sqr (bil) :0:2); readln;end.Hasil tampilan di layarAnsalisis: Program :Perintah untuk menuliskan judul program yang akan di jalankan.. Var :Digunakan untuk menyimpan sebuah nilai dan nilai yang di Simpan padanya dapat diubah selama eksekusi program berlangsung. Begin :Perintah untuk mengawali perogram. Write :Perintah untuk masukan (input data ). Writeln :Untuk garis baru. Readln :Untuk menampilkan / membaca sintak ke exc /tampilan. End : Untukmenggakhiri suatu program dan pengisian nilainya menggunakan tanda := atau(assignment), Baik dalam variabel ataupun konstanta.Komentar:Program di atas melakukan operasi output yang ditulis di write yang muncul di layar karena ada perintah readln setelah writetanpa posisi kursor di baris selanjutnya, sedangkan writeln tidak langsung muncul di layar tetapi kitaharus menginputkan terlebih dahulu dari keyboard setelah hasilnya muncul dilayar.2.3 LATIHANPertanyaan!!!!!Buatlah sebuah program yang menginputkan nama, nim, dan kelas kemudian tampilkan output dari program tersebut sebagai berikut : Nama saya Pulung Aguswanto dengan NIM 107006164 merupakan mahasiswa Teknik Informatika kelas 1DProgram2.5.1 Data Mahasiswaprogram Data_Mahasiswa;uses crt;begin write ('nama saya :pulung aguswanto dengan nim 1007006164 merupakan mahasiswa jurusan teknik Informatika kelas D ); writeln (''); readln;end.Hasil tampilan di layarAnalisis: Program :Perintah untuk menuliskan judul program yang akan di jalankan Begin :Perintah untuk mengawali perogram. Write :Perintah untuk masukan (input data ). Writeln :Untuk garis baru. Readln :Untuk menampilkan / membaca sintak ke exc /tampilan. End : Untukmenggakhiri suatu program dan pengisian nilainyamenggunakan tanda := atau (assignment), Baik dalamvariabel ataupunkonstanta.Komentar:Program di atas hanya menggunakan perintah writeuntuk menuliskan nama, nim, kelas dan di tampilkan melalui readln yang di tulisoleh writeln. Dang menghasilkan keluaran seperti gambar di atas yang langsungmenghasilkan tapilan di layar secara langsung tanpa melakukan perintah lagi.Buat program untuk mencari sisi miring dari suatu segitiga siku-siku jika diketahui panjang dua sisi yang pembentuk sudut