Senin, 31 Desember 2012

Makalah Pemograman Menggunakan Bahasa C



MAKALAH
PEMOGRAMAN MEGGUNAKAN BAHASA C

INTAN SHAVIRA
122406074
KOM B 1



 



D3 TEKNIK INFORMATIKA
FAKULTAS MATEMATIKA DAN ILMU PENGETAHUAN ALAM
UNIVERSITAS SUMATERA UTARA
MEDAN
2012




BAB 1

PENDAHULUAN



1.1     Latar Belakang
Bahasa pemrograman C merupakan salah satu bahasa pemrograman komputer yang bisa dikatakan mudah untuk dipelajari dan mudah untuk dipahami karena bahasanya merupakan bahasa tingkat tinggi yang dimengerti oleh manusia.  Bahasa C dibuat pada tahun 1972 oleh Dennis Ritchie.
Bahasa C++ dibuat oleh Bjarne Stroustrup di AT dan T Bell Laboratorium pada tahun 1980 yang merupakan pengembangan dari bahasa C. Pada awalnya bahasa ini disebut dengan C With Classes, sedangkan menggunakan nama C++ dimulai sejak 1983, yang diusulkan oleh Rick Mascitti. Bahasa C++ mengembangkan kemampuan dari bahasa C yaitu dengan :

1.      Memberikan dukungan untuk menciptakan dan memanfaatkan abstraksi data.
2.      Dapat digunakan untuk pemrogram berorientasi objek
3.      Dan yang terakhir telah menutupi beberapa kekurangan dalam bahasa C

Bahasa program C++ adalah penerus bahasa program C yang merupakan bahasa pemrograman tingkat menengah. Pencipta bahasa program C adalah Brian W. Kerninghan dan Dennis M. Ritchie pada tahun 1972. Sedangkan C++ diciptakan satu dekade setelah C oleh Bjarne Stroustrup dari Labortorium Bell, AT&T pada tahun 1983. Pada awalnya C++ diberi nama A Better C.

Algoritma adalah urutan aksi-aksi yang dinyatakan dengan jelas dan tidak rancu untuk memecahkan suatu masalah dalam rentang waktu tertentu. Setiap aksi harus dapat dikerjakan dan mempunyai efek tertentu. Algoritma dapat dituliskan dengan banyak cara, mulai dari menggunakan bahasa alami yang digunakan sehari-hari, simbol grafik bagan alir, sampai menggunakan bahasa pemrograman seperti bahasa C atau C++.C & C++.

Berbicara tentang C++ biasanya tidak lepas dari C,  sebagai bahasa pendahulunya, pencipta C adalah Brian W. Kerninghan dan Dennis M. Ritchie pada sekitar tahun 1972, dan sekitar satu dekade setelahnya diciptakanlah C++, oleh Bjarne Stroustrup dari Labortorium Bell, AT&T, pada tahun 1983. C++ cukup kompatibel dengan bahasa pendahulunya C. Pada mulanya C++ disebut A Better C. Nama C++ diberikan oleh Rick Mascitti pada tahun 1983, yang berasal dari operator increment pada bahasa C. Keistimewaan yang sangat berarti dari C++ ini adalah karena bahasa ini mendukung pemrograman yang berorientasi objek (OOP / Object Oriented Programming).


1.2     Rumusan Masalah

Sehubungan dengan adanya masalah yang timbul maka penulis merumuskan masalah sebagai beikut :

1.      Bagian – bagian apakah yang terpenting ketika kita membuat suatu program?
2.      Mengidentifikasi bahasa pemograman bahasa C?


1.3     Tujuan Penulisan

Adapun tujuan penulis melakukan penulisan ini adalah untuk mengetahui dan mengenal perkembangan bahasa pemograman C?


1.4     Manfaat Penulisan

Dengan adanya penulisan makalah ini penulis berharap bermanfaat bagi :

1.      Diri penulis untuk melengkapi tugas akhir praktikum di laboratorium dan untuk mendalami masalah yang ada pada objek penulisan.

2.      Pihak – pihak yang ingin memperoleh informasi tentang objek penulisan ini baik untuk kepentingan pribadi maupun untuk kepentingan pengembangan ilmu pengetahuan.




BAB 2

MENGENAL BAHASA C



2.1    Pengertian Bahasa C
Bahasa pemrograman C merupakan salah satu bahasa pemrograman komputer yang bisa dikatakan mudah untuk dipelajari dan mudah untuk dipahami karena bahasanya merupakan bahasa tingkat tinggi yang dimengerti oleh manusia.  Bahasa C dibuat pada tahun 1972 oleh Dennis Ritchie.

2.2     Sejarah Bahasa C

C adalah bahasa pemrograman. Bahasa C dirancang oleh Dennis M. Ritchie pada tahun 1972 di AT&T Bell Labs. Bahasa C dikembangkan dari bahasa BPCL (Basic Combined Programming Language ) dan bahasa B. Bahasa BPCL di kembangkan oleh Martin Richard pada tahun 1967 sebagai bahasa system operasi dan compiler. Ken Thompson pada tahun 1970 telah merancang bahasa B dengan memasukkan feature BPCL. Bahasa B dirancang untuk membuat system operasi UNIX/LINUX untuk computer DEC PDP-7 pada Bell Laboratories.

