• Tidak ada hasil yang ditemukan

Modul Praktikum Algoritma dan Dasar Pemrograman

N/A
N/A
Protected

Academic year: 2021

Membagikan "Modul Praktikum Algoritma dan Dasar Pemrograman"

Copied!
23
0
0

Teks penuh

(1)

Modul

Modul

Modul

Modul Praktikum

Praktikum

Praktikum

Praktikum

ALGORITMA

DAN DASAR

PEMROGRAMAN

Disusun oleh:

Carwoto

Carwoto

Carwoto

Carwoto

(carwoto@yahoo.com)

Semarang

Semarang

Semarang

Semarang

20

20

20

2011

11

11

11

(2)

Hak cipta 2011 pada Carwoto

Diperkenankan menggunakan e-modul ini untuk keperluan pendidikan di Indonesia baik dalam bentuk elektronik maupun dengan mencetaknya, dengan syarat tidak melakukan perubahan isi dan informasi yang ada di dalamnya. Segala hal yang diakibatkan oleh penggunaan e-modul ini bukan tanggung jawab penulis.

Untuk keperluan komersial atau penggunaan di luar Indonesia, silahkan hubungi penulis melalui email: carwoto@yahoo.com.

K

K

A

A

T

T

A

A

P

P

E

E

N

N

G

G

A

A

N

N

T

T

A

A

R

R

Mata kuliah Algoritma dan Dasar Pemrograman merupakan mata kuliah yang mendasari teknik pemrograman komputer. Sebagai mata kuliah dasar, para mahasiswa perlu memiliki pengetahuan dan keterampilan yang cukup mengenai algoritma dan dasar pemrograman tersebut. Karena itu diperlukan pengalaman praktek dengan cara mencoba langsung melakukan pemrograman menggunakan perangkat lunak computer dengan bahasa pemrograman tertentu.

Modul Praktikum Algoritma dan Pemrograman Komputer ini disusun dengan menyajikan tiga macam bahasa pemrograman berbasis perintah baris (Command Line Interface, CLI) yaitu PASCAL, C++, dan BASIC. Disajikannya tiga macam bahasa pemrograman ini dimaksudkan supaya para mahasiswa dapat memiliki pengalaman belajar yang bervariasi serta dapat membandingkan gaya pemrograman ketiganya. Meskipun demikian, pada tahap selanjutnya para mahasiswa tidak harus mengembangkan keterampilan pemrograman dengan ketiga-tiganya, melainkan bias hanya memilih salah satu sesuai kebutuhan atau peminatannya.

Mengapa masih menggunakan CLI, bukan berbasis GUI (Graphical User Interface)? Menurut hemat penyusun, dengan pemrograman berbasis CLI para mahasiswa bias lebih focus pada algoritma dan logika pemrogramannya. Jika praktikum ini menggunakan GUI, sangat mungkin kegiatan praktikum akan menghabiskan banyak waktu saat kegitan perancangan antarmuka grafisnya.

Modul ini pertama kali disusun tahun 2002 dan telah digunakan sejak saat itu dalam perkuliahan di Program Studi Teknik Elektronika, Teknik Informatika, Sistem Informasi, serta telah mengalami perbaikan-perbaikan hingga wujud akhirnya sekarang ini seperti yang And baca. Untuk dapat menggunakan modul praktikum ini secara maksimal, para mahasiswa dianjurkan mengikuti petunjuk berikut ini:

1. Sebelum praktikum, mahasiswa membaca, mencermati dan mencoba memahami alur kerja kode program yang ada di modul, serta memperkirakan hasil atau tampilan keluarannya.

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

(3)

pengetikan kode, dan mencoba menjalankan hasil kompilasi program. Jika waktu memungkinkan, majhasiswa dapat memodifikasi latihan ini sesuai kebutuhan.

3. Mengerjakan tugas yang ada di bagian TUGAS PRAKTIKUM. Tampilan antarmuka program latihan silahkan dirancang sendiri oleh mahasiswa dan silahkan berkreatifitas sendiri.

4. Menyusun Laporan Praktikum sesuai format yang telah ditentukan. Dengan menyusun laporan, maka para mahasiswa akan mengalami tahap endap materi atau pendalaman terhadap materi pemrograman yang sudah dipraktekkan sebelumnya. Selain itu, laporan merupakan dokumentasi atas hasil kerja mahasiswa atas tugas yang diberikan.

Akhir kata, semoga modul praktikum ini dapat bermanfaat dalam melatih mahasiswa belajar mengenai algoritma dan dasar-dasar pemrograman komputer. Kritik dan saran membangun dari semua pihak sangat diharapkan.

Semarang, Februari 2011 Penyusun, Carwoto

D

D

A

A

F

F

T

T

A

A

R

R

I

I

S

S

I

I

KATA PENGANTAR

IV

DAFTAR ISI

VI

KERANGKA (OUTLINE) LAPORAN PRAKTIKUM

VII

STRUKTUR DASAR PROGRAM

1

STATEMEN KONDISIONAL

5

PERULANGAN (LOOPING)

11

MENGGUNAKAN LARIK (ARRAY)

15

MENGGUNAKAN STRUKTUR (RECORD)

19

MEMBUAT FUNGSI

23

MEMBUAT PROSEDUR

26

MENGGUNAKAN POINTER

29

PEMROGRAMAN BERORIENTASI OBJEK

33

(4)

K

K

E

E

R

R

A

A

N

N

G

G

K

K

A

A

(

(

O

O

U

U

T

T

L

L

I

I

N

N

E

E

)

)

L

L

A

A

P

P

O

O

R

R

A

A

N

N

P

P

R

R

A

A

K

K

T

T

I

I

K

K

U

U

M

M

I. Judul Percobaan II. Tujuan

III. Dasar Teori IV. Alat

V. Langkah Kerja VI. Hasil Percobaan VII. Analisa

A. Diagram Alir Program B. Pembahasan

VIII. Penutup A. Kesimpulan B. Saran IX. Daftar Pustaka Lampiran

- Listing Program - Lampiran lain

(5)

MODUL

1

S

S

T

T

R

R

U

U

K

K

T

T

U

U

R

R

D

D

A

A

S

S

A

A

R

R

P

P

R

R

O

O

G

G

R

R

A

A

M

M

A. T

UJUAN

Setelah menyelesaikan praktikum ini, Anda diharapkan dapat: 1. Memahami struktur dasar program.

2. Menggunakan tipe data, konstanta, dan variabel dalam program. 3. Membuat ekspresi dengan menggunakan operator bahasa

pemrograman.

B. P

ERALATAN

Untuk mengerjakan praktikum ini, dibutuhkan peralatan:

