Disini saya akan berbagi sedikit ilmu tentang laporan praktikum algoritma dan struktur data. Laporan ini berisi tentang pengenalan bahasa C.
LAPORAN
PRAKTIKUM
ALGORITMA DAN STRUKTUR DATA
Diajukan untuk memenuhi salah satu
tugas Mata Kuliah Algoritma dan Struktur Data yang diampu oleh :
Heni Sulastri, S.T., M.T.
Oleh,
Fadilah Salsabila
177006006
JURUSAN TEKNIK
INFORMATIKA
FAKULTAS TEKNIK
UNIVERSITAS SILIWANGI
Jl. Siiwangi No.24 Tasikmalaya
Kotak Pos 164 Tlp. (0265) 323537
2018
PENGENALAN BAHASA C
1. Pendahuluan
1.1 Pengertian Bahasa Pemrograman C
Bahasa Pemrograman C adalah sebuah bahasa pemrograman
komputer yang bisa digunakan untuk membuat berbagai aplikasi (general-purpose
programming language), mulai dari sistem operasi (seperti Windows
atau Linux), antivirus, software pengolah gambar (image
processing), hingga compiler untuk bahasa pemrograman, dimana C
banyak digunakan untuk membuat bahasa pemrograman lain yang salah satunya
adalah PHP.
Meskipun termasuk general-purpose programming language, yakni
bahasa pemrograman yang bisa membuat berbagai aplikasi, bahasa pemrograman C
paling cocok merancang aplikasi yang berhubungan langsung dengan Sistem Operasi
dan hardware. Ini tidak terlepas dari tujuan awal bahasa C dikembangkan.
Bahasa pemrograman C dibuat pertama kali oleh Dennis M. Ritchie
pada tahun 1972. Saat itu Ritchie bekerja di Bell Labs,
sebuah pusat penelitian yang berlokasi di Murray Hill, New Jersey, Amerika
Serikat.
Ritchie
membuat bahasa pemrograman C untuk mengembangkan sistem operasi UNIX.
Sebelumnya, sistem operasi UNIX dibuat menggunakan bahasa assembly (assembly
language). Akan tetapi bahasa assembly sendiri sangat rumit dan susah
untuk dikembangkan.
1.2 Versi Bahasa C
A. C K&R
Versi-versi C
lain yang pada akhirnya membuat kebingungan di kalangan pemrogram. Karena itu,
pada tahun 1983, American National Standards Institute (ANSI) membuat sebuah komite untuk membuat
sebuah versi standar dari bahasa C Pada tahun 1978, Dennis Ritchie dan Brian
Kernighan menerbitkan edisi pertama dari buku yang berjudul The C
Programming Language. Buku ini hingga sekarang diakui sebagai kitab suci
bahasa C dan merupakan referensi utama seorang pemrogram yang ingin mengetahui
tentang bahasa C, terutama karena begitu lengkapnya cakupan buku ini tentang
bahasa C dan mudahnya program yang dicontohkan dalam buku ini.
Versi bahasa C yang ditampilkan dalam buku ini kemudian
dikenal dalam kalangan pemrogram sebagai C K&R. Pada buku The C
Programming Language edisi kedua kemudian melingkupi ANSI C yang
diperkenalkan belakangan.
B. ANSI C & ISO C
Pada perkembangannya, muncul. Setelah melalui proses yang
panjang dan sengit, pada tahun 1989, telah berhasil disahkan standar yang
dinamakan ANSI X3.159-1989, versi ini seringkali dinamakan ANSI C, atau
kadang-kadang C89.
Pada 1990, versi ANSI C diadopsi oleh Organization for
Standardization (ISO) dengan
sedikit perubahan dengan nama ISO/IEC 9899:1990. Versi ini seringkali dinamakan
ISO C atau C90. Karena versi ANSI C dan ISO C hanya memiliki sedikit perbedaan,
pemanggilan C90 dan C89 merujuk pada bahasa yang sama.
C. C99
Versi C99 dibuat oleh ISO C pada tahun 1999. Versi ini
dimaksudkan terutama untuk memperbanyak dukungan kepada pemrograman
berorientasi objek, terutama setelah C++, yang dibuat
berdasarkan bahasa ini mendapat tempat yang istimewa di kalangan pemrogram
1.3 Kelebihan dan Kekurangan Bahasa C
A. Kelebihan Bahasa C
1) Bahasa C’ tersedia
hampir tersedia untuk berbagai prosessor, baik mikrocontoller dan microprosssor
.
2) Kode
bahasa C’ bersifat portabel dan fleksibel untuk semua jenis
komputer. Suatu aplikasi yang ditulis dengan
bahasa C untuk suatu prosessor tertentu dapat digunakan di prosessor
lain hanya dengan sedikit modifikasi.
3) Bahasa C hanya menyediakan
sedikit kata-kata kunci, hanya terdapat 32 kata kunci.
4) Proses executable program
bahasa C lebih cepat
5) Dukungan pustaka yang banyak.
6)
C adalah bahasa yang
terstruktur
7)
Bahasa C termasuk
bahasa tingkat menengah
8)
Struktur bahasa yang baik
9)
Mudah dipelajari
10) Memudahkan
pembuatan program
11)
Memudahkan pelacakan program (debugging)
12) Dibandingkan
dengan bahasa mesin atau assembly, C jauh lebih mudah dipahami. C berorientasi
pada permasalahan, bukan pada mesin.
13)
Dapat memanipulasi data dalam bentuk bit atau byte.
14)
Memungkinkan untuk memanipulasi alamat dari suatu data atau pointer.
B. Kekurangan Bahasa C
1) Banyaknya Operator serta fleksibilitas penulisan program kadang-kadang membingungkan pemakai.
2) Bagi pemula pada
umumnya akan kesulitan menggunakan pointer
1.4 Editor Turbo C
Menu-menu dalam Turbo C :
a. File, terdiri dari :
(1) New, untuk memulai program baru
(2) Open, untuk mengambil atau membuka program
(3) Save, untuk menyimpan file/program
(4) Save as, untuk menyimpan file/program
(5) Save all, untuk menyimpan seluruh file/program
(6) Change dir, untuk mengubah directory
(7) Print, untuk mencetak program
(8) DOS Shell, untuk menuju ke DOS Shell
(9) Quit, untuk keluar dari Turbo C
b. Edit, terdiri dari :
(1) Undo, untuk membatalkan pengeditan terakhir
(2) Redo, untuk kembali ke pengeditan terakhir
yang telah di undo.
(3) Cut, untuk memotong bagian tertentu dari
program.
(4) Copy, untuk menduplikasi bagian program
(5) Paste
(6) Clear, untuk menghapus bagian tertentu dari
program
(7) Copy example
(8) Show Clipboard
c. Search, terdiri dari :
(1) Find...
(2) Replace...
(3) Search again
(4) Previous error
(5) Next error
(6) Locate function...
d. Run, terdiri dari :
(1) Run..., untuk menjalankan program
(2) Program reset
(3) Go to cursor
(4)
dst
e. Compile, terdiri dari :
(1) Compile, untuk mengkompilasi program
(2) Make
(3) Link
(4) Build all,
(5) dst
f. Debug, terdiri dari
(1) Inspect
(2) Evaluate/modify
(3)
Dst
1.5
Penulisan Program Bahasa C
Program Bahasa C tidak mengenal aturan penulisan di kolom tertentu, jadi
bisa dimulai dari kolom manapun. Namun demikian, untuk
mempermudah pembacaan program dan untuk keperluan
dokumentasi, sebaiknya penulisan bahasa C diatur sedemikian rupa sehingga mudah
dan enak dibaca.
Berikut contoh penulisan Program Bahasa C yang baik dan yang kurang baik
:
Contoh penulisan program bahasa C
yang baik
#include “stdio.h”
void main()
{
printf(“Bahasa C\n”);
}
Contoh penulisan program bahasa C yang kurang baik
#include “stdio.h”
void main() { printf(“Bahasa C”); }
Kedua Program di
atas bila dijalankan akan menghasilkan hasil yang sama berupa tulisan “Bahasa C” di layar, namun dari segi penulisannya
program yang pertama tampaknya lebih mudah
dibaca dan lebih rapih dibanding dengan program yang kedua.
Aturan
dalam C++
Dalam
pemrograman C++ tidak ada aturan khusus dalam penulisan seperti dalam java
misalnya dalam java keyword dan variabel biasanya bersifat key sensitif
sedangkan dalam C++ tidak, hanya saja variabel dan kostanta diharapkan sama
dengan yang dideklarasikan.
Berikut
beberapa aturan dalam C++ antara lain:
1)
Penulisan
setiap akhir dari baris source kode harus diakhiri dengan tanda titik koma (;), kecuali penggunaan
file Header dan Deklarasi kostanta.
2)
Untuk block
source code harus diawali dengan tanda kurung kurawal { dan diakhiri dengan tanda tutup kurung kurawal }.
3)
Untuk
mendeklarasikan lebih dari satu variabel, variabel tersebut dipisah dengan tanda koma(,).
4)
Untuk
menambahkan pernyataan/komentar dalam source menggunakan
tanda // untuk perbaris, sedangkan apabila banyak maka menggunakan blok /* diakhir pernyataan */.
5)
Dalam suatu
program C++ harus terdapat program utama atau main program, karena program akan dijalankan mulai dari main program.
I.
Perintah
Dasar dalam C++
1)
Praprosesor :
merupakan compiler untuk merubah source code kedalam
bahasa mesin.
2)
File Header : Merupakan file direktori khusus yang dikenali atau disetel melalui compiler.
Dalam C++
sebenarnya masih banyak lagi file header yang digunakan hanya saja untuk yang
biasa digunakan hanya fungsi-fungsi header diatas.
2. Sruktur Dalam Bahasa C
2.1 Tipe
Data
Tipe data merupakan bagian program yang
paling penting karena tipe data mempengaruhi setiap
instruksi yang akan dilaksanakan oleh computer. Misalnya saja 5 dibagi 2 bisa
saja menghasilkan hasil yang berbeda tergantung tipe datanya. Jika 5 dan
2 bertipe integer maka akan menghasilkan nilai 2, namun jika keduanya bertipe
float maka akan menghasilkan nilai 2.5
000000. Pemilihan tipe data yang tepat akan membuat proses operasi data menjadi
lebih efisien dan efektif.
Dalam bahasa C terdapat lima tipe data dasar, yaitu :
A. Tipe data Character
Tipe
data yang hampir mirip dengan tipe data integer tetapi hanya cukup untuk
menampung 1 karakter ASCII. Karena tipe data character hanya memiliki ukuran 1
byte, tipe data ini sangat sering digunakan untuk menyimpan tipe data karakter
sesuai dengan namanya. Tipe data ini dikatakan ideal untuk menampung data
karakter karena ukuran 1 byte cukup besar untuk menyediakan 1 slot untuk tiap
karakter ASCII. Saat compile, semua tipe data karakter akan diubah ke bentuk
integer kode ASCIInya.
B. Tipe data Integer
Tipe
data bilangan bulat decimal yang dapat menampung angka antara -2147483648 dan
2147483647. Tipe data ini berukuran 32 bits atau 4 bytes.
C. Tipe data Float
Float
merupakan kependekan dari floating point. Tipe data ini dapat menampung
bilangan real tetapi kurang presisi karena hanya dapat menyimpan single
precision floating point numbers.
D. Tipe data Double
Tipe data
double sangat mirip dengan tipe data float tetapi tipe data double dapat
menyimpan double precision floating point numbers. Biasanya memiliki ukuran 8
bytes.
E. Tipe data Void
Tipe
data void ini yaitu tipe data yang tidak mengembalikan nilai (Tipe data yang
tidak bertipe), biasanya digunakan dalam suatu fungsi.
Contoh Program :
#include “stdio.h”
#include “conio.h”
void main()
{ int x;
float y;
char z;
double w;
clrscr(); /* untuk membersihkan layar */
x = 10; /* variable x diisi dengan 10 */
y = 9.45; /* variable y diisi dengan 9.45 */
z = ‘C’; /* variable z diisi dengan karakter “C” */
w = 3.45E+20; /* variable w diisi dengan 3.45E+20 */
printf(“Nilai dari x adalah : %i\n”, x); /* Menampilkan isi variable x
*/ printf(“Nilai dari y adalah : %f\n”, y); /* Menampilkan isi variable y */
printf(“Nilai dari z adalah : %c\n”, z); /* Menampilkan isi variable z */ printf(“Nilai dari w adalah : %lf\n”, w); /* Menampilkan isi variable w */
getch(); } |
2.2
Konstanta
Konstanta merupakan suatu nilai yang tidak dapat diubah selama proses
program berlangsung. Konstanta nilainya selalu tetap. Konstanta harus
didefinisikan terlebih dahulu di awal program. Konstanta dapat
bernilai integer, pecahan, karakter dan string. Contoh konstanta : 50; 13;
3.14; 4.50005; ‘A’; ‘Bahasa C’. Selain itu, bahasa C juga menyediakan beberapa
karakter khusus yang disebut karakter escape, antara lain
:
\a :
untuk bunyi bell (alert)
\b :
mundur satu spasi (backspace)
\f :
ganti halaman (form feed)
\n :
ganti baris baru (new line)
\r :
ke kolom pertama, baris yang sama (carriage return)
\v :
tabulasi vertical
\0 :
nilai kosong (null)
\’ :
karakter petik tunggal
\” :
karakter petik ganda
\\ :
karakter garis miring
2.3
Variable
Variabel adalah suatu pengenal (identifier) yang digunakan untuk mewakili
suatu nilai tertentu di dalam proses program. Berbeda
dengan konstanta yang nilainya selalu tetap, nilai dari suatu variable bisa diubah-ubah sesuai kebutuhan. Menurut posisi deklarasinya,
variable terbagi 2, yaitu:
I.
Variabel
global adalah variabel yang dideklarasikan diatas fungsi main atau diluar
fungsi lainnya (sehingga dapat diinisialisasi di semua fungsi di bawahnya)
II.
Variabel
lokal adalah variabel yang dideklarasikan hanya didalam suatu fungsi tertentu
(fungsi main maupun bukan).
Nama dari suatu variable dapat ditentukan sendiri oleh pemrogram dengan aturan sebagai berikut :
1) Terdiri dari gabungan huruf dan angka
dengan karakter pertama harus berupa huruf. Bahasa C bersifat case-sensitive artinya huruf besar dan kecil dianggap
berbeda. Jadi antara nim, NIM dan Nim dianggap berbeda.
2) Tidak boleh
mengandung spasi.
3) Tidak boleh berupa angka ataupun diawali oleh karakter yang
berupa angka.
4) Tidak boleh
mengandung symbol-simbol khusus, kecuali garis bawah (underscore). Yang termasuk symbol khusus yang tidak diperbolehkan antara lain : $, ?, %, #,
!, &, *, (, ), -, +, =, dan sebagainya
5) Panjangnya bebas, tetapi hanya 32
karakter pertama yang terpakai.
6) Memberi nama variable sedeskriptif mungkin sehingga program
akan mudah untuk dibaca dan dimengerti oleh orang lain.
Contoh penamaan variabel yang benar
:
NIM, a, x, nama_mhs, f3098, f4, nilai, budi, dan sebagainya.
Contoh penamaan variable yang salah
:
%nilai_mahasiswa, 80mahasiswa, rata-rata, ada spasi, penting!, dan
sebagainya.
2.4
Deklarasi
Deklarasi diperlukan bila kita akan menggunakan pengenal (identifier)
dalam program. Identifier dapat berupa variable,
konstanta dan fungsi.
1) Deklarasi
Variabel
Bentuk umum pendeklarasian suatu variable adalah : Nama_tipe nama_variabel;
Contoh :
int x; // Deklarasi
x bertipe integer
char y, huruf, nim[10]; // Deklarasi
variable bertipe char
float nilai; // Deklarasi variable bertipe float
double beta; // Deklarasi variable bertipe double
int array[5] [4]; // Deklarasi
array bertipe integer
char *p; // Deklarasi pointer p bertipe char
2) Deklarasi
Konstanta
Dalam bahasa C konstanta dideklarasikan menggunakan preprocessor #define.
Contohnya : #define PHI 3.14
#define nim “0111500382”
#define nama “Sri Widhiyanti”
3) Deklarasi
Fungsi
Fungsi merupakan bagian yang terpisah dari program dan dapat diaktifkan
atau dipanggil di manapun di dalam program. Fungsi
dalam bahasa C ada yang sudah disediakan sebagai fungsi pustaka
seperti printf(), scanf(), getch() dan untuk menggunakannya tidak perlu dideklarasikan. Fungsi yang perlu dideklarasikan terlebih dahulu adalah
fungsi yang dibuat oleh programmer. Bentuk umum deklarasi
sebuah fungsi adalah :
Tipe_fungsi nama_fungsi(parameter_fungsi);
Contohnya :
float luas_lingkaran(int jari);
void tampil();
int tambah(int x, int y);
2.5
Operator
1) Operator
Penugasan
Operator Penugasan (Assignment operator) dalam bahasa C berupa
tanda sama dengan (“=”). Contoh :
nilai = 80;
A = x * y;
Artinya : variable “nilai” diisi dengan 80 dan variable “A” diisi dengan
hasil perkalian
antara x dan y.
2) Operator
Aritmatika
Bahasa C menyediakan lima operator aritmatika, yaitu :
* : untuk perkalian
/ : untuk pembagian
% : untuk sisa
pembagian (modulus)
+ : untuk pertambahan
- : untuk pengurangan
Catatan : operator % digunakan untuk mencari sisa pembagian antara dua
bilangan.
Misalnya :
9 % 2 = 1
9 % 3 = 0
9 % 5 = 4
9 % 6 = 3
9 % 6 = 3
Contoh Program 1 :
#include “stdio.h”
#include “conio.h”
void main()
{ clrscr(); //
untuk membersihkan layar
printf(“Nilai dari 9 + 4 = %i”, 9 + 4); /*mencetak hasil 9 + 4 */
printf(“Nilai dari 9 - 4 = %i”, 9 - 4); /*mencetak hasil 9 - 4 */
printf(“Nilai dari 9 * 4 = %i”, 9 * 4); /*mencetak hasil 9 * 4 */
printf(“Nilai dari 9 / 4 = %i”, 9 / 4); /*mencetak hasil 9 / 4 */
printf(“Nilai dari 9 \% 4 = %i”, 9 % 4); /*mencetak hasil 9 % 4 */
getch();
}
Mohon kritik dan saran yang membangun agar saya dapat memperbaiki pada laporan selanjutnya. Terima Kasih mohon maaf apabila ada kesalahan semoga bermanfaat :).
Tidak ada komentar:
Posting Komentar