Pada tahun 1978 Dennis Ritchie dan Brian W. Kerninghan mempublikasikan bahasa C melalui buku "The C Programming Language". Buku ini diterbitkan oleh Prentice Hall dan pada saat ini telah di terjemahkan dalam berbagai bahasa di dunia. Dan buku ini juga yang menjadikan legenda dan sejarah bagi bahasa C hingga di kenal dengan sebutan K&R C (K=Kerninghan | R=Ritchie).

Seiring pesatnya perkembangan bahasa C, maka banyak vendor dan software developer mengembangkan bahasa C menurut versi mereka masing-masing. hal ini telah memicu ANSI (American National Standards Institute) pada tahun 1983 untuk membentuk komite teknis yang di sebut X3J11 untuk bekerja pada standard bahasa C yang bertujuan untuk membuat definisi standar bahasa C yang lebih modern dan komprehensif, dengan memperbaiki syntax dan grammar bahasa C. Pada akhir 1989 komite telah menyetujui standard ANSI untuk bahasa C yang kemudian terkenal dengan sebutan ANSI C.

Bahasa C termasuk high-level programming language. Pada kenyataannya bahasa C adalah salah satu bahasa yang paling populer untuk keperluan umum. Dikatakan high-level programming language karena kedekatannya dengan bahasa manusia. Semakin dekat dengan bahasa manusia, maka semakin tinggi bahasa tersebut. Namun, membawa pengaruh semakin berkurang kemampuan untuk mengakses langsung instruksi dasar bahasa mesin. Tapi tidak sedikit yang mengatakan bahasa C adalah medium-level programming language karena bahasa C juga sanggup berinteraksi langsung dengan mesin. Lebih tepatnya bahasa C berada diantara High-level dan Low-level. Low-level language adalah bahasa mesin (contoh : assembler), bahasa yang sanggup berinteraksi langsung dengan mesin.

Bahasa C mempunyai 32 keywords yang telah di tetapkan oleh ANSI. Ke 32 keywords itu adalah : auto, break, case, char, const, continue, default, do, double, else, enum, extern, float, for, goto, if, int, long, register, return, short, signed, sizeof, static, struct, switch, typedef, union, unsigned, void, volatile, while.

Keuntungan pertama dari menggunakan bahasa C adalah dari segi portabilitasnya (portable). Program C yang kita tulis untuk satu platform bisa kita gunakan pada platform lain, dengan atau tanpa perubahan sedikitpun. Ini terwujud karena adanya standarisasi ANSI untuk C.

Keuntungan kedua dari menggunakan bahasa C adalah bahasa pemrograman yang fleksibel. Dengan menguasai bahasa C kita bisa menulis dan mengembangkan berbagai jenis program mulai dari operating system, word processor, graphic processor, ataupun compiler untuk satu bahasa pemrograman yang lain.

Keuntungan ketiga adalah reuse : bahasa pemrograman yang dapat di gunakan beberapa kali dalam program atau aplikasi lain. Di karenakan banyak bahasa-bahasa yang lain dibuat dengan menggunakan bahasa C, maka bahasa C cocok untuk di jadikan bahasa pemula untuk belajar programming. Seperti halnya bahasa PERL yang sangat popular di kalangan World Wide Web (WWW) juga banyak mengambil fitur dari bahasa C. contoh lain adalah C++ yang di perluasan dari bahasa C. Belajar JAVA pun akan sangat mudah jika anda mengetahui bahasa C.


2.3   Perkembangan Bahasa C

Sebelum tahun 1970-an (atau lebih lama), menggunakan komputer seperti saat ini dari mulai mengetik hingga main game komputer merupakan sesuatu hal yang mustahil. Revolusi yang terjadi di dalam dunia komputer membutuhkan dua tahap agar dapat sampai kepada zaman seperti sekarang, yakni:

1.      Saat komputer dibangun untuk membantu para ilmuwan untuk menyelesaikan tugas-tugas ilmiahnya, dan

2.      Turunnya harga komputer secara signifikan dan dapat digunakan oleh para pengguna yang bukan programmer, yang berlangsung beberapa dekade setelah tahap pertama selesai.

Bahasa C merupakan pengembangan dari bahasa B yang ditulis oleh Ken Thompson pada tahun 1970. Bahasa C untuk pertama kali ditulis oleh Brian W. Kernighan dan Denies M. Ricthie pada tahun 1972. Bahasa C, pada awalnya dioperasikan diatas sistem operasi UNIX.



Bahasa C adalah merupakan bahasa pemrograman tingkat menengah yaitu diantara bahasa tinggat rendah dan tingkat tinggi yang biasa disebut dengan Bahasa Tingkat Tinggi dengan Perintah Assambly. Bahasa C mempunyai  banyak  kemampuan  yang  sering  digunakan  diantaranya kemampuan untuk membuat perangkat lunak, misalnya dBASE, Word Star dan  lain-lain.  Pada  tahun1980  seorang  ahli  yang  bernama  Bjarne Stroustrup mengembangkan beberapa hal dari bahasa C yang dinamakan “C with Classes” yang berganti nama pada tahun 1983 menjadi C++. Penambahan  yang  terdapat  pada  C++  ini  adalah  Object  Oriented Programming(OOP),  yang  mempunyai  tujuan  utamanya  adalah membantu membuat dan mengelola program yang besar dan kompleks.


