Laporan praktikum modul i

27
LAPORAN PRAKTIKUM ALGORITMA PEMROGRAMAN & STRUKTUR DATA MODUL I DISUSUN OLEH NAMA : DEVI KELAS : TI2012A JENJANG : SARJANA LABORATORIUM KOMPUTER

Transcript of Laporan praktikum modul i

Page 1: Laporan praktikum modul i

LAPORAN PRAKTIKUMALGORITMA PEMROGRAMAN & STRUKTUR DATA

MODUL I

DISUSUN OLEHNAMA : DEVIKELAS : TI2012AJENJANG : SARJANA

LABORATORIUM KOMPUTERFAKULTAS ILMU KOMPUTERUNIVERSITAS KUNINGAN

2012

Page 2: Laporan praktikum modul i

I. PEMBAHASAN

A. Bahasa C dan C++

Bahasa C merupakanperkembangan dari bahasa BCPL yang

dikembangkan oleh Martin Richards pada tahun 1967. Selanjutnya bahasa

ini merupakan ide kepada Ken Thomson yang kemudian mengembangkan

bahasa yang disebut bahasa B pada tahun 1970. Perkembangan selanjutnya

dari bahasa B adalah bahasa Coleh Denis Ricthie sekitar tahun1970-an di

Bell Telephone Laboratories Inc. (sekarang adalah AT & T Bell

Laboratories). Bahasa C pertama kali digunakan di computer Digital

Equipment Corporation PDP- 11 yangmenggunakan system operasi

UNIX.Hingga saat inipenggunaan bahasa Ctelah merata di seluruh

dunia.Hampir semua perguruan tinggi di dunia menjadikan bahasa C

sebagai salah satu mata kuliah wajib.Selain itu, banyak bahasa

pemrograman popular seperti PHP dan Java menggunakan sintaks dasar

mirip bahasa C. Oleh karena itu, kita juga perlu mempelajarinya.

Bahasa C++ diciptakan oleh Bjarne Stroustrup di AT&T Bell

Laboratories awal tahun 1980-an berdasarkan C ANSI (American National

Standard Institute). Pertama kali prototype C++ muncul sebagai C yang

dipercanggih dengan fasilitas kelas.Bahasa tersebut disebut C dengan kelas

(C with class). Selama tahun 1983-1984, bahasa C dengan kelas

disempurnakan dengan menambahkan fasilitas pembebanlebihan operator

dan fungsi yang kemudian melahirkan apa yang disebut C++. Simbol ++

merupakan operator C untuk operasi penaikan, simbol itu muncul untuk

menunjukkan bahwa bahasa baru ini merupakan versi yang lebih canggih

dari C.

B. Struktur Bahasa C++

Program C maupun C++ secara umum tersusun dari beberapa

bagian utama, yaitu :

a. Komentar

Page 3: Laporan praktikum modul i

Komentar digunakan untuk memberi informasi/dokumentasi

tentang program atau code yang ada. Dalam C atau C++ setiap tulisan

yang diapit oleh simbol /* … */ untuk multi baris atau setiap baris yang

dimulai dengan simbol // dianggap komentar dan tidak akan

dikompilasi oleh compiler. Contoh komentar :

Komentar Multibaris

Komentar 1 baris

b. Preprocessor Directive

Preprocessor directive disebut juga pengarah compiler karena

fungsinya untuk mengatur proses kompilasi.

#includemerupakan satu jenis pengarah preprocessor yang

digunakan untuk membaca file yang dinamakan file judul (header file).

iostream, conio.h, stdio.h, windows.h, math.h, dan string.h

merupakan file header yang merupakan standard library dari C++.

Setiap file header berhubungan dengan perintah masukan (input),

perintah keluaran (output), dan fungsi-fungsi yang digunakan dalam

suatu program.

c. Fungsi utama dan fungsi tambahan

Fungsi utama (main) harus ada dalam setiap program karena

fungsi utama merupakan fungsi yang akan dieksekusi pertama kali.

/* ini adalah contoh komentar multibaris */

// ini adalah contoh // komentar 1 baris

Page 4: Laporan praktikum modul i

Lebih lanjut tentang fungsi akan dipelajari pada bab fungsi dipertemuan

selanjutnya.

d. Bagian definisi fungsi

Diawali dengan tanda “{” (kurawal buka) sebagai tanda awal

fungsi dan tanda “}” (kurawal tutup) sebagai tanda berakhirnya suatu

fungsi, baik fungsi utama maupun fungsi tambahan. Definisi fungsi

berisi sekumpulan code yang nanti akan dieksekusi bila fungsi tersebut

dipanggil. Aturan umum penulisan bahasa C++ adalah sebagai berikut.