1. Personal komputer dengan sistem operasi Windows 95 atau yang lebih baru.

2. Perangkat lunak Borland C++, Turbo Pascal, dan Turbo Basic.

C. S

KENARIO

Praktikan membuat program dengan bahasa pemrograman yang sesuai pada kasus di Latihan dengan bimbingan Instruktur. Setelah itu, praktikan mengerjakan Tugas Praktikum tanpa bimbingan Instruktur. Tugas Praktikum dikerjakan menggunakan salah satu Bahasa Pemrograman pilihan Praktikan.

D. L

ATIHAN

Latihan

1.a

Berikut ini adalah program untuk menampilkan teks “Selamat Datang di Kuliah Pemrograman Komputer” pada layar monitor. Buatlah kode program tersebut lalu lakukan kompilasi.

Bahasa C

#include <iostream.h> int main()

{

cout<<"Selamat Datang di Kuliah Pemrograman Komputer!\n";

Modul Praktikum Algoritma dan Dasar Pemrograman 2

return 0; }

Bahasa Pascal Program Selamat; Begin

Writeln(‘Selamat Datang di Kuliah Pemrograman Komputer!’); Readln;

End.

Bahasa Basic:

PRINT "Selamat Datang di Kuliah Pemrograman!"

Latihan 1.b

Berikut adalah program untuk menghitung penjumlahan dua bilangan dengan variabel x, y, dan jml yang bertipe Integer. Buatlah kode program tersebut lalu lakukan kompilasi.

Bahasa C: #include <iostream.h> int main() { int x,y,jml; cout<<"Masukkan x: ";cin>>x; cout<<"Masukkan y: ";cin>>y; jml=x+y; cout<<"\n"; cout<<"Hasil x + y = "<< jml; return 0; } Bahasa Pascal: program Jumlah; var x,y,jml : integer; begin write(‘Masukkan x: ‘); readln(x); write(‘Masukkan y: ‘); readln(y); jml:=x+y; writeln;

(6)

STRUKTUR DASAR PROGRAM 3

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

end.

Bahasa Basic:

DIM x,y,jml as Integer

PRINT "Masukkan x: "; :INPUT x PRINT "Masukkan y: "; :INPUT y jml=x+y;

PRINT

PRINT "Hasil x + y = "; jml

Latihan 1.c

Berikut ini adalah program untuk menghitung luas persegi panjang. Buatlah kode program tersebut lalu lakukan kompilasi.

Bahasa C:

#include <iostream.h> 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 << "Lebar:" << Lebar<< "\n";

cout << "Panjang: " << Panjang << endl; cout << "Luas Permukaan: " << Luas << endl; return 0; } Bahasa Pascal: Program Luas_Segi_empat; const Lebar = 5; Panjang = 10; Var Luas : Real; begin

{menghitung Luas dengan rumus Panjang kali Lebar}

Luas = Lebar * Panjang; Writeln("Lebar: ",Lebar);

Modul Praktikum Algoritma dan Dasar Pemrograman 4

Writeln("Panjang: ",Panjang); Writeln("Luas Permukaan: ",Luas); readln;

end.

Bahasa Basic: CONST Lebar = 5 CONST Panjang = 10 DIM Luas AS Single

‘menghitung Luas dengan rumus Panjang kali Lebar Area = Lebar * Panjang

PRINT "Lebar: "; Lebar PRINT "Panjang: "; Panjang PRINT "Luas Permukaan: "; Luas

E. T

UGAS

P

RAKTIKUM

1. Tulislah program untuk menampilkan teks berikut pada layar monitor.

Kuliah Pemrograman Komputer

Mencetak Sarjana Komputer dengan Kompetensi Standar 2. Buatlah aplikasi untuk menghitung luas permukaan dan volume

bola dengan rumus: L = 4 * ∏ ∏ ∏ ∏ * r2

V = 4/3 * ∏ ∏ ∏ ∏ * r 3

r adalah jari-jari lingkaran dan ∏ ∏ ∏ ∏ adalah sebuah bilangan tetap yang nilainya 3.14.

3. Buatlah aplikasi untuk mengkonversi suhu dalam satuan Celcius (C) ke satuan Fahrenheit (F), Reamur (R), dan Kelvin (K). Rumus konversinya adalah sebagai berikut:

F = (9/5 * C) + B; R = C + B; dan K = (4/5 * C)

(7)

MODUL

2

S

S

T

T

A

A

T

T

E

E

M

M

E

E

N

N

K

K

O

O

N

N

D

D

I

I

S

S

I

I

O

O

N

N

A

A

L

L

A. T

UJUAN

Setelah melakukan praktikum ini, diharapkan Anda dapat:

1. Menggunakan statemen untuk menyelesaikan kondisi percabangan dengan beberapa bahasa pemrograman.

2. Membuat program untuk menangani kasus-kasus percabangan.

B. P

ERALATAN

Untuk mengerjakan praktikum ini, dibutuhkan peralatan:

1. Personal komputer dengan sistem operasi Windows 95 atau yang lebih baru.

2. Perangkat lunak Borland C++, Turbo Pascal, dan Turbo Basic.

C. S

KENARIO

Praktikan membuat program dengan bahasa pemrograman yang sesuai pada kasus di Latihan dengan bimbingan Instruktur. Setelah itu, praktikan mengerjakan Tugas Praktikum tanpa bimbingan Instruktur. Tugas Praktikum dikerjakan menggunakan salah satu Bahasa Pemrograman pilihan Praktikan.

D. L

ATIHAN

Latihan

2.a

Berikut adalah program untuk membandingkan dua buah bilangan yang dimasukkan oleh pemakai. Buatlah kode program tersebut lalu lakukan kompilasi. Simpan kode program dengan nama Banding. Bahasa C:

#include <iostream.h> int main()

{

Modul Praktikum Algoritma dan Dasar Pemrograman 6

int BilPertama, BilKedua;

cout << "Ketikkan bilangan yang besar (banyak): “ cin >> BilPertama;

cout << "\nMasukkan bilangan yang lebih kecil: “; cin >> BilKedua;

if (BilPertama > BilKedua) cout << "\nTerima kasih….\n"; else

cout << "\nMaaf. Bilangan kedua Anda lebih besar!"; return 0; } Bahasa Pascal: Program Banding; Uses WinCrt; Var

BilPertama, BilKedua : real; Begin

write(‘Ketikkan bilangan yang besar (banyak): ‘); readln(BilPertama);

write(‘Masukkan bilangan yang lebih kecil: ‘); readln(BilKedua);

if BilPertama > BilKedua then writeln(‘Terima kasih...’) else