2.4   Struktur Program Bahasa C

Program bahasa C adalah suatu program terdiri dari satu atau lebih fungsi-fungsi. Fungsi utama dan harus ada pada program C yang kita buat adalah fungsi main(). Fungsi main() ini adalah fungsi pertama yang akan diproses pada saat program di kompile dan dijalankan, sehingga bisa disebut sebagai fungsi yang mengontrol fungsi-fungsi lain. Karena struktur program C terdiri dari fungsi-fungsi lain sebagai program bagian    (subroutine),    maka bahasa C biasa disebut sebagai bahasa pemrograman terstruktur. Cara penulisan fungsi pada program bahasa C adalah dengan memberi nama fungsi dan kemudian dibuka dengan kurang kurawal buka ({) dan ditutup  .

            Fungsi-fungsi lain selain fungsi utama bisa dituliskan setelah atau sebelum fungsi utama dengan deskripsi prototype fungsi pada bagian awal program. Bisa juga dituliskan pada file lain yang apabila kita ingin memakai atau memanggil fungsi dalam file lain tersebut, kita harus menuliskan header filenya, dengan preprocessor directive #include. File ini disebut file pustaka (library file). Program C meliputi dokumentasi program,  pengarah prapengolahan, deklarasi global, fungsi main (), fungsi buatan pemrograman, pembatas, akhir pernyataan, dan style program.


2.5    Dokumentasi Program
           
Memberikan dokumentasi pada program sangat berguna untuk membantu memperjelas alur logika penyusunan program. Karena tujuannya hanya sebagai dokumentasi, komentar-komentar yang dituliskan pada program tidak diproses oleh compiler. Komentar dapat dimulai dengan simbol dua karakter yang terdiri dari garis miring dan asterisk (/*) dan diakhiri dengan asterisk dan garis miring.
Karakter komentar /* dapat diletakkan dimana saja didalam program dan dapat mencakup lebih dari satu komentar, dengan syarat setiap /* harus ditutup dengan */. Pada awal program, komentar yang diberikan biasanya bertujuan untuk menjelaskan apa yang dilakukan oleh program, sedangkan pada bagian probram yang lain tujuannya
tujuannya adalah untuk memperjelas logika program.    .


2.6    Pengarah Prapengolahan

Dalam mengolah kode-kode program, compiler C melaksanakan beberapa tahapan yaitu melakukan prapengolahan untuk melakukan persiapan yang diperlukan sebuah berkas program kompilasi. Di dalam program pengarah prapengolahan diawali oleh karakter # yang dituliskan pada baris-baris pertama program.

            Prapengolahan memperlakukan berkas program sebagai sederetan baris teks: membaca, mengolah, dan menuliskan kembali hasil pengolahan kedalam berkas semula. Prapengolah membuang semua baris perintah prapengolahan dari berkas sumber dan melakukan perubahan terhada berkas sumber sesuai dengan arahan perintah  yang    diberikan. Secara garis besar, pelayanan – pelayanan  tersebut dapat dibagi ke dalam tiga kelompok :

1.      Penyisipan berkas (#include)
2.      Pendefinissian makro (#define)
3.      Pengarah kendali kompiler (#ifdef, #ifndef)



2.7    Deklarasi Global

Pada bagian deklarasi global terdapat pendeklarasian variable dan prototipe fungsi. Semua variable y ang dideklarasikan pada bagian ini akan dikenal oleh semua bagian program yang terdapat dibawahnya. Sementara itu prototipe fungsi adalah sebuah deklarasi tentang akan digunakannya sebuah fungsi didalam program. Ada tiga unsur yang perlu disebutkan: jenis data yang dikembalikan oleh fungsi, nama fungsi dan daftar argumen yang diberikan pada fungsi yang diberi jumlah argumen (arity) dan jenis data masing-masing argumen.


2.8    Fungsi main ()

Fungsi main ( ) memegang peranan yang penting pada sebuah program. Fungsi ini merupakan fungsi utama pada setiap program C dimana eksekusi keseluruhan program dimulai. Barapapun banyaknya fungsi yang terdapat pada sebuah program C, main ( ) adalh fungsi utama yang akan dilaksanakan oleh compiler.


2.9    Fungsi Buatan Pemrograman

Selain main ( ) yang mempunyai kedudukan khusus dalam sebuah program, terdapat pula fungsi-fungsi buatan pemrogram. Pada fungsi ini dapat diberikan deklarasi prototype fungsi lain secara local, sehingga hanya dikenal oleh fungsi tersebut. Kode program yang dapat dieksekusi juga dapat berupa fungsi input/output standar, konstruksi runtunan, konstruksi keputusan, dan konstruksi pengulangan.


2.10   Pembatas

Setelah pendefenisian fungsi terdapat kurung kurawal buka “{“ dan kurung kurawal tutup “}” yang menunjuk akhir blok fungsi, kurung kurawal ini disebut pembatas (delimeters). Dalam badan program kurung kurawal juga dapat digunakan untuk membatasi pernyataan majemuk yang dimiliki oleh sebuah blok kode program. Selain kurung kurawal juga terdapat beberapa pembatas lain, diantaranya: [ ], < >, ( ), “ “, dan ‘ ‘.


2.11   Akhir Pernyataan

Setiap pernyataan (statement) dalam C diakhiri dengan titik koma ( ; ) yang berperan untuk memberitahu compiler akhir pernyataan. Carriage return yang diperoleh sewaktu menekan tombol bukan penunjuk akhir pernyataan, karena C mengabaikan semua karakter yang disebut karakter-karakter whitespace, yaitu spasi, tabulator dan carriage return (newline).


2.12   Style Program

Keterbacaan ( readability ) merupakan unsur yang sangat penting dalam menyusun sebuah program. Program yang disusun hendaklah mudah dibaca dan dapat menggambarkan kerangka berpikir dan algoritma yang digunakan. Kemudahan penulisan program sangat besar dipengaruhi oleh sintaks ( aturan penulisan ) yang dapat digunakan. Sintaks program jua dapat mempermudah pengujian dan pemahamannya apabila pada suatu waktu program tersebut perlu dimodifikasi.

2.13   Kelebihan dan Kekurangan
Kelebihan Bahasa C
1.      Bahasa C tersedia hampir di semua jenis komputer, baik mikro, mini , maupun komputer besar (mainframe).
2.      Kode hahasa C berisfat portable. Suatu aplikasi yang ditulis dengan bahasa C untuk suatu komputer tertentu dapat digunakan di komputer lain hanya dengan sedikit modifikasi.
3.      Berbagai struktur data dan pengendalian proses disediakan dalam C sehingga memungkinkan untuk membuat program yang terstruktur. Struktur bahasa yang baik, selain mudah dipelajari juga memudahkan dalam pembuatan program, pelacakan kesalahan program dan akan menghasilkan dokumentasi program yang baik.
4.      Dibandingkan dengan bahasa mesin atau assembly, C jauh lebih mudah dipahami dan pemrogram tidak perlu mengetahui mesin computer secara detail.
5.      C memungkinkan memanipulasi data dalam bentuk bit maupun byte. Disamping itu juga memungkinkan untuk memanipulasi alamat dari suatu data atau pointer.
Kekurangan Bahasa C
1.      Banyaknya operator serta fleksibilitas penulisan program kadang-kadang membingungkan pemakai. Kalau tidak dikuasai sudah tentu akan menimbulkan masalah.
2.      Para pemrogram C tingkat pemula umumnya belum pernah mengenal pointer dan tidak    terbiasa menggunakannya. Padahal keampuhan C justru terletak pada pointer.



BAB 3

JENIS DATA



3.1   Tipe Data

Tipe data merupakan bagian program yang paling penting karena tipe data mempengaruhi setiap instruksi yang akan dilaksanakan oleh komputer. 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.5000000. Pemilihan tipe data yang tepat akan membuat proses operasi data menjadi lebih efisien dan efektif.

            Data merupakan suatu nilai yang dapat dinyatakan dalam bentuk konstanta atau variabel. Konstanta menyatakan nilai yang tetap, sedangkan variabel menyatakan nilai yang dapat berubah-ubah selama eksekusi berlangsung.

            Data berdasarkan jenisnya dapat dibagi menjadi lima kelompok, yang dinamakan sebagai tipe dasar. Kelima tipe dasar tersebut adalah:

1.      Bilangan bulat (integer).
2.      Bilangan real presisi-tunggal.
3.      Bilangan real presisi-ganda.
4.      Karakter.
5.      Tak bertipe (void)

 
Dalam bahasa C terdapat beberapa tipe data, diantaranya adalah sebagai berikut:

No
Tipe Data
Ukuran
Range (Jangkauan)
Format
Keterangan
1
Char
1 byte
-128 s/d 127
%c
karakter
2
Int
2 byte
-32768 s/d 32767
%d, %i
integer/bilangan bulat
3
Float
4 byte
-3.4e-38 s/d 3.4e+38
%f
float/pecahan
4
Double
8 byte
-1.7e-308 s/d 1.7e+308
%lf
pecahan presisi ganda
5
Void
0 byte
-
-
tidak bertipe

Gambar 3.1 Tipe Data


3.1.1  Tipe Data Char

Jenis data karakter digunakan  untuk menyajikan  karakter.  Masing-masing karakter menempati memori sebesar 1 byte. Satu byte terdiri dari 8 bit , sehingga dapat menampung 28 = 256 nilai yang berbeda. Jumlah ini sesuai dengan jumlah karakter ASCII yang digunakan pada mikrokomputer, dan diberi nomor 0 hingga 255.

            Dari 256 karakter ini, sebagian diantaranya adalah karakter-karakter yang tidak dapat dicetak. Untuk dapat mempresentasikan 256 karakter tersebut, variable berjenis char hendaklah dinyatakan sebagai karakter tak bertanda. Jika tidak dinyatakan demikian, variabel tersebut akan dipandang sebagai signed char sebagai bentuk default untuk jenis data char, sehingga hanya dapat menampung setengah dari keseluruhan karakter ASCII.


3.1.2  Tipe Data Int

Jenis data int digunakan untuk menyajikan nilai integer. Jenis data integer tersimpan didalam memori sebesar 4 byte (32 bit). Pada computer 32-bit , jenis data integer menempati satu word memori.

Kelompok integer terdiri atas tiga jenis: int, short, dan long, masing-masing dibagi dalam dua kelompok: signed dan  unsign. Jika tidak dinyatakan lain, compiler akan memperlakukan ketiga jenis integer itu  sebagai signed int  yang dapat memuat bilangan positif dan  negatif. Jika hanya bilangan positif , harus dinyatakan secara eksplisit  dengan memberikan kata unsigned.


3.1.3  Tipe Data Float

Variabel berjenis float termasuk dalam kelompok floating point yang menampung bilangan-bilangan riil. Bilangan riil adalah bilangan yang memiliki bagian decimal, titik, bagian fraksional, dan bagian eksponensial. Pendeklarasian variable berjenis float mempunyai format yang sama seperti pada jenis integer: menyatakan jenis data float, diikuti nama variable.


3.1.4  Tipe Data Double

Variable berjenis double juga termasuk kelompok  floating point tetapi memiliki angka ketelitian ganda (double precision). Tingkat ketelitiannya hingga 15 angka dibelakang koma. Disamping itu, terdapat pulavariabel berjenis long double  yang memiliki tingkat ketelitian hingga 18 angka dibelakang koma. Kedua jenis double ini masing-masing menempati 8 dan 12 byte lokasi memori.


3.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:
1.      \a : untuk bunyi bell (alert)
2.      \b : mundur satu spasi (backspace)
3.      \f : ganti halaman (form feed)
4.      \n : ganti baris baru (new line)
5.      \r : ke kolom pertama, baris yang sama (carriage return)
6.      \v : tabulasi vertikal
7.      \0 : nilai kosong (null)
8.      \’ : karakter petik tunggal
9.      \” : karakter petik ganda
10.  \\ : karakter garis miring

Ada beberapa tipe konstanta dalam bahasa C, antara lain sebagai berikut:

1.      Konstanta karakter yang ditandai dengan tanda petik tunggal (‘)pada awal dan akhir karakter. Contoh ‘A’ dan ‘@’.
Konstanta karakter adalah sebuah karakter yang diapit ole tanda petik tunggal. Karakter yang diapit oleh tanda petik tunggal diatas adalah karakter-karakter cetak. Disamping itu, terdapat pula karakter-karakter yang tidak dapat dicetak yang disebut dengan karakter escape, seperti carriage return, bell, newline, dan null characterdan harus didahului oleh karakter backslash.

2.      Konstanta integer ditulis dengan tanda mengandung pemisah ribuan dan tak mengandung pemisah pecahan, contohnya -1 dan 32767.
Konstanta integer terdiri dari untaian bilangan bulat. Berdasarkan basisnya, konstanta integer yang biasa digunakan dalam C dapat dibagi atas tiga jenis: decimal, octal, dan heksadesimal.

3.      Konstanta real (float dan double) bisa mengandung pecahan (dengan tanda berupa titik). Contohnya 27.5f (untuk float) dan 27.5( untuk double).

4.      Konstanta string merupakan deretan karakter yang diawali dan diakhiri dengan tanda peik ganda (“), contohnya “Dasar Pemrograman C”.
Karakter-karakter ini dapat berupa huruf, angka, karakter khusus, dan spasi. Karakter-karakter pembentuk string disimpan didalam memori dengan nilai numeriknya menyatakan alamat (address) lokasi memori. Pada akhir string, compiler akan menambahkan karakter nol (‘\0’) untuk menandai akhir string.


3.3   Variabel

Sebelum kita dapat menggunakan variabel tertentu di dalam program C, kita harus memberi tahu kepada kompiler mengenai jenis variabel itu sendiri. Dilihat dari contoh-contoh di atas, kita melihat bahwa semua variabel adalah berisi angka. Akan tetapi, komputer tidak hanya memproses angka saja, akan tetapi, selain angka variabel juga mampu menyimpan banyak sekali tipe data. Bahkan, untuk jenis ‎angka, C mendukung tiga buah jenis:

1.      Ketika kita sedang menulis sebuah program, yang mengharuskan di sana bilangan yang tidak boleh dibagi (bilangan bulat), seperti halnya populasi siswa di sebuah sekolah, ‎atau lain-lain, C menawarkan kepada kita apa yang disebut sebagai "integer”.

2.      Ketika kita sedang menulis sebuah program yang menangani masalah keuangan (yang sering digunakan di dalam industri), kita harus menggunakan angka-angka dengan jumlah angka yang panjang, mungkin mencapai triliunan. Bahasa C menawarkan kepada kita apa yang disebut sebagai "decimal."

3.      Ketika kita sedang menulis sebuah program yang digunakan untuk menghitung hal-hal yang ilmiah, seperti rumus relativitas dan fisika kuantum, mungkin kita membutuhkan ‎bilangan yang berkoma dan berpangkat yang direpresentasikan dalam bentuk notasi ‎ilmiah (mantissa dan exponent). Dalam C, bilangan seperti itu dinamakan juga dengan floating point number, yang direpresentasikan dengan menggunakan kata kunci ‎‎"float".

Kita bisa menggabungkan tiga buah jenis bilangan di atas di dalam sebuah program. Untuk sekarang, kita akan mempelajari mengenai bilangan bulat (integer), yang dapat berupa bilangan bulat positif atau bilangan bulat negatif.

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 variabel bisa diubah-ubah sesuai kebutuhan. Nama dari suatu variabel dapat ditentukan sendiri oleh pemrogram dengan aturan sebagai berikut:

1.      Terdiri dari gabungan huruf dan angka dengan karakter pertama harus berupa huruf.
2.      Bahasa C bersifat case-sensitive artinya huruf besar dan kecil dianggap berbeda. Jadi antara Metal, dengan metal itu berbeda.
3.      Tidak boleh mengandung spasi.
4.      Tidak boleh mengandung simbol-simbol khusus, kecuali garis bawah (underscore), seperti : $, ?, %, #, !, &, *, (, ), -, +, dsb.
5.      Panjangnya bebas, tetapi hanya 32 karakter pertama yang terpakai.


3.4   Operator

Operator merupakan intruksi khusus yang dikenai untuk variable. Operator-operator yang sering digunakan dalam pemrograman adalah operator Aritmatika, Operator pembanding, Operator Logika, dan lain-lain, namun yang akan kita bahas kali ini adalah Operator Aritmatika, Operator pembanding, dan Operator logika.



3.4.1  Operator Aritmatika

Operator Aritmatika merupakan operator yang digunakan untuk fungsi/operasi matematika, operator aritmatika dasar untuk C++ dan tanpa proses include :
1.       * : untuk perkalian
2.       /  : untuk pembagian
3.      % : untuk sisa hasil bagi (modulus)
4.       + : untuk penjumlahan
5.        - : untuk pengurangan
Tapi yang akan dibahas kali ini adalah operator aritmatika dasar aja, tapi sekedar pengetahuan saja, operator Aritmatika yang menggunakan file header math.h seperti berikut :
1.      pow(a,b) : untuk pemangkatan
2.      max() : untuk mencari nilai maximal
3.      min() : untuk mencari nilai minimum
4.      sqrt() : untuk menghitung akar suatu bilangan


3.4.2  Operator Pembanding

Operator pembanding digunakan untuk membandingkan antara dua buah variabel. Operator pembanding sering pada saat pengecekan atau statement if, perulangan atau statemen for, while, do while. Tapi sekarang kita akan membahas dasar penggunaannya dulu.


3.4.3  Operator Logika

Operator logika merupakan operator yang membandingkan hubungan antara dua hasil dari operasi pembanding. Operator logika membandingkan logika hasil dari dua
apabila bernilai salah maka akan melakukan sebaliknya. Operator yang digunakan dalam operasi logika ada tiga yaitu :


Logika
Keterangan
&&
Logika dan (AND)
||
Logika or (ATAU)
!
Logika not (INGKARAN)
                                                Gambar 3.4.3 Operator Logika

3.4.4  Operator Penegasan

Komputer pada awalnya memang dibuat untuk membantu manusia dalam melakukan kalkulasi numerik, sehingga memang tidak mengejutkan bahwa bahasa pemrograman juga mengadopsi beberapa ‎elemen tertentu dari aljabar, termasuk di antaranya adalah penggunaan huruf atau kata sebagai ‎pengganti angka.‎ Berikut adalah contoh dari beberapa aljabar sederhana:

A = 3
B = 5
C = A + B

Bagi kita, persamaan di atas memang merupakan persamaan yang sama sekali tidak rumit, tetapi jika kita dapat membujuk komputer untuk menyelesaikan persamaan di atas, maka kita juga dapat ‎membujuknya untuk menyelesaikan persamaan atau masalah lainnya yang jauh lebih kompleks. Sebagai langkah pertama, kita akan mencoba untuk melakukan konversi aljabar di atas ke dalam sintaksis di dalam ‎bahasa C, dan bentuknya kira-kira seperti di bawah ini:
A = 3;
B = 5;
C = A + B;
Tiga baris kode di atas, tidaklah membentuk program C yang komplet, tapi contoh kode di atas dapat ditemukan dalam program C, mungkin program yang kita dapat buat sendiri. Kita bisa menulis kode di atas dengan menggunakan beberapa editor teks (semacam notepad atau WordPad) hingga menggunakan alat bantu khusus yang didesain untuk menyederhanakan pemrograman dengan menggunakan bahasa C, seperti [www.icsharpcode.net/OpenSource/SD #develop (SharpDevelop)] maupun Microsoft Visual C Express Edition. Setelah menuliskan kode di atas, maka langkah selanjutnya yang harus kita lakukan adalah mengubah kode di atas ke dalam bentuk berkas yang dapat dieksekusi (*.EXE) yang dapat kita jalankan.‎

Perbedaan yang signifikan antara bentuk pertama (aljabar) dan bentuk kedua (kode dalam bentuk bahasa C) adalah bahwa setiap baris di dalam bahasa C selalu diakhiri dengan menggunakan karakter titik koma (semicolon). Setiap baris yang diakhiri dengan karakter titik koma disebut dengan pernyataan program C (C program statement). Sebuah program komputer yang dibuat dengan menggunakan C umumnya terdiri atas macam-macam statemen. Huruf A, B dan C yang disebut di atas merupakan apa yang disebut sebagai variabel, dan setiap variabel merepresentasikan lokasi di dalam ‎memori di mana nilai dari variabel akan disimpan.


3.4.5  Operator Relasional

Operator relasional adalah binary operator yang digunakan untuk membandingkan suatu nilai. Dalam C, ada enam jenis operator relasional: lebih besar, lebih besar atau sama dengan, lebih kecil, lebih kecil atau sama dengan, sama dengan, dan tidak sama dengan.

            Pembandingan dilakukan dengan mengikuti logika Boolean, yaitu menghasilkan nilai numeric 1 jika relasinya benar atau numeric 0 jika relasinya salah. Operator relasional umumnya digunakan dalam struktur keputusan sebagai dasar penentu pernyataan yang akan dilaksanakan. Selain itu, juga digunakan sebagai kondisi pengujian pada struktur pengulangan.

3.5   Ekspresi

Ekspresi adalah gabungan antara oprator dan operand. Dari penggabungan operator dan operand ini dapat dibangun ekspresi-ekspresi yang lebih rumit. Namun demikian, bisa saja dalam bentuk yang paling sederhana, sebuah ekspresi hanya terdri dari sebuah operand. Sebagai contoh, perhatikan  ekspresi-ekspresi berikut :

-15
8+7
((x + y) / z) * 10) / 2 /* (x + ((y / z) * 10) / 2)) * /
a = b + 5
x = ++y  %  3
(x >= 0) || ((x % 2) == 0)
6 + (c = 3 + 8 ) – (d = 1 + 3)

            Seperti terlihat pada contoh-contoh diatas, sebuah ekspresi dapat berupa konstanta, variable, atau kombinasi keduanya. Beberapa ekspresi dapat pula berupa gabungan dari ekspresi-ekspresi yang lebih kecil (subekspresi), misalnya x + y adalah subekspresi pada ((x + y) / z ) * 10)/ 2. Demikian pula (x>=0),  (x % 2), ( c = 3+ 8 ), dan (d = 1 + 3) pada dua ekspresi terakhir.

            Sebuah sifat yang penting diperhatikan dalam C adalah bahwa setiap ekspresi memiliki sebuah nilai. Untuk memperoleh nilai suatu ekspresi, lakukanlah operasi-operasi menurut presedensi operator yang terdapat didalam ekspresi itu.



3.6    Operasi Input dan Output

3.6.1  Printf

Fungsi printf digunakan untuk menampilkan suatu keluaran pada layar. Perhatikan
penggunaan printf berikut ini :

#include
main()
{
int nilai=3;
printf(“Bahasa C menyenangkan \n”);
printf(“nilai = %d \n”,nilai);
}

            Fungsi printf yang pertama disertai dengan escape sequance yang berfungsi untuk pindah baris. Jadi dengan fungsi printf yang pertama maka kursor akan turun satu baris. Sedangkan fungsi printf yang kedua dimana terdapat format data %d berfungsi untuk menampilkan data dengan tipe integer. Jangan lupa dengan variabel yang menyimpan nilai tersebut harus disertakan setalah tanda petik terakhir.


Cara lain untuk menampilkan suatu keluaran ke layar adalah menggunakan fungsi puts. Tetapi fungsi puts hanya digunakan untuk menampilkan nilai string dan sudah mengandung line feed atau escape sequence ganti baris. Perhatikan contoh berikut :

#include
main()
{
puts(“Bahasa C menyenangkan ”);
puts(“Belajar bahasa C “);
}


Fungsi ini digunakan untuk menampilkan sebuah karakter saja dan tidak mengandung escape sequence “\n”. perhatikan contoh berikut :

#include
main()
{
Char a;
printf(“a = ”);scanf(“%c”,&a);
printf(“Data yang anda masukkan ”);
putchar(‘\n’);
putchar(a);
}

            Pada putchar yang petama kita ingin membuat program untuk ganti baris menggunakan “\n”. kita menggunakan tanda petik tunggal (‘) karena karakter dalam program akan dikenal jika diberi tanda petik tunggal. Fungsi putchar ini hanya bisa menampilkan satu buah karakter saja sehingga apapun nilai yang kita masukkan hanya
karakter yang pertama ditampilkan.




Jika kita ingin memasukkan data dari keyboard, kita dapat menggunakan fungsi scanf ini. Data selanjutnya akan didefenisikan sebagai data variabel. Jika fungsi scanf ini digunakan untuk membaca data dengan tipe array, karakter yang selanjutnya kita sebut dengan istilah string, maka fungsi ini hanya akan membaca data sampai ditemukan blank. Dengan demikian nilai setelah blank dianggap bukan lagi nilai dari variabel  yang  akan  mengisi  variabel   tersebut. Fungsi scanf lebih cocok  digunakan
untuk data-data numerik.
            Fungi scanf jika digunakan maka harus disertai operator penanda alamat & didepan nama variabel yang digunakan untuk menyimpan data tersebut. Jika tidak mempergunakan operator alamat & ini maka ketika data diinputkan akan muncul pesan error Segmentation fault. Sedangkan untuk data string tidak perlu menggunakan operator ini. Tetapi jika digunakan tidak menjadi masalah. Fungsi scanf biasanya digunakan bersama-sama dengan fungsi printf. Perhatikan contoh berikut :

#include
main()
{
char a[25];
int b;
printf(“a = ”);scanf(“%s”,a);
printf(“b = ”);scanf(“%d”,&b);
printf(“Data yang anda masukkan \n”);
printf(“a = %s \n”,a);
printf(“b = %d \n”,b);
}



Jika kita menggunakan fungsi scanf untuk membaca data yang bertipe string, maka data tersebut hanya akan dibaca sampai ditemukan spasi. Misalnya nama “naufal rasendriya” hanya kata “naufal” yang akan dibaca oleh program, sedangkan kata “resendriya” tidak terbaca karena sebelum kata tersebut program telah menemukan spasi yang mengakibatkan data ke varibel yang menyimpan nama dianggap selesai.
         
Untuk keperluan pemasukan data string yang panjang dipisahkan dengan spasi,
bahasa C menyediakan fungsi gets. Perhatikan contoh berikut ini :


#include
main()
{
char nama[25];
char alamat[50];
printf(“Nama : ”);gets(nama);
printf(“Alamat : ”);gets(alamat);
printf(“\n”);
printf(“Data yang anda masukkan \n”);
printf(“Nama : %s \n”,nama);
printf(“Alamat : %s \n”,alamat);
}

Jika ingin memasukkan sebuah nilai karakter ke variabel yang bertipe karakter maka kita dapat menggunakan perintah getchar. Perhatikan contoh program berikut ini :

#include
main()
{

Char nilai;
printf(“Nilai anda : ”);
nilai=getchar();
printf(“Nilai yang anda masukkan = %c \n”,nilai );

}

 
3.8    Pengulangan

Struktur pengulangan adalah struktur program yang digunakan untuk melaksanakan suatu pernyataan secara berulang-ulang. C memiliki tiga struktur pengulangan yaitu For, While, dan Do-while.


3.8.1   Pengulangan For

Pengulangan For merupakan pengulangan yang terdapat tiga ekspresi yang digunakan untuk mengendalikan proses pengulangan.

Bentuk umum struktur pengulangan
For (ekspr 1; ekpr 2; eksr 3)
            Pernyataan

#include<stdio.h>

int main()
{
     int i;
     for (i=5; i>0; i--)
     {
printf("saya suka belajar dasar-dasar pemrograman\n",i);
     }
     return 0;
}


3.8.2   Pengulangan While

Pengulangan while membentuk suatu struktur pengulangan yang akan mengulang pelaksanaan pernyataaan di dalam badan pengulangan selama ekspresi yang diperiksa bernilai benar.
Bentuk umum struktur pengulangan
While (ekspresi)
   Pernyataan

#include<stdio.h>

int main()
{
     int n = 5;
    
     while(n<7)
     {
          printf("n = %d\n", n);
          n++;
          printf("Sekarang n = %d\n", n);
     }
     return 0;
}


3.8.3   Pengulangan do-while

Pengulangan do-while merupakan pengujian dilakukan di bagian akhir setelah melalui badan pengulangan, sehingga badan pengulangan pastilah pernah dilaksanakan, paling sedikit satu kali.  

Bentuk umum struktur pengulangan
Do
    Pernyataan
While (ekspresi);

#include <stdio.h>

int main()
{
     int v = 1;
     do
     {
          printf("dasar-dasar pemrograman\n");
          v++;
     }
     while(v<=6);
     return 0;
}

 



BAB 4


CONTOH PROGRAM



4.1    Program pertama





4.2    Program kedua




4.3    Program ketiga



4.4    Program keempat





4.5    Program kelima




4.6    Program keenam



4.7    Program ketujuh





4.8    Program kedelapan




4.9    Program kesembilan



4.10    Program kesepuluh




 


BAB 5

PENUTUP


Demikianlah Makalah ini saya buat dengan sebaik-baiknya. Terima kasih buat Orang tua yang selalu mendukung saya baik materil maupun moril,dan terima kasih untuk abang dan kakak assisten laboratorium paket applikasi, juga terima kasih buat kawan-kawan yang telah membantu dalam mengerjakan makalah ini.semoga makalah ini dapat berguna buat kita semua dan buat angkatan ke depannya kelak.
lebih dan kurangnya saya mohon maaf, kepada abang dan kakak saya ucapkan terima kasih

Wassalammu’alaikum Wr.Wb

















5 komentar: