Sunday, May 13, 2018

Pengantar Bahasa C



1.1  Pengenalan Pemrograman C/C++
C++ adalah bahasa pemrograman computer. Perbedaan Antara Bahasa pemrograman C dan C++ meskipun bahasa-bahasa tersebut menggunakan sintaks yang sama tetapi mereka memiliki perbedaan, C merupakan bahasa pemrograman prosedural, dimana penyelesaian suatu masalah dilakukan dengan membagi-bagi masalah tersebut kedalam sub-submasalah yang lebih kecil, Selain itu, C++ merupakan bahasa pemrograman yang memiliki sifat pemrograman beorientasi objek Untuk menyelesaikan masalah, C++ melakukan langkah pertama dengan menjelaskan class-class yang merupakan anak class yang dibuat sebelumnya sebagai abstraksi dari object-object fisik, Class tersebut berisi keadaan object, anggota-anggotanya dan kemampuan dari objectnya, Setelah beberapa Class dibuat kemudian masalah dipecahkan dengan Class.

2.2 Dasar Pemrograman C++ dan Operasi Input/Output
2.2.1 Input/Output
Input dan ouput data dalam bahasa C hanya berkisar antara input yang diberikan oleh keyboard yang selanjutnya akan di tampilkan (Output) di layar monitor. Dalam bahasa C banyak format untuk meng-input dan meng-output tergantung pada penggunaan file header yang digunakan, input dan output dasar yang sering digunakan dalam bahasa pemrograman khususnya bahasa C dengan format yang berbeda-beda.
Dibawah ini adalah berbagai macam fungsi output yang ada di dalam bahasa C :
1.      printf
Fungsi printf() berguna untuk menampilkan semua jenis data baik number, string, atau karakter.
2.      puts
Ada cara lain untuk menampilkan suatu keluaran(output) ke layar yaitu dengan menggunakan fungsi puts. Fungsi puts() digunakan untuk menampilkan data yang bertipe string dan secara otomatis akan pidah baris (new line).
3.      putchar
Fungsi ini digunakan untuk menampilkan sebuah karakter saja dan tidak mengandung escape sequence “\n”. Fungsi putchar ini hanya bisa menampilkan satu buah karakter saja sehingga apapun nilai yang kita masukkan hanya karakter pertama yang akan ditampilkan.
4.      cout
Dalam C++, perintah cout digunakan untuk menampilkan suatu informasi ke piranti output (layar).

Sedangkan untuk fungsi input dalam C++ adalah sebagai berikut :
1.      scanf
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(space). 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.Fungsi scanf biasanya digunakan bersama-sama dengan fungsi printf. Fungsi scanf() berguna untuk menginput data baik berupa bilangan, karakter, ataupun kalimat secara terformat. Berikut format-format yang digunakan untuk scanf() :
%c            : Membaca sebuah karakter (character)
%s            : Membaca sebuah string (string)
%i, %d     : Membaca sebuah bilangan bulat (integer, desimal)
%f, %e     : Membaca sebuah bilangan pecahan (real, float)
%o           : Membaca sebuah bilangan octal
%x           : Membaca sebuah bilangan heksadesimal
%u           : Membaca sebuah bilangan tak bertanda
2.      gets
Jika kita menggunakan fungsi scanf untuk membaca data yang bertipe string, maka data tersebut hanya akan dibaca sampai ditemukan spasi. Untuk keperluan pemasukan data string yang panjang dipisahkan dengan spasi, bahasa C menyediakan fungsi gets.
3.      getchar
Jika ingin memasukkan sebuah nilai karakter ke variabel yang bertipe karakter maka kita dapat menggunakan perintah getchar.
4.      cin
Dalam C++, perintah cin digunakan untuk menginput suatu nilai dari suatu piranti masukan (keyboard) untuk selanjutnya di proses oleh program.

2.2.2 Variabel
Variabel adalah suatu pengenal yang digunakan untuk mewakili suatu nilai tertentu didalam proses program. Berbeda dengan konstanta yang nilainya selalu tetap,nilai dari suatu variable bisa diubah-ubah sesuai kebutuhan. Nama dari suatu variable dapat ditentukan sendiri oleh pemrogram dengan aturan sebaga berkut :
a       - Terdiri dari gabungan huruf dan angka dengan karakter pertama huruf. Bahasa C bersifat case-            sensitive artinya huruf besar dan kecil dianggap berbeda.
b       - Tidak boleh mengandung spasi.
c       - Tidak boleh mengandung symbol-symbol khusus,kecuali garis bawah(underscore). Yang termasuk      symbol khusus yang tidak diperbolehkan antara lain : $, ?, %, #, !, &, *, (, ), -, +,dsb.
d        -  Panjangnya bebas tetapi hanya 32 karakter pertama yang terpakai.
Variabel adalah nama yang digunakan utnuk menyimpan suatu nilai, yang mana nilai tersebut dapat berubah-ubah selama proses program. Variable harus dideklarasikan terlebih dahulu agar dapat digunakan didalam sebuah program. Deklarasi berguna untuk menunjukan sifat dari data yang disimpan dalam variable tersebut.