writeln(‘Maaf. Bilangan kedua Anda lebih besar!’); End.

Bahasa Basic:

DIM BilPertama, BilKedua As Single

PRINT "Ketikkan bilangan yang besar (banyak): “; :INPUT BilPertama

PRINT "Masukkan bilangan yang lebih kecil: “; :INPUT BilKedua IF BilPertama > BilKedua

PRINT "Terima kasih..." ELSE

PRINT "Maaf. Bilangan kedua Anda lebih besar!" END IF

Latihan 2.b

Berikut adalah program untuk membandingkan dua buah bilangan yang dimasukkan oleh pemakai menggunakan statemen if bersarang. Mula-mula program meminta masukan dua bilangan, setelah itu

(8)

STATEMEN KONDISIONAL 7

dibandingkan mana yang lebih besar, apakah bilangan yang besar habis dibagi bilangan yang kecil, serta dicek apakah kedua bilangan sama besar. Buatlah kode program tersebut lalu lakukan kompilasi. Simpan kode program dengan nama Banding2.

Bahasa C:

#include <iostream.h> int main()

{

int firstNumber, secondNumber;

cout << "Masukkan dua buah bilangan.\nPertama: "; cin >> firstNumber; cout << "\nKedua: "; cin >> secondNumber; cout << "\n\n"; if (firstNumber >= secondNumber) { if ( (firstNumber % secondNumber) == 0) { if (firstNumber == secondNumber) cout << "Kedua bilangan sama!\n"; else

cout << "Habis dibagi!\n"; }

else

cout << "Tidak habis dibagi!\n"; }

else

cout << "Hey! Bilangan kedua Anda lebih besar!\n"; return 0; } Bahasa Pascal: Program Banding2; Uses WinCrt; Var

firstNumber, secondNumber : integer; Begin

writeln('Masukkan dua buah bilangan.'); write('Pertama: '); readln(firstNumber); write('Kedua: '); readln(secondNumber); writeln;

if firstNumber >= secondNumber then if (firstNumber mod secondNumber) = 0 then if (firstNumber=secondNumber) then

Modul Praktikum Algoritma dan Dasar Pemrograman 8

writeln('Kedua bilangan sama!') else

writeln('Habis dibagi!') else

writeln('Tidak habis dibagi!') else

writeln('Hey! Bilangan kedua Anda lebih besar!'); end.

Bahasa Basic:

PRINT "Masukkan dua buah bilangan." PRINT "Pertama: "; :INPUT firstNumber PRINT "Kedua: "; :INPUT secondNumber PRINT ""

IF (firstNumber >= secondNumber) THEN

IF ((firstNumber MOD secondNumber) = 0) THEN IF (firstNumber = secondNumber) THEN

PRINT "Kedua bilangan sama!" ELSE

PRINT "Habis dibagi!" END IF

else

PRINT "Tidak habis dibagi!" END IF

ELSE

PRINT "Hey! Bilangan kedua Anda lebih besar!" END IF

Latihan 2.c

Kode program berikut menggambarkan contoh penggunaan statemen case untuk memeriksa penekanan tombol keyboard a, b, atau c. Buatlah kode program tersebut lalu lakukan kompilasi. Simpan dengan nama Tombol. Bahasa C: #include <conio.h> #include <stdio.h> int main(void) { int ch;

printf("\tTekan tombol a, b, atau c. JANGAN YANG LAIN!"); ch = getch()

(9)

STATEMEN KONDISIONAL 9

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.

Bahasa Basic:

PRINT "Tekan tombol a, b, atau c. JANGAN YANG LAIN!"; :INPUT ch$ SELECT CASE ch$

CASE "a"

PRINT "Anda memilih tombol a." CASE "b"

PRINT "Anda memilih tombol b." CASE "c"

PRINT "Anda memilih tombol c."

Modul Praktikum Algoritma dan Dasar Pemrograman 10

CASE ELSE :

PRINT "BUKAN PILIHAN YANG BENAR! Bye ..." END SELECT

E. TUGAS

PRAKT

IKUM

1. Buatlah program untuk memasukkan nilai teori dan nilai praktek mahasiswa kemudian menghitung nilai rata-ratanya. Apabila nilai rata-rata lebih dari atau sama dengan 6 maka mahasiswa dinyatakan Lulus, jika nilai rata-ratanya kurang dari enam, maka mahasiswa tersebut Tidak Lulus.

2. Buatlah program untuk memasukkan IPK mahasiswa, kemudian menampilkan predikat kelulusannya. Aturan predikat kelulusan adalah sebagai berikut:

IPK Predikat Kelulusan

2,0≤IPK<2,5 Baik 2,5≤IPK<3,0 Memuaskan 3,0≤IPK<3,5 Sangat Memuaskan 3,5≤IPK≤4,0 Cumlaud

3. Buatlah program untuk mengkonversi angka hari menjadi nama hari. Pemakai diminta memasukkan di antara angka dari 1 sampai 7, maka akan ditampilkan nama hari yang sesuai. Jika pemakai memasukkan angka yang tidak termasuk dalam batasan, maka ditampilkan pesan kesalahan memasukkan angka.

(10)

MODUL

3

P

P

E

E

R

R

U

U

L

L

A

A

N

N

G

G

A

A

N

N

(

(

L

L

O

O

O

O

P

P

I

I

N

N

G

G

)

)

A. T

UJUAN

Setelah menyelesaiakan materi praktikum ini, Anda diharapkan dapat: 1. Membuat perulangan menggunakan perintah WHILE.

2. Membuat perulangan menggunakan perintah REPEAT. 3. Membuat perulangan menggunakan perintah FOR.

B. P

ERALATAN

Untuk mengerjakan praktikum ini, dibutuhkan peralatan:

1. Personal komputer dengan sistem operasi Windows 95 atau yang lebih baru.

2. Perangkat lunak Borland C++, Turbo Pascal, dan Turbo Basic.

C. S

KENARIO

Praktikan membuat program dengan bahasa pemrograman yang sesuai pada kasus di Latihan dengan bimbingan Instruktur. Setelah itu, praktikan mengerjakan Tugas Praktikum tanpa bimbingan Instruktur. Tugas Praktikum dikerjakan menggunakan salah satu Bahasa Pemrograman pilihan Praktikan.

D. L

ATIHAN

Latihan

3.a

Kode program berikut merupakan contoh perulangan untuk membuat dan menampilkan pencacah (counter) mulai dari 1 sampai 5. Ketik kode program tersebut lalu lakukan kompilasi. Simpan file dengan nama Counter5.

Bahasa C:

Modul Praktikum Algoritma dan Dasar Pemrograman 12

#include <iostream.h> int main()

{

int counter = 0; // inisialisasi kondisi

while(counter < 5) // tes apakah kondisi masih benar {

counter++; // tubuh loop

cout << "counter: " << counter << "\n"; }

cout << "Selesai. Counter: " << counter << ".\n"; return 0; } Bahasa Pascal: Program Counter5; Uses WinCrt; Var Counter : Integer; Begin while(counter < 5) do begin counter:=counter+1; writeln('counter: ',counter); end;

writeln('Selesai. Counter: ',counter); End.

Bahasa Basic: WHILE counter<5 Counter=counter+1

PRINT "counter: "; counter LOOP

PRINT "Selesai. Counter: "; counter

Latihan 3.b

Contoh program berikut merupakan contoh perulangan menggunakan WHILE untuk membuat dan menampilkan teks STMIK ProVisi sebanyak keinginan pemakai. Ketik kode program tersebut lalu lakukan kompilasi. Simpan file dengan nama UlangTek.

(11)

PERULANGAN (LOOPING) 13 Bahasa C: #include <iostream.h> int main() { int counter;

cout << "Berapa banyak teks STMIK ProVisi? "; cin >> counter;

do {

cout << "STMIK ProVisi\n"; counter--;

} while (counter >0 );

cout << "Nilai Counter: " << counter << endl; return 0; } Bahasa Pascal: Program UlangTek; Uses WinCrt; Var Counter : Integer; Begin

Write('Berapa banyak teks STMIK ProVisi? '); Readln(counter); while counter>0 do begin writeln('STMIK ProVisi'); counter:=counter-1; end;

writeln('Nilai Counter: ',counter); End.

Bahasa Basic:

PRINT "Berapa banyak teks STMIK ProVisi? "; :INPUT counter DO WHILE counter>0

PRINT "STMIK ProVisi" Counter=counter-1 WEND

PRINT "Nilai Counter: "; counter

Latihan 3.c

Kode program berikut merupakan contoh perulangan menggunakan FOR untuk menampilkan teks “Looping!” sebanyak 5 kali. Ketik kode

Modul Praktikum Algoritma dan Dasar Pemrograman 14

program tersebut lalu lakukan kompilasi. Simpan file dengan nama Looping. Bahasa C: #include <iostream.h> int main() { int counter;

for (counter = 0; counter < 5; counter++) cout << "Looping! ";

cout << "\nCounter: " << counter << ".\n"; return 0; } Bahasa Pascal: Program Looping; Uses WinCrt; Var Counter : Integer; Begin for counter := 1 to 5 do writeln('Looping!'); writeln('Counter: ',counter); End. Bahasa Basic: FOR counter= 1 TO 5 PRINT "Looping!" NEXT

PRINT "Counter: "; counter

E. T

UGAS

P

RAKTIKUM

1. Buatlah program menggunakan untuk menghitung kuadrat bilangan 100 sampai 200.

2. Buatlah program menggunakan while untuk menghitung faktorial bilangan.

3. Buatlah program untuk menampilkan bilangan prima antara 0 sampai dengan 100.

4. Buatlah program untuk menampilkan deret Fibonacci yang sesuai dengan angka yang hendak dijumlahkan.

(12)

MODUL

4

M

M

E

E

N

N

G

G

G

G

U

U

N

N

A

A

K

K

A

A

N

N

L

L

A

A

R

R

I

I

K

K

(

(

A

A

R

R

R

R

A

A

Y

Y

)

)

A. T

UJUAN

Setelah menyelesaikan materi praktikum ini, diharapkan Anda dapat: 1. Mendeklarasikan larik (array).

2. Menggunakan larik (array) pada program.

B. P

ERALATAN

Untuk mengerjakan praktikum ini, dibutuhkan peralatan:

1. Personal komputer dengan sistem operasi Windows 95 atau yang lebih baru.

2. Perangkat lunak Borland C++, Turbo Pascal, dan Turbo Basic.

C. S

KENARIO

Praktikan membuat program dengan bahasa pemrograman yang sesuai pada kasus di Latihan dengan bimbingan Instruktur. Setelah itu, praktikan mengerjakan Tugas Praktikum tanpa bimbingan Instruktur. Tugas Praktikum dikerjakan menggunakan salah satu Bahasa Pemrograman pilihan Praktikan.

D. L

ATIHAN

Latihan

4.a

Berikut merupakan contoh program C menggunakan larik berisi 5 elemen. Ketik kode program tersebut lalu lakukan kompilasi. Simpan file program dengan nama Larik5.

Bahasa C: #include <iostream.h> int main() { int LarikBil[5]; int i;

Modul Praktikum Algoritma dan Dasar Pemrograman 16

for ( i=0; i<5; i++) // 0-4 {

cout << "Nilai LarikBil [" << i << "]: "; cin >> LarikBil [i];

}

for (i = 0; i<5; i++)

cout << i << ": " << LarikBil[i] << "\n"; return 0; } Bahasa Pascal: Program Larik5; Uses WinCrt; Var

LarikBil: array[0..5] of integer; I : integer;

Begin

for i:=0 to 4 do begin

writeln('Nilai LarikBil [',i,']: '); Readln(LarikBil[i]); end; for i:=0 to 4 do writeln(i,': ', LarikBil[i]); End. Bahasa Basic:

DIM LarikBil(5) As Integer FOR i=0 TO 4

PRINT "Nilai LarikBil (";i;")" :INPUT LarikBil(i) NEXT FOR i = 0 TO 4 PRINT i ": " ; LarikBil(i) NEXT

Latihan 4.b

Program berikut merupakan contoh program menggunakan larik multidimensi dan menampilkan isinya di layar monitor. Ketik kode program tersebut lalu lakukan kompilasi. Betulkan jika pada program yang Anda buat terdapat kesalahan. Simpan file program dengan nama multidim.

(13)

MENGGUNAKAN LARIK (ARRAY) 17 Bahasa C: #include <iostream.h> int main() { int LarikBil[5][2] = { {0,0}, {1,2}, {2,4}, {3,6}, {4,8}}; for (int i = 0; i<5; i++)

for (int j=0; j<2; j++) {

cout << "LarikBil[" << i << "][" << j << "]: "; cout << LarikBil[i][j]<< endl;

} return 0; } Bahasa Pascal: Program Multidim; Uses WinCrt; Var LarikBil[5][2] = { {0,0}, {1,2}, {2,4}, {3,6}, {4,8}}; Begin for i:=0 to 4 do for j:=0 to 1 do writeln(‘LarikBil[‘,I,’][‘,j,’]: ‘,LarikBil[I,j]; End. Bahasa Basic:

DIM LarikBil(5,2) AS Integer FOR i = 0 TO 4

FOR j=0 TO 1

PRINT "LarikBil(" i "," j "): "; :READ LarikBil(i,j) PRINT LarikBil(I,j)

NEXT NEXT

DATA 0,0,1,2,2,4,3,6,4,8

Modul Praktikum Algoritma dan Dasar Pemrograman 18

E. T

UGAS

1. Buatlah program menggunakan larik untuk memasukkan data matrik berordo 3 X 2 dengan matrik berordo 2 X 3 serta menghitung dan menampilkan hasil perkaliannya

2. Buatlah program memasukkan data Nilai Teori dan Nilai Praktek sepuluh mahasiswa menggunakan larik untuk menyimpan data nama dan nilai mahasiswa tersebut, lalu menampilkan kembali data nama dan nilai yang dimasukkan, serta menampilkan hasil perhitungan Nilai Akhir (yang merupakan rata-rata Nilai Teori dengan Nilai Praktek) masing-masing mahasiswa.

(14)

MODUL

5

M

M

E

E

N

N

G

G

G

G

U

U

N

N

A

A

K

K

A

A

N

N

S

S

T

T

R

R

U

U

K

K

T

T

U

U

R

R

(

(

R

R

E

E

C

C

O

O

R

R

D

D

)

)

A. T

UJUAN

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

2. Menggunakan struktur (record) pada program.

B. P

ERALATAN

Untuk mengerjakan praktikum ini, dibutuhkan peralatan:

1. Personal komputer dengan sistem operasi Windows 95 atau yang lebih baru.

2. Perangkat lunak Borland C++, Turbo Pascal, dan QuickBasic.

C. S

KENARIO

Praktikan membuat program dengan bahasa pemrograman yang sesuai pada kasus di Latihan dengan bimbingan Instruktur. Setelah itu, praktikan mengerjakan Tugas Praktikum tanpa bimbingan Instruktur. Tugas Praktikum dikerjakan menggunakan salah satu Bahasa Pemrograman pilihan Praktikan.

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 <iostream.h> main()

{

Modul Praktikum Algoritma dan Dasar Pemrograman 20

struct{ float r; float K; double L; } Lingkaran;

cout << "Masukkan jari-jari lingkaran: "; cin >> Lingkaran.r;

Lingkaran.K=2*3.14*Lingkaran.r;

Lingkaran.L=3.14* Lingkaran.r* Lingkaran.r;

cout << "Keliling Lingkaran: " << Lingkaran.K << endl; cout << "Luas Lingkaran : " << Lingkaran.L << endl; } Bahasa Pascal: Program Lingkar; Uses WinCrt; Type Lingkar = record R : real; K : real; L : double; end; Var Lingkaran : Lingkar; Begin

Write(‘Masukkan jari-jari lingkaran: ‘); readln(Lingkaran.r);

Lingkaran.K:=2*3.14*Lingkaran.r;

Lingkaran.L:=3.14* Lingkaran.r* Lingkaran.r; Writeln(‘Keliling Lingkaran: ‘,Lingkaran.K); writeln(‘Luas Lingkaran : ‘,Lingkaran.L); End. Bahasa Basic: TYPE Lingkar R As Single K As Single L As Double END TYPE

DIM Lingkaran As Lingkar

PRINT "Masukkan jari-jari lingkaran: " INPUT Lingkaran.r

Lingkaran.K=2*3.14*Lingkaran.r

(15)

MENGGUNAKAN STRUKTUR (RECORD) 21

PRINT "Keliling Lingkaran: ", Lingkaran.K PRINT "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 nama

Lingkar3. Bahasa C: #include <iostream.h> main() { struct{ float r; float K; double L; } Lingkaran[3]; int I; for(I=0;I<3;I++) {

cout << "Jari-jari Lingkaran-" << I+1 << endl; cin >> Lingkaran[I].r;

Lingkaran[I].K=2*3.14*Lingkaran[I].r;

Lingkaran[I].L=3.14* Lingkaran[I].r* Lingkaran[I].r; }

for(I=0;I<3;I++) {

cout << "Lingkaran-" << I+1 << endl;

cout << "Keliling : " << Lingkaran[I].K << endl; cout << "Luas : " << Lingkaran[I].L << endl; } } Bahasa Pascal: Program Lingkar3; Uses WinCrt; Type Lingkar = record R : real; K : real; L : double; End; Var

Lingkaran :array[0..2] of Lingkar;

Modul Praktikum Algoritma dan Dasar Pemrograman 22

I : integer; Begin For I:=0 to 2 do begin write(‘Jari-jari Lingkaran-‘,I+1); readln(Lingkaran[I].r); Lingkaran[I].K:=2*3.14*Lingkaran[I].r;

Lingkaran[I].L:=3.14* Lingkaran[I].r* Lingkaran[I].r; End; For I:=0 to 2 do begin writeln(‘Lingkaran-‘,I+1); writeln(‘Keliling : ‘,Lingkaran[I].K); writeln(‘Luas : ‘,Lingkaran[I].L); end; End. Bahasa Basic: TYPE Lingkar R As Single K As Single L As Double END TYPE

DIM Lingkaran(3) As Lingkar DIM I AS Integer

FOR I=1 to 3

PRINT "Jari-jari lingkaran ", I INPUT Lingkaran[I].r

Lingkaran[I].K=2*3.14*Lingkaran[I].r

Lingkaran[I].L=3.14* Lingkaran[I].r* Lingkaran.r NEXT

FOR I=1 TO 2

PRINT "Keliling Lingkaran: ",I, Lingkaran[I].K PRINT "Luas Lingkaran : ",I, Lingkaran[I].L NEXT

E. T

UGAS

P

RAKTIKUM

Buatlah program menggunakan struktur yang berfungsi untuk memasukkan data NIM, Nama, dan IPK lima (5) orang mahasiswa, kemudian menampilkan kembali data tersebut beserta hasil perhitungan rata-rata IPK-nya.

(16)

MODUL

6

M

M

E

E

M

M

B

B

U

U

A

A

T

T

F

F

U

U

N

N

G

G

S

S

I

I

A. T

UJUAN

Setelah menyelesaikan materi ini, Anda diharapkan dapat:

1. Mendefinisikan dan mendeklarasikan fungsi dan prototipe fungsi. 2. Menetapkan hasil balik dan cara pengiriman variabel pada

deklarasi fungsi.

B. P

ERALATAN

Untuk mengerjakan praktikum ini, dibutuhkan peralatan:

1. Personal komputer dengan sistem operasi Windows 95 atau yang lebih baru.

2. Perangkat lunak Borland C++, Turbo Pascal, dan Turbo Basic.

C. S

KENARIO

Praktikan membuat program dengan bahasa pemrograman yang sesuai pada kasus di Latihan dengan bimbingan Instruktur. Setelah itu, praktikan mengerjakan Tugas Praktikum tanpa bimbingan Instruktur. Tugas Praktikum dikerjakan menggunakan salah satu Bahasa Pemrograman pilihan Praktikan.

D. L

ATIHAN

Berikut merupakan contoh program yang menggunakan fungsi bernama KonverSh. Fungsi ini berguna untuk mengkonversi nilai Fahrenheit menjadi nilai Celcius. Ketik kode program tersebut lalu lakukan kompilasi dan pengujian. Simpan file program dengan nama UbahSuhu. Bahasa C: #include <iostream.h> float KonverSh(float); int main() { float TempFer;

Modul Praktikum Algoritma dan Dasar Pemrograman 24

float TempCel;

cout << "Masukkan temperature dalam Fahrenheit: "; cin >> TempFer;

TempCel = KonverSh(TempFer);

cout << "\nBesar temperatur tersebut dalam Celsius : "; cout << TempCel << endl;

return 0; }

float KonverSh(float TempFer) { float TempCel; TempCel = ((TempFer - 32) * 5) / 9; return TempCel; } Bahasa Pascal: Program KonversiSuhu; Uses WinCrt; Var TempFer,TempCel : Real;

Function KonverSh(TempFer : real):real; Var TempCel : real; begin TempCel := ((TempFer - 32) * 5) / 9; result TempCel; end; //Program utama Begin

Write(‘Masukkan temperature dalam Fahrenheit: ‘); Readln(TempFer);

TempCel := KonverSh(TempFer);

Write(‘Besar temperatur tersebut dalam Celsius : ‘); Writeln(TempCel); End. Bahasa Basic: DEF FNKonverSh(TempFer) TempCel = ((TempFer - 32) * 5) / 9 FNKonverSh=TempCel END DEF

(17)

MEMBUAT FUNGSI 25

PRINT "Masukkan temperature dalam Fahrenheit: "; :INPUT TempFer TempCel = KonverSh(TempFer)

PRINT “Besar temperatur tersebut dalam Celsius : "; TempCel

E. T

UGAS

P

RAKTIKUM

1. Tulislah fungsi bernama Perimeter, yang mengasilkan nilai bertipe

long integer dan memiliki dua parameter yang keduanya bertipe short integer. Kedua parameter menyatakan panjang dan lebar

bangun segi empat. Fungsi tersebut menghasilkan perimeter segi empat (dua kali Panjang dan dua kali Lebar). Gunakan fungsi tersebut dalam program.

2. Tulislah program yang berisi fungsi untuk memasukkan dua argumen integer short dan menghasikan pembagian bilangan

pertama dengan bilangan kedua. Fungsi tidak melakukan pembagian apabila bilangan kedua nol, tetapi hasilnya –1. Gunakan fungsi tersebut dalam program.

3. Buatlah fungsi untuk menghitung hasil A pangkat N (AN). Rumus

perpangkatan tersebut adalah sebagai berikut: AN = exp ( ln (A)* N).

Gunakan fungsi tersebut pada program aplikasi untuk menghitung pangkat sejumlah bilangan.

MODUL

7

M

M

E

E

M

M

B

B

U

U

A

A

T

T

P

P

R

R

O

O

S

S

E

E

D

D

U

U

R

R

A. T

UJUAN

Setelah menyelesaikan materi ini, Anda diharapkan dapat: 1. Mendefinisikan dan mendeklarasikan prosedur.

2. Menetapkan cara pengiriman variabel pada deklarasi prosedur. 3. Melakukan pemanggilan prosedur.

B. P

ERALATAN

Untuk mengerjakan praktikum ini, dibutuhkan peralatan:

1. Personal komputer dengan sistem operasi Windows 95 atau yang lebih baru.

2. Perangkat lunak Turbo Pascal dan Turbo Basic.

C. S

KENARIO

Praktikan membuat program dengan bahasa pemrograman yang sesuai pada kasus di Latihan dengan bimbingan Instruktur. Setelah itu, praktikan mengerjakan Tugas Praktikum tanpa bimbingan Instruktur. Tugas Praktikum dikerjakan menggunakan salah satu Bahasa Pemrograman pilihan Praktikan.

D. L

ATIHAN

Berikut merupakan contoh program yang menggunakan prosedur bernama PLingkar. Prosedur ini berguna untuk menghitung keliling dan luas lingkaran. Ketik kode program tersebut lalu lakukan kompilasi dan pengujian. Simpan file program dengan nama HLingkar.

Bahasa Pascal: Program Lingkaran; Uses WinCrt; Var

(18)

MEMBUAT PROSEDUR 27

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

Write(‘Jari-Jari Roda Depan : ‘); Readln(JarD); Write(‘Jari-Jari Roda Belakang : ‘); Readln(JarB); Writeln; writeln(‘HASIL PERHITUNGAN‘); Writeln(‘RODA DEPAN: ‘); PLingkar(JarD); Writeln(‘RODA BELAKANG: ‘); PLingkar(JarB); End. Bahasa Basic: SUB PLingkar(r) K=2*3.14*r L=3.14* sqr(r) PRINT ‘Keliling : ‘; K PRINT ‘Luas : ‘; L END SUB ‘===Program utama===

PRINT ‘Jari-Jari Roda Depan : ‘; :INPUT JarD PRINT ‘Jari-Jari Roda Belakang : ‘); :INPUT JarB PRINT ‘’

PRINT ‘HASIL PERHITUNGAN‘ PRINT ‘RODA DEPAN: ‘ CALL PLingkar(JarD) PRINT ‘RODA BELAKANG: ‘ CALL PLingkar(JarB)

Modul Praktikum Algoritma dan Dasar Pemrograman 28

E. T

UGAS

P

RAKTIKUM

1. Buatlah prosedur untuk menghitung luas, volume, dan panjang rusuk balok yang memliki panjang p, lebar l, dan tinggi t. Gunakan prosedur tersebut dalam program.

2. Buatlah prosedur untuk menghitung gaji bulanan pegawai, dengan ketentuan sebagai berikut:

 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.

 Tunjangan Kesehatan sebesar Rp 100.000,00

 Gaji diterima merupakan jumlah dari Gaji Pokok, Gaji Lembur, Tunjangan Anak, dan Tunjangan Kesehatan.

Gunakan prosedur tersebut dalam program perhitungan gaji sejumlah karywawan.

(19)

MODUL

8

M

M

E

E

N

N

G

G

G

G

U

U

N

N

A

A

K

K

A

A

N

N

P

P

O

O

I

I

N

N

T

T

E

E

R

R

A. T

UJUAN

Setelah menyelesaikan materi ini, diharapkan Anda dapat: 1. Mendeklarasikan pointer.

2. Menggunakan berbagai operator pointer.

3. Membuat program yang melibatkan operasi pointer.

B. P

ERALATAN

Untuk mengerjakan praktikum ini, dibutuhkan peralatan:

1. Personal komputer dengan sistem operasi Windows 95 atau yang lebih baru.

2. Perangkat lunak Borland C++dan Turbo Pascal.

C. S

KENARIO

Praktikan membuat program dengan bahasa pemrograman yang sesuai pada kasus di Latihan dengan bimbingan Instruktur. Setelah itu, praktikan mengerjakan Tugas Praktikum tanpa bimbingan Instruktur. Tugas Praktikum dikerjakan menggunakan salah satu Bahasa Pemrograman pilihan Praktikan.

D. L

ATIHAN

Latihan

4.a

Berikut ini adalah contoh program C yang mendemonstrasikan alamat operator dan alamat variabel lokal. Ketik kode program tersebut lalu lakukan kompilasi.

#include <iostream.h> int main()

{

unsigned short shortVar=5; unsigned long longVar=65535;

Modul Praktikum Algoritma dan Dasar Pemrograman 30

long sVar = -65535;

cout << "shortVar:\t" << shortVar; cout << " Alamat variabel shortVar:\t"; cout << &shortVar _<< "\n";

cout << "longVar:\t" << longVar; cout << " Alamat variabel longVar:\t" ; cout << &longVar _<< "\n";

cout << "sVar:\t" << sVar;

cout << " Alamat variable sVar:\t" ; cout << &sVar _<< "\n";

return 0; }

Latihan 4.b

Program C berikut merupakan contoh program yang menggunakan pointer. Ketik kode program tersebut lalu lakukan kompilasi.

Bahasa C:

#include <iostream.h>

typedef unsigned short int USHORT; int main()

{

USHORT myAge; // variable USHORT * pAge = 0; // pointer myAge = 5;

cout << "myAge: " << myAge << "\n";

pAge = &myAge; // menetapkan alamat myAge ke pAge cout << "*pAge: " << *pAge << "\n\n";

cout << "*pAge = 7\n";

*pAge = 7; // set myAge menjadi 7 cout << "*pAge: " << *pAge << "\n"; cout << "myAge: " << myAge << "\n\n"; cout << "myAge = 9\n";

myAge = 9;

cout << "myAge: " << myAge << "\n"; cout << "*pAge: " << *pAge << "\n"; return 0;

(20)

MENGGUNAKAN POINTER 31

Latihan 4.c

Program Pascal berikut merupakan contoh program untuk mengalokasian dan menghapus pointer. Ketik kode program tersebut lalu 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 Dasar Pemrograman 32

E. T

UGAS

P

RAKTIKUM

1. Jika Anda memiliki variabel dengan nama Usia, tuliskan kode program menggunakan pointer untuk memanipulasi Usia.

Tetapkan nilai 25 pada variabel Usia yang Anda deklarasikan, menggunakan pointer.

2. Buatlah program kecil yang mendeklarasikan sebuah integer dan pointer untuk integer tersebut. Tempatkan alamat integer pada pointer. Gunakan pointer untuk mengeset nilai di variabel integer. 3. Buatlah program melibatkan pointer untuk menghitung total nilai

dari nilai-nilai yang dimasukkan pemakai secara dinamis (tidak dibatasi jumlah datanya).

(21)

MODUL

9

P

P

E

E

M

M

R

R

O

O

G

G

R

R

A

A

M

M

A

A

N

N

B

B

E

E

R

R

O

O

R

R

I

I

E

E

N

N

T

T

A

A

S

S

I

I

O

O

B

B

J

J

E

E

K

K

A. T

UJUAN

Setelah menyelesaikan materi ini, diharapkan Anda dapat:

1. Mendeklarasikan kelas, objek, konstruktor, destructor dalam pemrograman.

2. Menerapkan teknik enkapsulasi, inheritance, dan polimorphisme. 3. Membuat program yang menerapkan teknik pemrograman berorientasi objek.

B. P

ERALATAN

Untuk mengerjakan praktikum ini, dibutuhkan peralatan:

1. Personal komputer dengan sistem operasi Windows 95 atau yang lebih baru.

2. Perangkat lunak Turbo C++

C. S

KENARIO

Praktikan membuat program dengan bahasa pemrograman yang sesuai pada kasus di Latihan dengan bimbingan Instruktur. Setelah itu, praktikan mengerjakan Tugas Praktikum tanpa bimbingan Instruktur.

D. L

ATIHAN

Latihan

9

.a

Berikut ini adalah contoh program C++ yang menerapkan teknik pembuatan kelas. Ketik kode program tersebut lalu lakukan kompilasi #include<iostream.h> #include<string.h> class Mahasiswa { int nomorinduk; char nama[20];

Modul Praktikum Algoritma dan Dasar Pemrograman 34

int nilai; public: Mahasiswa();

void setMahasiswa(int nim, char nm[], int nl); int getnomorinduk(); char *getnama(); int getnilai(); ~Mahasiswa(); }; int main() { Mahasiswa mhs; mhs.setMahasiswa(1015,"Budiono",93); cout<<"Data Siswa: "<<endl

<<"Nomor = "<<mhs.getnomorinduk()<<endl <<"Nama = "<<mhs.getnama()<<endl <<"nilai = "<<mhs.getnilai()<<endl; return(0); } Mahasiswa::Mahasiswa() { nomorinduk=0; strcpy(nama,""); nilai=0; }

void Mahasiswa::setMahasiswa(int nim, char nm[], int nl) { nomorinduk = nim; strcpy(nama, nm); nilai = nl; } int Mahasiswa::getnomorinduk() { return(nomorinduk); } char *Mahasiswa::getnama() { return(nama); } int Mahasiswa::getnilai()

(22)

DASAR PEMROGRAMAN BERORIENTASI OBJEK 35 { return(nilai); } Mahasiswa::~Mahasiswa() {

cout<<"Kelas siswa dengan nomor= "<<nomorinduk <<" Nama ="<<nama

<<" Nilai="<<nilai<<" dilenyapkan."<<endl; }

Latihan 9.b

Program C berikut merupakan contoh program C++ yang menerapkan teknik pewarisan. Ketik kode program tersebut lalu lakukan kompilasi. #include<iostream.h> class Kendaraan { public: void Mengangkut(); };

class Otomotif : public Kendaraan {

public:

void BerjalanSendiri(); };

class MobilBalap : public Otomotif { public: void MelajuKencang(); }; int main() { Kendaraan knd; Otomotif oto; MobilBalap mb;

cout<<endl<<"Kemampuan kendaraan: "<<endl; knd.Mengangkut();

cout<<endl<<"Kemampuan kendaraan otomotif: "<<endl; knd.Mengangkut();

oto.BerjalanSendiri();

cout<<endl<<"Kemampuan mobil balap: "<<endl; knd.Mengangkut();

oto.BerjalanSendiri(); mb.MelajuKencang();

Modul Praktikum Algoritma dan Dasar Pemrograman 36

return(0); }

void Kendaraan::Mengangkut() {

cout<<"Mengangkut penumpang untuk dipindahkan"<<endl; }

void Otomotif::BerjalanSendiri() {

cout<<"Berpindah tempat tanpa bantuan orang atau binatang"<<endl;

}

void MobilBalap::MelajuKencang() {

cout<<"Malaju cepat sesuai keinginan pengemudinya"<<endl; }

Latihan 9.c

Program C berikut merupakan contoh program C++ yang menerapkan teknik polimorfisme. Ketik kode program tersebut lalu lakukan kompilasi.

#include<iostream.h> class HewanDarat {

public:

void virtual BergerakDiDarat() {

cout<<"Berpindah tempat di atas tanah daratan"<<endl; }

};

class HewanAir {

public:

void virtual Berenang() {

cout<<"Bergerak bebas di air sambil bernafas"<<endl; }

};

(23)

DASAR PEMROGRAMAN BERORIENTASI OBJEK 37

{ public:

void BergerakDiDarat() {

cout<<"Berjalan-jalan di daratan kering atau berlumpur"<<endl;

}

void Berenang() {

cout<<"Bergerak di di dalam air dalam waktu lama"<<endl; } }; int main() { HewanDarat *phd; phd = new HewanDarat;

cout<<endl<<"Cara gerak hewan darat : "<<endl; phd->BergerakDiDarat();

delete phd;

phd = new HewanAmpibi;

cout<<endl<<"Cara gerak hewan ampibi: "<<endl; phd->BergerakDiDarat();

HewanAir *pha; pha= new HewanAir;

cout<<endl<<"Cara gerak hewan air : "<<endl; pha->Berenang();

delete pha;

pha = new HewanAmpibi;

cout<<endl<<"Cara gerak ampibi : "<<endl; pha->Berenang();

return(0); }

E. T

UGAS

P

RAKTIKUM

Buatlah untuk menampilkan komponen dan kemampuan Telepon, HP, dan PDA-Phone menggunakakan teknik OOP.

D

D

A

A

F

F

T

T

A

A

R

R

P

P

U

U

S

S

T

T

A

A

K

K

A

A

1. ITLESL. Programming and Problem Solving Through ‘C’ Language. Delhi: MacMillan India Ltd.

2. Jogiyanto H.M. (1989). Teori dan Aplikasi Program Komputer Bahasa Pascal. Yogyakarta: Andi Offset.

3. Kristanto, A. Algoritma dan Pemrograman dengan C++. Yogyakarta: Graha Ilmu.

4. Pamungkas. (1995). Tuntunan Praktis Pemrograman TURBO BASIC. Jakarta: Elexmedia Komputindo.

5. Soesianto, Eko Nugroho, & P. Insap Satosa (1985). Pemrograman BASIC. Yogyakarta: Andi OFFSET.

6. Sutedjo, B. dan Michael AN. (1997). Algoritma dan Teknik Pemrograman: Konsep, Implementasi dan Aplikasi. Yogyakarta: Penerbit Andi.

7. Wagito. (2003). Pemrograman Berorientasi Objek: Teori dan Aplikasi dengan C++ Berbasis Windows dan Linux. Yogyakarta: GavaMedia.

Tentang Penyusun

Carwoto adalah seorang yang berkecimpung di bidang pendi-dikan. Alumni Teknik Elektro Fakultas Teknik UNDIP ini ber-pengalaman mengajar sebagai dosen di program studi Teknik Elektronika di Universitas Wahid Hasyim Semarang dan program Studi Teknik Informatika Sekolah Tinggi Manajemen dan Informatika (STMIK) ProVisi di Semarang.

Saat ini bekerja sebagai konsultan bidang pendidikan Education Development Center (EDC), Inc. sebagai ICT Coordinator projek DBE 2 di provinsi Jawa Tengah. Dalam pekerjaannya saat ini, kegiatannya adalah melatih dan mendampingi sejumlah guru dan dosen dalam pengembangan pembelajaran berbasis TIK, pembelajaran di kelas dengan satu komputer, pengembangan professional guru dan perkuliahan jarak jauh (PJJ).

Terkait bidang profesinya sebagai fasilitator atau pelatih, penulis adalah Master Trainer (MT) Intel Teach GS Course, Fasilitator Online Course Design (OCD) Course di EdTech Leader’s Online (ETLO), Instruktur di Cisco Networking Academy, serta Asisten Asesor di LSP Telematika.

Referensi

Dokumen terkait

Sigma , perusahaan dapat mengetahui jenis cacat dan faktor penyebabnya serta tindakan yang dilakukan untuk mengurangi jumlah cacat sehingga dapat meningkatan efisiensi

Kata kualitas layanan mengandung banyak definisi dan makna, tetapi dari beberapa definisi yang dapat kita jumpai memiliki beberapa kesamaan walaupun hanya cara penyampaiannya

Panjang antena dipole tunggal adalah ½ λ pada frekuensi operasi yang mempunyai titik feeder di tengah, impedansi input yang sesuai (73Ω), dan mempunyai pola radiasi berbentuk

Buy on Weakness : Harga berpotensi menguat namun diperkirakan akan terkoreksi untuk sementara Trading Buy : Harga diperkirakan bergerak fluktuatif dengan

Oleh karena itu, dalam menetapkan biaya pendidikan perlu di dukung dengan data dan informasi mengenai siapa yang harus dididik, berapa jumlah yang harus dididik, tujuan

Sejalan dengan usaha mewujudkan prinsip negara hukum, maka telah disahkan Undang-Undang Nomor 18 Tahun 2003 tentang Advokat (UU Advokat), yang memberikan

a) Memperjelas ketentuan dalam RUU Pemda terkait pembagian urusan, antara Pemerintah, Pemerintah Provinsi dan Pemerintah Kabupaten/Kota (yang didalamnya mencakup pelimpahan

Sasaran yang ingin dicapai adalah terbentuknya zonasi dalam kawasan Taman Nasional Gunung Merbabu yang dapat menjadi salah satu pedoman pengelolaan dan