Top Banner

of 20

Prak Algo Fasilkom

Jul 05, 2018

Download

Documents

Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
  • 8/16/2019 Prak Algo Fasilkom

    1/20

     

    Modul Pr aktikum 

    ALGORITMA

    DAN

    PEMROGRAMAN 

    Surabaya, April 2013 

  • 8/16/2019 Prak Algo Fasilkom

    2/20

     

    PENGANTAR 

    Mata kuliah Algoritma dan Pemrograman mer upakan  mata kuliahyang mendasari teknik  pemrograman komputer .  Sebagai  mata kuliah

    dasar, para mahasiswa per lu  memiliki  pengetahuan dan keter ampilan yang cukup mengenai  algoritma dan dasar pemr ogr aman ter sebut. Karena itu diper lukan  pengalaman pr aktek  dengan car a mencobalangsung melakukan  pemrograman menggunakan per angkat lunakcomputer dengan bahasa pemrograman ter tentu. 

    Modul Pr aktikum  Algoritma dan Pemrograman Komputer ini disusundengan menya jikan tiga macam bahasa pemrograman berbasis per intahbaris (Command  Line Interface, CLI) yaitu PASCAL, C++, dan B ASIC.Disajikannya tiga macam bahasa pemrograman ini dimaksudkansupaya para mahasiswa dapat memiliki  pengalaman belajar yangbervariasi serta dapat membandingkan gaya pemrograman ketiganya.Meskipun  demikian,  pada tahap selan jutnya  para mahasiswa tidakharus mengembangkan keter ampilan  pemrograman dengan ketiga-

    tiganya, melainkan  bias hanya memilih  salah satu sesuai  kebutuhanatau peminatannya. 

    Mengapa masih menggunakan CLI, bukan berbasis GUI (Gr aphical UserInter f ace)? Menur ut  hemat penyusun,  dengan pemrograman ber basisCLI para mahasiswa bias lebih  focus pada algoritma dan logikapemrogramannya. Jika praktikum ini menggunakan GUI, sangatmungkin kegiatan praktikum akan menghabiskan banyak waktu saatkegitan perancangan antarmuka gr af isnya. 

    Untuk dapat menggunakan modul praktikum ini secar a maksimal, par amahasiswa dianjurkan mengikuti petun juk ber ikut ini: 

    1. Sebelum  praktikum, mahasiswa membaca, mencermati danmencoba memahami alur ker  ja  kode program yang ada di modul,

    serta memper kir akan hasil atau tampilan keluar annya. 

    2. Mengetik kode program seperti yang ada di dalam tiap-tiap bagianLATIHAN, kemudian melakukan kompilasi, memperbaiki kesalahan 

  • 8/16/2019 Prak Algo Fasilkom

    3/20

  • 8/16/2019 Prak Algo Fasilkom

    4/20

     

    (OUTLINE)

     

    I. Judul Per cobaan 

    II. Tu juan 

    III. Dasar  Teor i 

    IV. Alat 

    V. Langkah Kerja 

    VI. Hasil Per cobaan 

    VII. Analisa 

     A. Diagr am Alir  Pr ogr am 

    B.Pembahasan VIII. Penutup 

     A.Kesimpulan 

    B.Sar an 

    IX. Daf tar  Pustaka

    Lampir an 

    -Listing Pr ogr am 

    -Lampir an lain 

  • 8/16/2019 Prak Algo Fasilkom

    5/20

     

    MODUL 1 Modul Praktikum Algoritma dan Pemrograman 2 

    return 0; 

     A. TUJUAN 

    Setelah menyelesaikan praktikum ini, Anda diharapkan dapat: 

    1. Memahami str uktur  dasar pr ogr am. 

    2. Menggunakan tipe data, konstanta, dan variabel dalam pr ogr am. 

    3. Membuat ekspresi dengan   menggunakan oper ator   bahasapemr ogr aman. 

    B. PER AL AT AN 

    Untuk mengerjakan praktikum ini, dibutuhkan per alatan: 

    1. Per sonal  komputer   dengan sistem oper asi  Windows XP atau yanglebih bar u. 

    2. Per angkat lunak Borland C++, Turbo Pascal, dan Turbo Basic. 

    C. SKEN ARIO 

    Pr aktikan membuat program dengan bahasa pemrograman yang sesuaipada kasus di Latihan dengan bimbingan Instruktur. Setelah  itu,praktikan mengerjakan Tugas Pr aktikum  tanpa bimbingan Instr uktur .Tugas Pr aktikum  diker  jakan  menggunakan salah satu BahasaPemrograman pilihan Pr aktikan. 

    D. L ATIHAN 

    Latihan 1.a 

    Ber ikut  ini adalah program untuk menampilkan  teks “Selamat Datang

    di  Praktikum Algoritma”  pada layar monitor. Buatlah kode program

    ter sebut lalu lakukan kompilasi. 

    Bahasa C 

    #include int main() { cout

  • 8/16/2019 Prak Algo Fasilkom

    6/20

     

    STRUKTUR DASAR PROGRAM 3 

     writeln(‘Hasil x + y = ‘,jml);readln; end. 

    Bahasa Basic: 

    DIM x,y,jml as Integer PRINT "Masukkan x: "; :INPUT xPRINT "Masukkan y: "; :INPUT yjml=x+y; PRINT PRINT "Hasil x + y = "; jml 

    Latihan 1.c 

    Ber ikut  ini adalah program untuk menghitung luas per segi  pan jang. Buatlah kode program ter sebut lalu lakukan kompilasi. 

    Bahasa C: 

    #include int main() { 

    unsigned short int Lebar = 5, Panjang;Panjang = 10; // membuat unsigned short dan diinisialisasi dengan hasil // berupa Panjang kali Lebar unsigned short int Area = Lebar * Panjang; cout

  • 8/16/2019 Prak Algo Fasilkom

    7/20

     

     A. TUJUAN 

    MODUL 2 

    Modul Praktikum Algoritma dan Pemrograman 6 

    int BilPertama, BilKedua; cout > BilKedua; if (BilPertama > BilKedua)

    cout BilKedua 

    PRINT "Terima kasih..." 

    Ber ikut  adalah program untuk membandingkan dua buah bilangan

    yang dimasukkan oleh  pemakai. Buatlah kode program ter sebut  lalulakukan kompilasi. Simpan kode program dengan nama Banding. 

    ELSE

    END IF 

    PRINT "Maaf. Bilangan kedua Anda lebih besar!" 

    Bahasa C: 

    #include int main() { 

    Latihan 2.b 

    Ber ikut  adalah program untuk membandingkan dua buah bilanganyang dimasukkan oleh  pemakai menggunakan statemen if ber sar ang.Mula-mula program meminta  masukan dua bilangan, setelah  itu 

  • 8/16/2019 Prak Algo Fasilkom

    8/20

     

    STATEMEN KONDISIONAL 7 Modul Praktikum Algoritma dan Pemrograman 8 

    dibandingkan mana yang lebih  besar, apakah bilangan yang besarhabis dibagi bilangan yang kecil,  serta dicek apakah kedua bilangan

    sama besar. Buatlah kode program ter sebut  lalu lakukan kompilasi.Simpan kode program dengan nama Banding2. 

    Bahasa C: 

    #include int main() { int firstNumber, secondNumber; cout > firstNumber; cout > secondNumber;cout = secondNumber) { if ( (firstNumber % secondNumber) == 0) { if (firstNumber == secondNumber) cout

  • 8/16/2019 Prak Algo Fasilkom

    9/20

     

    STATEMEN KONDISIONAL 9 Modul Praktikum Algoritma dan Pemrograman 10 

    switch (ch) { case 'a' :  printf("\nAnda memilih tombol a .\n"); break; case 'b' :  printf("\nAnda memilih tombol b.\n"); break; 

    case 'c' :  printf("\nAnda memilih tombol c.\n"); break; default :  printf("\nBUKAN PILIHAN YANG BENAR! Bye ...");return(-1); }return(0); } 

    Bahasa Pascal: 

    Program Tombol;Uses WinCrt; 

     Var ch : char;

    Begin  write('Tekan tombol a, b, atau c. JANGAN YANG LAIN!'); readln(ch); Case ch of 'a' : writeln('Anda memilih tombol a.'); 'b' : writeln('Anda memilih tombol b.'); 'c' : writeln('Anda memilih tombol c.'); else writeln('BUKAN PILIHAN YANG BENAR! Bye ...'); End; End. 

    CASE ELSE : PRINT "BUKAN PILIHAN YANG BENAR! Bye ..." 

    END SELECT 

    E. TUG AS PR AKT IKUM 

    1. Buatlah program untuk memasukkan nilai teor i  dan nilai pr aktekmahasiswa kemudian  menghitung nilai rata-ratanya. Apabila nilairata-rata lebih  dari atau sama dengan 6 maka mahasiswadinyatakan Lulus, jika nilai rata-ratanya kurang dari enam, maka

    mahasiswa ter sebut Tidak Lulus. 

    2. Buatlah program untuk memasukkan IPK mahasiswa, kemudianmenampilkan  pr edikat  kelulusannya.  Aturan pr edikat  kelulusanadalah sebagai ber ikut: 

    IPK Pr edikat Kelulusan 

    2,0≤IPK

  • 8/16/2019 Prak Algo Fasilkom

    10/20

     

     A. TUJUAN 

    MODUL 3 

    Modul Praktikum Algoritma dan Pemrograman 12 

    #include int main() { int counter = 0; // inisialisasi kondisi  while(counter < 5) // tes apakah kondisi masih benar { 

    counter++; // tubuh loop cout

  • 8/16/2019 Prak Algo Fasilkom

    11/20

     

    PERULANGAN (LOOPING) 13 Modul Praktikum Algoritma dan Pemrograman 14 

    Bahasa C: 

    #include int main() { int counter; cout > counter;

    do { cout 0 ); cout

  • 8/16/2019 Prak Algo Fasilkom

    12/20

     

    Modul Praktikum Algoritma dan Pemrograman 16 

    MODUL 4 

     A. TUJUAN 

    Setelah menyelesaikan materi praktikum ini, diharapkan Anda dapat:

    1. Mendeklarasikan larik (array).

    2. Menggunakan larik (array) pada program.

    B. PER AL AT AN 

    Untuk mengerjakan praktikum ini, dibutuhkan per alatan: 

    1. Per sonal  komputer   dengan sistem oper asi  Windows XP atau yanglebih bar u. 

    2. Per angkat lunak Borland C++, Turbo Pascal, dan Turbo Basic. 

    C.S

    KEN ARIO 

    Pr aktikan membuat program dengan bahasa pemrograman yang sesuaipada kasus di Latihan dengan bimbingan Instruktur. Setelah  itu,praktikan mengerjakan Tugas Pr aktikum  tanpa bimbingan Instr uktur .Tugas Pr aktikum  diker  jakan  menggunakan salah satu BahasaPemrograman pilihan Pr aktikan. 

    D. L ATIHAN 

    Latihan 4.a 

    Ber ikut  mer upakan  contoh program C menggunakan larik ber isi  5elemen.  Ketik  kode program ter sebut  lalu lakukan kompilasi. Simpan

    f ile program dengan nama Lar ik5. 

    Bahasa C: 

    #include int main() { int LarikBil[5]; int i; 

    for ( i=0; i

  • 8/16/2019 Prak Algo Fasilkom

    13/20

     

    { int LarikBil[5][2] = { {0,0}, {1,2}, {2,4}, {3,6}, {4,8}}; for (int i = 0; i

  • 8/16/2019 Prak Algo Fasilkom

    14/20

     

    Modul Praktikum Algoritma dan Pemrograman 20 

    MODUL 5 

     A. TUJUAN 

    Setelah menyelesaikan materi praktikum ini, diharapkan Anda dapat:1. Mendeklarasikan struktur (record).2. Menggunakan struktur (record) pada program.

    B. PER AL AT AN 

    Untuk mengerjakan praktikum ini, dibutuhkan per alatan: 

    1. Per sonal  komputer   dengan sistem oper asi  Windows  95 atau yanglebih bar u. 

    2. Per angkat lunak Borland C++, Turbo Pascal, dan QuickBasic. 

    C. SKENARIO 

    Pr aktikan membuat program dengan bahasa pemrograman yang sesuaipada kasus di Latihan dengan bimbingan Instruktur. Setelah  itu,praktikan mengerjakan Tugas Pr aktikum  tanpa bimbingan Instr uktur .Tugas Pr aktikum  diker  jakan  menggunakan salah satu BahasaPemrograman pilihan Pr aktikan. 

    D. L ATIHAN 

    Latihan 5.a Contoh program C berikut menggunakan struktur untuk menyimpan data jari-

     jari, keliling, dan luas lingkaran. Setelah pemakai memasukkan ukuran jari-jari

    lingkaran, kemudian dihitung keliling dan luasnya, lalu hasil perhitungannya

    ditampilkan di layar. Ketik kode program tersebut lalu lakukan kompilasi.Simpan file program dengan nama Lingkar; 

    Bahasa C: 

    #include  main() { 

    struct{float r;float K;double L; } Lingkaran; cout > Lingkaran.r;Lingkaran.K=2*3.14*Lingkaran.r;Lingkaran.L=3.14* Lingkaran.r* Lingkaran.r; cout

  • 8/16/2019 Prak Algo Fasilkom

    15/20

     

    MENGGUNAKAN STRUKTUR (RECORD) 21 Modul Praktikum Algoritma dan Pemrograman 22 

    PRINT "Keliling Lingkaran: ", Lingkaran.KPRINT "Luas Lingkaran : ", Lingkaran.L 

    Latihan 5.b Contoh program berikut hampir sama dengan program pada Latihan 5.a, hanya

    saja dipakai untuk menghitung keliling dan luas tiga buah lingkaran. Ketik kode

     program tersebut lalu lakukan kompilasi. Simpan file program dengan namaLingkar3.

    Bahasa C: 

    #include  main() { struct{ float r;float K;double L; } Lingkaran[3];int I;for(I=0;I

  • 8/16/2019 Prak Algo Fasilkom

    16/20

     

    Modul Praktikum Algoritma dan Pemrograman 24 

     A. TUJUAN 

    MODUL 6 float TempCel; cout > TempFer; TempCel = KonverSh(TempFer); cout

  • 8/16/2019 Prak Algo Fasilkom

    17/20

     

    MEMBUAT FUNGSI  25 

    PRINT "Masukkan temperature dalam Fahrenheit: "; :INPUT TempFerTempCel = KonverSh(TempFer) PRINT “Besar temperatur tersebut dalam Celsius : "; TempCel 

    E. TUG AS PRAKTIKUM 

    1. Tulislah fungsi bernama Perimeter, yang mengasilkan nilai ber tipe

    long integer dan memiliki  dua parameter yang keduanya ber tipe

    short integer. Kedua parameter menyatakan panjang dan lebarbangun segi  empat. Fungsi ter sebut  menghasilkan perimeter segiempat (dua  kali Pan jang dan dua kali Lebar). Gunakan f ungsiter sebut dalam pr ogr am. 

    2. Tulislah program yang ber isi  fungsi untuk memasukkan duaargumen integer short dan menghasikan pembagian  bilanganpertama dengan bilangan kedua. Fungsi tidak melakukanpembagian apabila bilangan kedua nol, tetapi hasilnya  –1. Gunakanfungsi ter sebut dalam pr ogr am. 

    3. Buatlah fungsi untuk menghitung hasil  A pangkat N (AN). Rumusperpangkatan ter sebut adalah sebagai ber ikut: 

     AN = exp ( ln (A)* N). 

    Gunakan fungsi ter sebut pada program aplikasi untuk menghitungpangkat se jumlah bilangan. 

    MODUL 7 

     A. TUJUAN 

    Setelah menyelesaikan mater i ini, Anda diharapkan dapat: 

    1. Mendef inisikan dan mendeklarasikan pr osedur . 

    2. Menetapkan cara pengir iman variabel pada deklarasi pr osedur . 

    3. Melakukan pemanggilan pr osedur . 

    B. PER AL AT AN 

    Untuk mengerjakan praktikum ini, dibutuhkan per alatan: 

    1. Per sonal  komputer   dengan sistem oper asi  Windows  95 atau yanglebih bar u. 

    2. Per angkat lunak Turbo Pascal dan Turbo Basic. 

    C. SKENARIO 

    Pr aktikan membuat program dengan bahasa pemrograman yang sesuaipada kasus di Latihan dengan bimbingan Instruktur. Setelah  itu,praktikan mengerjakan Tugas Pr aktikum  tanpa bimbingan Instr uktur .Tugas Pr aktikum  diker  jakan  menggunakan salah satu BahasaPemrograman pilihan Pr aktikan. 

    D. L ATIHAN 

    Ber ikut  mer upakan  contoh program yang menggunakan pr osedurbernama PLingkar .  Prosedur ini berguna untuk menghitung kelilingdan luas lingkaran. Ketik kode program ter sebut lalu lakukan kompilasidan pengu jian. Simpan f ile program dengan nama HLingkar . 

    Bahasa Pascal: 

    Program Lingkaran;Uses WinCrt;  Var 

  • 8/16/2019 Prak Algo Fasilkom

    18/20

     

    MEMBUAT PROSEDUR  27 Modul Praktikum Algoritma dan Pemrograman 28 

    JarD, JarB : real; 

    Procedure PLingkar(r : real);Const phi =3.14;  Var K, L : real; Begin

    K:=2*phi*r;L:=phi* sqr(r);  Writeln(‘Keliling : ‘,K); writeln(‘Luas : ‘,L);End; 

    {===Program utama===}

    Begin  W rite(‘J ari-Jari Roda Depan : ‘); Readln(JarD);  W rite(‘J ari-Jari Roda Belakang : ‘); Readln(JarB);  Writeln;  writeln(‘HASIL PERHITUNGAN‘);  Writeln(‘RODA DEPAN: ‘); PLingkar(JarD); Writeln(‘RODA BELAKANG: ‘);PLingkar(JarB); End. 

    E. TUG AS PRAKTIKUM 

    1. Buatlah prosedur untuk menghitung luas, volume, dan pan jangrusuk balok yang memliki panjang p, lebar l, dan tinggi t. Gunakanprosedur ter sebut dalam pr ogr am. 

    2. Buatlah prosedur untuk menghitung gaji bulanan pegawai,  denganketentuan sebagai ber ikut: ▪  Gaji Pokok = Jumlah jam masuk X Rp 25.000,00 

    ▪  Gaji Lembur  = (Jumlah  jam masuk – 300) X Rp 10.000,00 ▪  Tunjangan anak sebesar  Rp 50.000,00 per anak. ▪  TunjanganKesehatan sebesar  Rp 100.000,00 ▪  Gaji diter ima  mer upakan   jumlah dari Gaji Pokok, Gaji Lembur ,

    Tunjangan Anak, dan Tunjangan Kesehatan. 

    Gunakan prosedur ter sebut  dalam program per hitungan  ga jise jumlah kar ywawan. 

    Bahasa Basic: 

    SUB PLingkar(r)K=2*3.14*rL=3.14* sqr(r) PRINT ‘K eliling : ‘; K PRINT ‘Luas : ‘; LEND SUB 

    ‘===Program utama=== PRINT ‘J ari-Jari Roda Depan : ‘;  :INPUT JarD PRINT ‘J ari-Jari Roda Belakang : ‘); :INPUT JarBPRINT ‘’ PRINT ‘H ASIL PERHITUNGAN‘ 

    PRINT ‘R ODA DEPAN: ‘CALL PLingkar(JarD)PRINT ‘R ODA BELAKANG: ‘CALL PLingkar(JarB) 

  • 8/16/2019 Prak Algo Fasilkom

    19/20

     

     A. TUJUAN 

    MODUL 8 

    Modul Praktikum Algoritma dan Pemrograman 30 

    long sVar = -65535; cout

  • 8/16/2019 Prak Algo Fasilkom

    20/20

     

    MENGGUNAKAN POINTER 31 

    Latihan 4.c 

    Program Pascal  ber ikut  mer upakan  contoh program untukmengalokasian dan menghapus pointer .  Ketik  kode program ter sebutlalu lakukan kompilasi. 

    PROGRAM ContohPointer(OUTPUT);

    Uses WinCrt; 

    TYPE intptr = ̂ INTEGER; realptr = ̂ REAL; 

     VAR   MyIntegerPointer, AnotherIntPointer:intptr; MyRealPointer :realptr; 

    BEGIN NEW(MyIntegerPointer); NEW(MyRealPointer); NEW(AnotherIntPointer); 

     MyRealPointer :̂= 2.25; MyIntegerPointer^:= 500; AnotherIntPointer^:= 400; 

     MyRealPointer :̂= MyIntegerPointer^; MyIntegerPointer:= AnotherIntPointer; 

     WRITELN('MyRealPointer menunjuk ke: ', MyRealPointer^:2:2); WRITELN; 

    IF (MyIntegerPointer = AnotherIntPointer) THEN  WRITELN('Ya, Kedua pointer menunjuj ke lokasi yang sama.'); 

     WRITELN('MyIntegerPointer menunjuk ke: ', MyIntegerPointer^); WRITELN('AnotherIntPointer menunjuk ke: ', AnotherIntPointer^); WRITELN; 

    DISPOSE(MyIntegerPointer);

    DISPOSE(MyRealPointer); 

     WRITELN('Tekan sembarang tombol untuk melanjutkan...');READLN END. 

    Modul Praktikum Algoritma dan Pemrograman 32 

    E. TUG AS PRAKTIKUM 

    1. Jika  Anda memiliki  variabel dengan nama Usia, tuliskan kodeprogram menggunakan pointer   untuk memanipulasi  Usia.Tetapkan nilai 25 pada variabel Usia yang Anda deklar asikan,menggunakan pointer . 

    2. Buatlah program kecil  yang mendeklarasikan sebuah integer danpointer   untuk integer ter sebut.  Tempatkan alamat integer padapointer . Gunakan pointer  untuk mengeset nilai di variabel integer . 

    3. Buatlah program melibatkan  pointer   untuk menghitung total nilaidari nilai-nilai yang dimasukkan pemakai secar a  dinamis (tidakdibatasi jumlah datanya). 

    1. ITLESL. Pr ogr amm

    ing and Pr oblem

     SolvingThrough

    C‟

     Language.

    Delhi:

    MacMillan India Ltd. 

    2. Jogiyanto H.M. (1989). Teor i dan Aplikasi Program Komputer  Bahasa

    Pascal. Yogyakarta: Andi Off set. 

    3. Kr istanto, A. Algor itma dan Pemrograman dengan C++. Yogyakar ta:

    Graha Ilmu. 

    4. Pamungkas. (1995). Tuntunan Pr aktis Pemrograman TURBO B ASIC.

    Jakar ta: Elexmedia Komputindo. 

    5. Soesianto, Eko Nugroho, & P. Insap Satosa (1985). Pemrograman B ASIC.

    Yogyakarta: AndiOFFSET. 

    6. Suted jo, B. dan Michael AN. (1997). Algor itma dan Teknik Pemr ogr aman:

    Konsep, Implementasi dan Aplikasi. Yogyakarta: Pener bit  Andi. 

    7. Wagito. (2003). Pemrograman Ber or ientasi Ob jek: Teor i dan Aplikasi

    dengan C++ Ber basis Windows dan Linux. Yogyakarta: GavaMedia.