Anda di halaman 1dari 5

BAB I

ALGORITMA DAN PEMROGRAMAN BAHASA C

A. Konsep Dasar Algoritma dan Pemrograman

Kata algoritma, berasal dari nama matematikawan abad ke-9 Muhammad ibn
Mūsā al-Khwārizm, yang jika dilatinkan disebut sebagai Algoritmi. Al-Khawarizmi
adalah matematikawan yang paling banyak dibaca di Eropa pada akhir Abad
Pertengahan, melalui bukunya Aljabar. Dalam bahasa Latin akhir abad
pertengahan disebut ‘algorismus’, bahasa Inggris disebut ‘algorism’, yang berarti
“sistem bilangan desimal”. Pada abad ke-15, di bawah pengaruh kata Yunani
(arithmos) berarti “bilangan”, kata Latin diubah menjadi algoritma, dan istilah
bahasa Inggris yang sesuai ‘algoritma’ pertama kali dibuktikan pada abad ke-17.
Sampai abad modern diperkenalkan pada abad ke-19.

Algoritma adalah setiap prosedur komputasi yang terdefinisi dengan baik yang
membutuhkan beberapa nilai, atau kumpulan nilai, sebagai input dan
menghasilkan beberapa nilai, atau kumpulan nilai, sebagai keluaran. Dengan
demikian, algoritma adalah urutan langkah komputasi yang mengubah masukan
ke dalam keluaran. Algoritma sebagai alat untuk memecahkan masalah komputasi
yang ditentukan dengan baik dalam hubungan masukan/keluaran. Algoritma
menggambarkan proses komputasi tertentu selama untuk mencapai hubungan
input/output tersebut.

B. Notasi Algoritmik

Terdapat tiga cara dalam menuliskan algoritma yaitu secara deskriptif, pseudo
code, dan flowchart.

1. Teks Deskriptif
Contoh langkah-langkah Algoritma dalam bentuk deskriptif:

Tulis nilai A dan B


Nilai C merupakan hasil penjumlahan A dan B
Tampilkan hasil C

Pemrograman Komputer|1
2. Pseudo Code (Kode Semu)
Tidak ada notasi standar untuk pseudocode, tetapi beberapa yang paling dikenal
adalah:
 INPUT – menunjukkan pengguna akan memasukkan sesuatu
 OUTPUT – menunjukkan bahwa output akan muncul di layar
 WHILE – loop (iterasi yang memiliki kondisi di awal)
 FOR – loop penghitungan (iterasi)
 REPEAT – UNTIL – loop (iterasi) yang memiliki kondisi di akhir
 IF – THEN – ELSE – keputusan (seleksi) di mana pilihan dibuat setiap instruksi
yang terjadi di dalam seleksi atau iterasi biasanya menjorok

Contoh langkah-langkah Algoritma dalam bentuk pseudo code:

Start
Int A, B, C;
A←4
B←5
C=A+B
Print C
End

3. Flowchart (Diagram Alir)


Flowchart merupakan teknik untuk mengambarkan sejumlah prosedur atau
tahapan proses menyeluruh dari suatu program atau bisa juga sebagai suatu tool
yang digunakan untuk menganalisa sistem. Flowchart menyediakan blueprint dari
logika proses untuk suatu permasalahan serta untuk memudahkan pemrogram
mempersiapkan kode program dari satu tahapan ke tahapan lainnya dalam proses
pengembangan program atau sistem.

Pemrograman Komputer|2
Gambar 1.1. Algoritma menggunakan Flowchart

Flowchart dibagi kedalam dua jenis yaitu flowchart untuk program dan flowchart
untuk sistem.

Tabel 1.1. Simbol flowchart untuk program


Bentuk/ Simbol Nama Penjelasan

Terminal Menunjukkan awal dan akhir dari


(Terminator) program atau subproses.