Bentuk umum pendeklarasi variable:
Nama_tipe nama_variabel;

2.2.3 Konstanta
Konstanta nilainya selalu tetap. Konstanta harus didefinisikan terlebih dahulu diawal program. Konstanta dapat bernilai integer,pecahan,karakter,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.       \a         : untuk bunyi bell(alert)
b.      \b         : mundur satu spasi(Backspace)
c.       \f          : ganti halaman(form feed)
d.      \n         : ganti baris baru(new line)
e.       \r          : ke kolom pertama, baris yang sama
f.        \v         : tabulasi vertical
g.      \0         : nilai kosong(null)
h.      \’          : karakter petik tunggal
i.        \”         : karakter petik ganda
j.        \\          : karakter garis miring

 2.2.4 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, namun jika keduanya bertipe float maka akan menghasilkan nilai 2.5000000. pemilihan tipe data yang tepat akan membuat proses operasi data menjadi lebih eisien dan efektif.
Dalam bahasa C terdapat 5 tipe data dasar yaitu :
Tabel 2.2.4 Macam-macam tipe data
No.
Tipe data
Ukuran
Range(Jangkauan)
Format
Keterangan
1
Char
1 byte
-182 s/d 127
%c
Karakter/string
2
Int
2 byte
-32768 s/d 32767
%i, %d
Integer/bilangan bulat
3
Float
4 byte
-3.4E-38 s/d 3.4E+38
%f
Float/Bilangan pecahan
4
Double
8 byte
-1.7E-308 sd/1.7+308
%lf
Pecahan presisi ganda
5
Void
0 byte


Tidak bertipe
     


2.2.5 Pengenal (identifier)
Pengenal (identifier) merupakan nama yang biasa digunakan untuk variabel, konstanta, fungsi atau obyek yang lain yang didefinisikan oleh pemrograman.
Aturan yang berlaku bagi pengenal :
Pengenal haruslah di awali dengan huruf (A..Z, a..z) atau karakter garis bawah (_). Selanjutnya dapat berupa huruf, digit (0..9) atau karakter garis bawah atau tanda dollar ($).
Panjang pengenal boleh terdiri lebih dari 32 karakter, akan tetapi hanya 32 karakter pertama yang akan di anggap berarti.
Contoh :
Jumlah
Jumlah (berbeda dengan jumlah)
Total_per_tahun
Harga_jual$

2.2.6  Kata Kunci (reserved word)
Untuk menghindari kesalahan, pengenal tidak boleh menggunakan nama yang tergolong sebagai kata kunci. Adapun kata kunci tersebut adalah sebagai berikut :
Asm                      do                    if                      signed              volatile
Auto                      double             int                    sizeof               while
Break                    else                  interrupt          static                _cs
Case                     enum               long                 struct               _ds
Cdecl                    extern              near                 switch              _es
Char                     far                    pascal              typedef             _ss
Const                    float                 register            union               huge
Continue               for                    return              unsigned          void
Default                 goto                 short               

2.2.7   Operator Aritmatika
Tabel 2.2.7 Operator Aritmatika
Yang tergolong operator binary
Yang tergolong operator unary
-
Tanda Minus
+
Tanda Plus
*
Perkalian
/
Pembagian
%
Sisa Pembagian (modulus)
+
Penjumlahan
-
Pengurangan

2.3    Pengambilan Keputusan Dengan If Else
2.3.1        Operator Relasi
Operator Relasi biasa digunakan untuk membandingkan 2 buah nilai. Hasil pembandingan berupa keadaan benar atau salah. Adapun operator relasi dalam Bahasa C, sebagai berikut :
>               Lebih dari
>=             Lebih dari atau sama dengan
<               Kurang dari
<=             Kurang dari atau sama dengan
= =            Sama dengan
!=              Tidak sama dengan

2.3.2        Operator Logika
Operator logika biasa digunakan untuk menghubungkan ungkapan relasi. Adapun operator logika dalam Bahasa C, sebagai berikut :
&&           dan (AND)
||                atau (OR)
!                tidak (NOT)

2.3.3   Prioritas Operator Logika dan Relasi
Tertinggi   !
                 > >= < <=
                 = = ! =
                 &&
Terendah  ||


  2.3.4        Pernyataan If
                    Pernyataan if  mempunyai bentuk penggunaan yang bermacam-macam sesuai dengan kasus pengambilan keputusan yang dikerjakan :


If Tunggal

If – Jamak

Nested - If

if (kondisi)
pernyataan


if (kondisi)
{
pernyataan-1
pernyataan-2
}
else
if
{
pernyataan-3
pernyataan-4
}



if (kondisi-1)
if (kondisi-2)
{
pernyataan-1
}
else
if (kondisi-3)
pernyataan-1



If-Else

if (kondisi)
pernyataan-1
else
pernyataan-2




2.4    Pengambilan Keputusan Dengan Switch
         2.4.1 Pernyataan swicth
Pernyataan switch merupakan pernyataan yang dirancang khusus untuk menangani pengambilan keputusan yang melibatakan sejumlah alternatif.
Bentuk umum pernyataan switch :
switch (ekspresi)
     {
case konstanta-x:
              pernyataan-x
              break;
          default:
              pernyataan-n
}

2.5    Perulangan
Pada Bahasa C terdapat 3 buah struktur loop. Pernyataan yang dipakai berupa while,do-while, dan for. Berhubungan dengan penanganan loop ada beberapa pernyataan lain yang berfungsi untuk keluar dari loop yaitu break, goto, dan continue.

2.5.1        Do-While
a.      Tahapan Proses
Mula-mula pernyataan dijalankan dulu, kemudian kondisi di uji, jika kondisi bernilai benar, maka pernyataan dijalankan lagi dan jika kondisi bernilai salah maka prnyataan tidak dijalankan lagi (berhenti)


b.      Ilustrasi



a.      Sintaks
do
pernyataan
while (kondisi)

2.5.2        While
a.      Tahapan Proses
Dari awal langsung dilakukan tes kondisi jika kondisi bernilai benar maka menjalankan pernyataan dan jika kondisi bernilai salah maka keluar dari loop. Jadi pada perulangan menggunakan while memungkinkan sebuah pernyataan tidak dijalankan sama sekali.

b.      Ilustrasi


a.      Sintaks
while (kondisi)
pernyataan

Yang membedakan antara perulangan menggunakan do-while dan while, biasanya adalah pada pernyataan while harus diberikan terlebih dahulu inisialisasi terhadap variabel yang akan dijadikan sebagai kondisi dari while.

2.5.3        Pernyataan for
a.      Tahapan Proses
Pernyataan akan dijalankan mulai dari nilai awal (ungkapan1) dan keluar dari loop jika sudah sesuai dengan nilai akhir (ungkapan2).
b.      Sintaks
for (ungkapan1; ungkapan2; ungkapan3)
pernyataan
Ungkapan1® digunakan untuk memberikan inialisasi terhadap variabel pengendali loop.
Ungkapan2® digunakan sebagai kondisi untuk keluar dari loop.
Ungkapan3® digunakan sebagai pengatur kenaikan nilai variabel pengendali loop.

2.6    Fungsi
2.6.1        Tujuan Fungsi
Fungsi adalah kumpulan baris perintah (blok program) yang di buat untuk melaksanakan tugas tertentu, yang tujuannya adalah :
1.        Program menjadi lebih terstruktur, sehingga mudah untuk dipahami, mencari kesalahan kode dan dikembangkan lebih lanjut.
2.        Untuk mengurangi penulisan kembali kode yang telah dibuat.
Fungsi memerlukan masukan yang dinamakan argumen atau parameter, yang akan diolah oleh fungsi. Hasil akhir dari sebuah fungsi adalah sebuah nilai berupa nilai keluaran fungsi.

                     Tipe_fungsi nama_fungsi (parameter)
                     Deklarasi parameter
                      {
                          Bagian fungsi
                       }

Keterangan :
Tipe_fungsi                 = tipe keluaran fungsi
Nama_fungsi               = nama fungsi
Parameter                    = daftar parameter
Deklarasi parameter    = deklarasi variabel
Bagian fungsi              = tubuh / isi fungsi


2.6.2        Cara Melewatkan Parameter ke dalam Fungsi
Ada dua cara yang dapat dilakukan untuk melewatkan parameter, yaitu :
1.    Pemanggilan dengan nilai (call by value)
Nilai dari parameter actual akan disalin dalam parameter formal, sehingga nilai pada parameter actual tidak bisa berubah sekalipun nilai parameter formalnya mengalami perubahan.

1.    Pemanggilan dengan referensi (call by reference)
Dengan melewatkan alamat dari suatu varibel kedalam fungsi. Dengan cara ini isi dari sebuah variabel dapat di ubah di luar fungsi dengan proses perubahan di dalam fungsi.

2.7         Array
Array merupakan koleksi data dengan setiap elemen data menggunakan nama yang sama dan masing-masing elemen data bertipe sama. Setiap komponen/elemen array dapat diakses dan dibedakan melalui indeks array.
2.7.1        Array Berdimensi Satu
Pendeklarasian dengan bentuk umum berupa :

Tipe nama_var[ukuran]

Contoh deklarasi :
float nilai[5];

               Bentuk pengaksesan :

                                         nama_var[indeks]

2.7.2        Array Berdimensi Dua
               Pendeklarasian dengan bentuk umum berupa :

                  Tipe nama_var[ukuran1][ukuran2]

Contoh deklarasi :
float data_nilai[3][4]

       Bentuk pengaksesan :

                                         nama_var[indeks pertama][indeks kedua]

2.7.3        Array Berdimensi Tiga (banyak)
                 Pendeklarasian dengan bentuk umum berupa :

                                        Tipe nama_var[ukuran1][ukuran2]…..[ukuran n]

Contoh deklarasi :
int data [2][3][5];

                  Bentuk pengaksesan :

                                                    nama_var[indeks pertama][indeks kedua]…..[indeks ke-n]

2.8         String
String merupakan bentuk data yang bisa di pakai dalam bahasa pemrograman untuk keperluan menampung dan memanipulasi data teks, misalnya untuk menampung (menyimpan) suatu kalimat. Pada bahasa C, string bukanlah merupakan tipe data tersendiri, melainkan hanyalah kumpulan dari nilai-nilai karakter yang berurutan dalam bentuk array berdimensi satu.

2.8.1        Variabel String
Variabel string adalah variabel yang dipakai untuk menyimpan nilai string.
Char nam_var[size]
Misalnya :
Char alamat[30];
Merupakan instruksi untuk mendeklarasikan variabel string dengan panjang maksimal 30 karakter (termasuk karakter TUBAN). Deklarasi tersebut sebenarnya tidak lain merupakan deklarasi array bertipe char.

2.8.2        Input Output Data String
Pemasukan data string ke dalam suatu variabel biasa dilakukan dengan fungsi gets() atau scanf(). Bentuk umum pemakainnya adalah sebagai berikut :
#include<stdio.h>
Gets(alamat_array);
atau
#include<stdio.h>
Scanf(“%s”,alamat_array);


2.8.3        Menampilkan Isi Variabel String
Untuk menampilkan isi variabel string, fungsi yang digunakan adalah puts() atau printf(). Bentuk umum pemakainnya adalah sebagai berikut :

#include<stdio.h>
puts(var_string);
atau
#include<stdio.h>
Printf(“%s”,var_string”);

2.8.4        Fungsi-fungsi Mengenai String
Fungsi strcpy() untuk menyalin nilai string
Fungsi strlen() untuk mengetahui panjang nilai string
Fungsi strcat() untuk menggabung nilai string
Fungsi strcmp() untuk membandingkan dua nilai string
Fungsi strchr() untuk mencari nilai karakter dalam string

2.9         Struktur
Struktur adalah pengelompokan variabel-variabel yang bernaung dalam satu nama yang sama. Berbeda dengan array yang berisi kumpulan variabel-variabel yang bertipe sama dalam satu nama, maka suatu struktur dapat terdiri atas variabel-variabel yang berbeda tipenya dalam suatu nama struktur. Struktur biasa di pakai untuk mengelompokkan beberapa informasi yang berkaitan menjadi sebuah kesatuan (dalam bahasa PASCAL, struktur disebut dengan record).

2.9.1        Mendefinisikan dan Mendeklarasikan Struktur
Variabel-variabel yang memebentuk suatu struktur, selanjutnya disebut sebagai elemen dari struktur atau field. Dengan demikian memungkinkan suatu struktur dapat berisi elemen-elemen data berbeda tipe seperti char, int, float, double, dan lain-lain.
Contoh pendefinisian sebuah struktur adalah informasi data tanggal (date) yang berisi :

struct date
         
            int  month;
                            int  day;
                            int  year;  
                 };

2.9.2        Mengakses Elemen Struktur
Elemen dari suatu variabel struktur dapat diakses dengan menyebutkan nama variabel struktur diikuti dengan operator titik(‘.’) dan nama dari elemen strukturnya. Cara penulisannya sebagai berikut :
                 
               variabel_struktur.nama_field

Untuk memberikan data nama ke field name dari variabel student di atas, maka pernyataan yang diperlukan misalnya adalah :
            
strcpy(student.name,”IQBAL”);

No comments:

Post a Comment