o case-sensitive, yaitu bahasa C++ membedakan penulisan huruf

besar dan huruf kecil, contoh A ≠ a;

o setiap statementt diakhiri dengan tanda “;” (titik koma);

o tidak boleh ada variabel ganda, maupun konflik dengan reserved

keywords (kata-kata bawaan dari IDE), contoh : and, and_eq, asm,

auto, bitand, bitor, bool, break, case, catch, char, class, compl,

const, const_cast, continue, default, delete, do, double,

dynamic_cast, else, enum, explicit, export, extern, false, float,

for, friend, goto, if, inline, int, long, mutable, namespace, new,

not, not_eq, operator, or, or_eq, private, protected, public,

register, return, short, signed, sizeof, static, static_cast, struct,

switch, template, this, throw, true, try, typedef, typeid,

typename, union, unsigned, using, virtual, void, volatile,

wchar_t, while, xor, xor_eq;

o pada subroutine atau fungsi harus diapit oleh kurung kurawal

({……}); dan

o setiap variabel yang digunakan wajib dideklarasikan terlebih

dahulu.

e. Bagian deklarasi

Bagian yang akan mendeklarasikan variabel, konstanta, fungsi, dan

lain-lain. Lebih lanjut tentang materi ini akan dibahas pada bab ini dan

bab-bab selanjutnya.

f. Semicolon

Page 5: Laporan praktikum modul i

Tanda semicolon “ ; “ digunakan untuk mengakhiri sebuah

pernyataan. Setiap pernyataan harus diakhiri dengan sebuah tanda

semicolon.

C. Identifier dalam bahasa C/C++

Identifier atau nama pengenal adalah suatu nama yang ditentukan

sendiri oleh coder untuk menyatakan variable, konstanta, fungsi, atau

label. Nama-nama pengenal bebas ditentukan sendiri, namun harus

mengikuti ketentuan-ketentua sebagai berikut:

1. Panjang kata identifier dapat berupa satu karakter saja atau lebih

(maksimal 32 karakter)

2. Karakter pertama harus berupa huruf atau karakter garis bawah ( _ ),

contoh:

halo123_123halo

3. Karakter-karakter khusus lainnya dan blank kecuali garis bawah tidak

dapat digunakan. Berikut adalah identifier yang salah:

rata-rata

penting!

ada spasi

4. Huruf besar dan huruf kecil berbeda (case-sensitive). Contoh nama

pengenal celcius adalah berbeda dengan nama pengenal Celcius.

5. Tidak boleh sama dengan keyword.

Disarankan agar pemberian nama pengenal menggunakan kata yang berarti

dan mudah dibaca. Misalnya identifier gaji_pegawai yang menyatakan gaji

pegawai lebih baik dari pada g ataupun gajipegawai

D. Kata Kunci (keyword) bahasa C/C++

a. Keyword

Keyword atau dalam bahasa Indonesia disebut kata kunci merupakan

kata-kata yang telah digunakan oleh kompiler dan coder (orang yang

menulis source code) tidak boleh menggunakannya lagi sebagai nama

Page 6: Laporan praktikum modul i

pengenal (identifier). Bahasa C++ memiliki 32 keyword yang terdapat

juga dalam bahasa C dan memiliki 30 keyword yang hanya ada di

bahasa C++ .

32 keyword dalam C++ dan C adalah:

auto const double float int short struct unsigned

break continue else for long signed switch void

case default enum goto register sizeof typedef volatile

char do extern if return static union while

Sedangkan 30 keyword yang hanya ada di bahasa C++ adalah:

asm dynamic_cast namespace reinterpret_cast try

bool explicit new static_cast typeid

catch false operator template typename

class friend private this using

const_cast inline public throw virtual

delete mutable protected true wchar_t

b. Variabel

Variabel merupakan suatu pengenal atau identifier yang

digunakan untuk memberikan suatu nilai tertentu didalam

pemrograman. Nilai suatu variable bersifat dinamis yang berarti dapat

berubah-ubah, lain hal dengan kontanta yang nilai bersifat tetap /

mutlak. Aturan dalam pendeklarasian variable :

1. Variabel dapat dideklarasi dengan menggunakan gabungan huruf dan

angka dengan syarat karakter pertama haruslah huruf.

2. Variabel yang dideklarasi tidak boleh menggunakan spasi, apabila

ingin menggunakan spasi lebih baik gunakan garis bawah(underscore).

3. Variabel yang dideklarasi tidak boleh menggunakan simbol-simbol

khusus seperti : $, &, ?, <, dan sejenisnya.

Page 7: Laporan praktikum modul i

4. Panjang variable bebas, tetepi yang bisa dikenali hanyalah 31

karakter pertama. Apabila nama variable panjang sebaiknya disingkat,

misalnya Nomor induk pegawai disingkat NIP.

c. Tipe Data

Tipe data merupakan format yang digunakan untuk

menginisialisasi sebuah variabel, dimana variabel tersebut mempunyai

ukuran, size maupun bertipe string, character ataupun number. Berikut

beberapa tipe data dasar dalam C++ :

Karakter Khusus

Karakter khusus merupakan karakter yang mewakili suatu

perintah khusus dalam pemrograman, karakter khusus tersebut biasa

disebut dengan escape. Escape sendiri memberikan intruksi pada

praprosesor tanpa melalui include file header. Berikut karakter-karakter

khusus dalam C++.

Page 8: Laporan praktikum modul i

B. Praktikum

1. Praktikum 1 : Penggunaan Prepocessor Directive

–Menulis source kode Program C++

– Menyimpan File

Menyimpan file dengan cara pilih menu file lalu sub menu save atau

save as. Maka akan muncul seperti di bawah ini.

–Melakukan Kompilasi

Pilih menu project, lalu pilih submenu compile atau denngan menekan

ALTF9. Maka akan muncul seperti gambar di bawah ini.

– Menjalankan Program

Page 9: Laporan praktikum modul i

Menjalankan program dengan cara pilih menu Debug, lalu submenu

Run atau dengan cara menekan CTRL+F9. Maka akan muncul gambar

seperti di bawah ini.

2. Praktikum 2 : Deklarasi Variabel

–Menulis source kode Program C++

–Menyimpan File

–Melakukan Kompilasi

–Menjalankan Program

Page 10: Laporan praktikum modul i

3. Praktikum : Penggunaan Tipe Data dan Komentar

–Menulis source kode Program C++

–Menyimpan File

–Melakukan Kompilasi

–Menjalankan Program

Page 11: Laporan praktikum modul i

Pembahasan :

Pada hasil program tersebut total biayanya salah karena hasilnya

120000.000000 dan seharusnya hasilnya 120000, agar menjadi hasil yang

benar perlu ditambahakan 0.f pada fprmat data yang bertipe data float (%f).

Sehingga source kodennya sebagai berikut :

Dan hasilnya sebagai berikut :

4. Praktikum 4 : Penggunaan Format Data

–Menulis source kode Program C++

–Menyimpan File

Page 12: Laporan praktikum modul i

–Melakukan Kompilasi

–Menjalankan Program

Pembahasan :

Dari hasil diatas terlihat bahwa tanda titik dua tidak sejajar, agar titik dua

tersebut sejajar maka kita ditambahkan \t (karakter tab horizontal) pada source

kode.Maka source kodenya adalah sebagai berikut :

Dan hasilnya sebagai berikut :

Page 13: Laporan praktikum modul i
Page 14: Laporan praktikum modul i

II. TUGAS

1. Cari dari sumber lain jenis-jenis prepocessor directive yang lain. Tuliskan

definisi dan fungsinya. Sebutkan referensi atau sumber dari hasil pencarian

tersebut.

2. Berikut ini adalah sintaks program dari bahasa C.

a. Analisa Program diatas, perbaiki kesalahan-kesalahannya

b. Ubah preprocessor directive tersebut menggunakan header iostream.h

c. Tambahkan komentar-komentar untuk memperjelas program tersebut

3. Buat kesimpulan dari hasil praktikum dan tugas praktikum

Jawab :

1. Directive #include

Directive #include digunakan untuk memasukkan file header ke

dalam kode program yang kita tuliskan . hal ini selalu kita lakukan pada

setiap program C++. adapun caranya adalah dengan menuliskan file header

yang akan dimasukkan setelah directive #include .

Directive #define

Kita dapat mendefinisikan sebuah makro identifier ke dalam

sebuah program melalui directive #define .prinsip dasar dari cara kerja

#define ini adalah menggantikan makro identifier tersebut dengan sebuah

nilai yang kita defenisikan di belakangnya .

Directive #undef

Directive #undef berguna untuk menghapus makro yang telah

didefinisikan sebelumnya .ini berguna jika kita ingin melakukan perubahan

#include<stdio.h>void main () /fungsi utama{printf (“Praktikum Algoritma Pemrograman\n”);printf (“Laboratorium Fakultas Komputer\n”);cout (“Universitas Kuningan”);}

Page 15: Laporan praktikum modul i

nilai dari makro tersebut . directive ini merupakan kebalikan dari directive

#define .

Directive #error

Directive #error digunakan untuk menghentikan proses kompilasi

dan selanjutnya menampilkan pesan kesalahan .biasanya penggunaan

directive ini berhubungan dengan directive #if .

Directive #if

Dalam c++ , kita dapat melakukan suatu pemilihan dengan menggunakan

preprocessor directive , diantaranya dengan menggunakan directive #if .

setiap bentuk pemilihan yang menggunakan prerpocessor directive selalu

diakhiri dengan directive #endif . bentuk umum penggunaannya adalah

sama seperti pada saat kita melakukan pemilihan dengan struktur if ,

namun disini kondisi yang akan diperiksa tidak harus dalam tanda kurung ,

sedangkan dalam struktur if hal tersebut merupakan suatu keharusan .

Sumber : http://flowlifestyle.wordpress.com

2. Membuat program

a. Menulis source kode Program C++

Kompile dan jalankan, maka akan muncul gambar seperti dibawah ini:

Page 16: Laporan praktikum modul i

Pembahasan :

Berdasarkan gambar di atas terjadi kesalahan, yaitu menggunakan

preprocessor directive include<stdio.h> tetapi menggunakan objek cout.

Agar program tersebut menjadi benar maka kita ubah objek cout menjadi

printf. Source kodenya adalah sebagai berikut :

Kompile

Menjalankan program

b. Menulis source kode Program C++

Page 17: Laporan praktikum modul i

Kompile

Jalankan

c. Menulis Source Kode Program C++

Kompile

Page 18: Laporan praktikum modul i

Jalankan Program

3. Dari Praktikum dan Tugas Praktiku dapat disimpulkan bahwa bahasa C++

membedakan penulisan huruf besar dan huruf kecil, contoh A ≠ a, setiap

statement diakhiri dengan tanda ” ; “.Pada subroutineatau fungsi harus

diapit oleh kurung kurawal ({……}).Setiap variabel yang digunakan wajib

dideklarasikan terlebih dahulu.

Page 19: Laporan praktikum modul i

III.KESIMPULAN

– Akar dari bahasa C adalah bahasa BCPL yang dikembangkan oleh Martin

Richards pada tahun 1967.

– Bahasa C pertama kali digunakan pada komputer Digital Equipment

Corporation PDP-11 yang menggunakan sistem operasi UNIX.

– C adalah bahasa yang standar, artinya suatu program yang ditulis dengan

versi bahasa C tertentu akan dapat dikompilasi dengan versi bahasa C yang

lain dengan sedikit modifikasi. Standar bahasa C yang asli adalah standar

dari UNIX.

– Interpreter adalah suatu jenis penerjemah yang menerjemahkan baris per

baris intsruksi untuk setiap saat, sedangkan kompiler merupakan jenis

penerjemah cara kerjanya adalah menerjemahkan seluruh instruksi dalam

program sekaligus.

– Program C pada hakekatnya tersusun atas sejumlah blok fungsi.

– Fungsi main() merupakan fungsi istimewa yang harus ada pada program,

sebab fungsi inilah yang menjadi titik awal dan titik akhir eksekusi

program.

– Fungsi printf() merupakan fungsi yang umum dipakai untuk menampilkan

suatu keluaran pada layar peraga.

– #includemerupakan salah satu jenis pengarah praprosesor (preprocessor

directive) yang dipakai untuk membaca file yang di antaranya berisi

deklarasi fungsi dan definisi konstanta.

– Untuk keperluan dokumentasi, di dalam program disertakan komentar

yang ditulis dengan diawali dengan tanda /* dan diakhiri dengan tanda */.

Dari Praktikum dan Tugas dapat disimpulkan pula kelebihan dan

kekurangan dari bahasa C, yaitu :

Kelebihan

1. Merupakan Compiler

2. Tersedia hampir disemua jenis komputer

Page 20: Laporan praktikum modul i

3. Banyak fasilitas untuk memanipulasi operator dan fungsi

4. Struktur penulisan bahasa yang terstruktur.

5. Bahasa tingkat tinggi yang mempunyai kemampuan seperti bahasa tingkat

rendah (seperti dapat memanipulasi data dalam bentuk bit).

6. Dibandingkan dengan bahasa tingkat tinggi lainya bahasa C++ mempunyai

kecepatan eksekusi yang cepat.

7. Mendukung bahasa pemrograman berorientasi obyek

8. Kode yang ditulis menggunakan C++ bersifat reusable

Kekurangan

1. Karena bahasa ini sangat fleksibel maka bagi pemula bahasa C++ akan

sangatmembingungkan. Untuk itu disarankan para pemula tidak terburu-

buru dalammempelajari bahasa C++ ini.

2. Bahasa C++ masih tergantung pada operating-sistemnya. Hal ini yang

kemudianmemicu terciptanya bahasa JAVA, bahasa multiplatform.