Mempresentasikan sekumpulan
Proses
operasi yang mengubah nilai, bentuk,
(Processing)
atau lokasi data.
Masukkan/ Menunjukkan proses masukkan dan
Keluaran keluaran data. Misalnya input teks
(Input/ Output) dan menampilkannya.
Menampilkan operasi bersyarat yang
Pilihan/ Keputusan
menentukan salah satu dari dua jalur
(Decision)
yang akan diambil program.
Subroutines
Proses yang telah ditentukan
(Predefined
sebelumnya ditempat lain.
Process)
Komentar atau
Menunjukkan informasi tambahan
anotasi
tentang suatu langkah dalam
(Comment/
program.
Annotation)
Penghubung Pasangan konektor berlabel
(Connector) menggantikan garis panjang atau

Pemrograman Komputer|3
membingungkan dalam diagram alir
(flowchart).

Penghubung
Konektor berlabel yang digunakan
Halaman
untuk target pada halaman lain.
(Page connector)

Garis alir
(Flowline/ flow Menunjukkan urutan proses operasi
direction)

Tabel 1.2. Simbol flowchart untuk sistem


Bentuk/ Simbol Nama Penjelasan

Dokumen Menunjukkan sumber dokument atau


(Document) daftar laporan.

Penyimpanan Menunjukkan media penyimpanan


Offline offline baik disk magnetik maupun pita
(Offline Sorage) magnetik.

Penyimpanan
Menunjukkan media penyimpanan
(Random Acces
disk magnetik.
Drum Disk)

Penyimpanan Pita
Menunjukkan media penyimpanan
Magnetik
pita magnetik.
(Magnetic Tape)

Layar Menunjukkan keluaran berupa layar


(Display) CRT

Menunjukkan bahwa informasi yang


Input Manual ada pada komputer membutuhkan
(Online Keyboard) perangkat masukkan seperti
keyboard.

Menunjukkan operasi yang dilakukan


Operasi
oleh peralatan off-line yang tidak
(Auxiliary
berada di bawah kendali unit
Operation)
pemrosesan pusat

Jalur Komunikasi Menunjukkan proses transmisi data


(Communication atau infomrasi secara otomatis dari
Link) satu lokasi ke lokasi lainnya.

Pemrograman Komputer|4
C. Sejarah Singkat Bahasa C
Bahasa C dikembangkan di Bell Labs oleh Dennis Ritchie antara tahun 1972 dan
1973 untuk membangun utilitas yang berjalan di system operasi Unix. Selama
tahun 1980-an, secara bertahap bahasa C mendapatkan popularitas dan menjadi
salah satu bahasa pemrograman yang paling banyak digunakan untuk hampir
semua arsitektur komputer modern dan sistem operasi.

Bahasa C merupakan bahasa prosedural imperatif, yang mendukung


pemrograman terstruktur, lingkup variabel leksikal dan rekursi, dengan sistem tipe
statis yang dirancang untuk dikompilasi dalam menyediakan akses tingkat rendah
ke memori dan konstruksi bahasa yang memetakan secara efisien ke instruksi
mesin, semuanya dengan dukungan runtime minimal. Meskipun memiliki
kemampuan tingkat rendah, bahasa C dirancang untuk mendorong pemrograman
lintas platform. Program C yang memenuhi standar ditulis dengan
mempertimbangkan portabilitas dapat dikompilasi untuk berbagai macam platform
komputer dan sistem operasi dengan sedikit perubahan pada kode sumbernya.

Banyak bahasa telah meminjam secara langsung atau tidak langsung struktur
kontrol dan fitur dasar lainnya dari C, termasuk C++, C#, C shell Unix, D, Go, Java,
JavaScript, Julia, Limbo, LPC, Objective-C, Perl, PHP, Python, Ruby, Rust, Swift,
Verilog dan SystemVerilog (bahasa deskripsi perangkat keras.

D. LATIHAN 1
a. Buatlah algoritma proses membuat martabak menggunakan kalimat
deskriptif!
b. Buatlah algoritma menghitung bilangan ganjil genap menggunakan pseudo
code!
c. Buatlah algoritma menghitung bilangan prima menggunakan flowchart!

Pemrograman Komputer|5

Anda mungkin juga menyukai