1. variable identifier dan_tipe_data

9
1 BAB III VARIABEL, IDENTIFIER DAN TIPE DATA Pertemuan Minggu III Alokasi Waktu : 2 Jam Pertemuan Standar Kompetensi : Mahasiswa dapat membuat program komputer sederhana dengan menggunakan bahasa C Kompetensi Dasar : Memahami penamaan variabel dan macam-macam tipe data, operator dalam bahasa C Indikator : Mahasiswa dapat memahami konsep variabel dalam bahasa C. Mahasiswa memahami berbagai macam tipe data dalam bahasa C 1.1. IDENTIFIER Semua angka dan huruf yang digunakan dalam program komputer disimpan didalam unit memori. Secara konseptual, lokasi memori didalam unit memori dianalogikan seperti kamar-kamar yang terdapat dalam sebuah hotel. Layaknya kamar hotel setiap memori dalam unit memori memiliki nomor kamar yang berbeda antara satu dengan yang lain. Sebelum muculnya bahasa pemrograman tingkat tinggi seperti C, lokasi memori secara individu di ketahui dari alamatnya, sebagai contoh untuk menyimpan nilai integer 10 dan 100 dalam unit memori di simpan dalam alamat memori 1652 dan 2548. dari ilustrasi diatas maka muncul suatu algoritma untuk menginisialiasai nilai tersebut di dalam unit memori sebagai berikut : Dalam bahasa tingkat tinggi penempatan suatu nilai dalam alamat memori tertentu diwakili oleh sebuah nama yang diambil dari bahasa alami. Penamaan simbol yang mewakili alamat memori disebut sebagai variabel. Menganalogikan dengan sebuah komplek perumahan, konsep variabel ini serupa dengan pemasangan papan nama pemiliki rumah nomor sekian. Dalam kehidupan sehari-hari penunjukan sebuah rumah akan lebih mudah dengan menunjuk nama pemiliknya misalnya rumah Bapak Hadi atau rumah Bapak Eko dari pada menyebutkan nomor rumahnya misalnya rumah nomor 365A atau rumah noor 101B. Dengan menggunakan variabel ini maka proses penyimpanan nilai 10 dan 100 di dalam unit memori menjadi sebagai berikut: N1 = 10 N2 = 100 Penempatan Nilai pada Memori Komputer Gambar 3.1 Letakkan nilai 100 pada lokasi memori 2548 Letakkan nilai 10 pada lokasi memori 1652 165 254 10 10

Upload: roziq-bahtiar

Post on 13-Jan-2015

194 views

Category:

Education


1 download

DESCRIPTION

 

TRANSCRIPT

Page 1: 1. variable identifier dan_tipe_data

1

BAB III VARIABEL, IDENTIFIER DAN TIPE DATA

Pertemuan Minggu III

Alokasi Waktu : 2 Jam Pertemuan

Standar Kompetensi : Mahasiswa dapat membuat program komputer sederhana dengan menggunakan bahasa C

Kompetensi Dasar : Memahami penamaan variabel dan macam-macam tipe data, operator dalam bahasa C

Indikator : Mahasiswa dapat memahami konsep variabel dalam bahasa C.

Mahasiswa memahami berbagai macam tipe data dalam bahasa C

1.1. IDENTIFIER Semua angka dan huruf yang digunakan dalam program komputer disimpan didalam unit memori. Secara konseptual, lokasi memori didalam unit memori dianalogikan seperti kamar-kamar yang terdapat dalam sebuah hotel. Layaknya kamar hotel setiap memori dalam unit memori memiliki nomor kamar yang berbeda antara satu dengan yang lain. Sebelum muculnya bahasa pemrograman tingkat tinggi seperti C, lokasi memori secara individu di ketahui dari alamatnya, sebagai contoh untuk menyimpan nilai integer 10 dan 100 dalam unit memori di simpan dalam alamat memori 1652 dan 2548. dari ilustrasi diatas maka muncul suatu algoritma untuk menginisialiasai nilai tersebut di dalam unit memori sebagai berikut :

Dalam bahasa tingkat tinggi penempatan suatu nilai dalam alamat memori tertentu diwakili oleh sebuah nama yang diambil dari bahasa alami. Penamaan simbol yang mewakili alamat memori disebut sebagai variabel. Menganalogikan dengan sebuah komplek perumahan, konsep variabel ini serupa dengan pemasangan papan nama pemiliki rumah nomor sekian. Dalam kehidupan sehari-hari penunjukan sebuah rumah akan lebih mudah dengan menunjuk nama pemiliknya misalnya rumah Bapak Hadi atau rumah Bapak Eko dari pada menyebutkan nomor rumahnya misalnya rumah nomor 365A atau rumah noor 101B. Dengan menggunakan variabel ini maka proses penyimpanan nilai 10 dan 100 di dalam unit memori menjadi sebagai berikut:

N1 = 10 N2 = 100

Penempatan Nilai pada Memori Komputer

Gambar 3.1

Letakkan nilai 100 pada lokasi memori 2548 Letakkan nilai 10 pada lokasi memori 1652

165 254

10 10

Page 2: 1. variable identifier dan_tipe_data

2

N1 dan N2 adalah nama variabel yang diberikan oleh programer untuk menyinpan nilai 10 dan 100 ke dalam memori yang lokasinya berada pada 1652 dan 2548. Dengan konsep penamaan ini maka seorang programer tidak perlu tahu dimana tepatnya nilai-nilai tersebut disimpan, seorang programer hanya perlu untuk mengetahui tentang nama-nama yang sudah di deklarasikan untuk digunakan pada saat pengembangan program selanjutnya.

Analogi dalam bahasa matematika seperti x = y + z. x, y, dan z adalah nama-nama yang diberikan untuk mewakili nilai tertentu yang diwakilinya. Identifier (Pengenal) merupakan nama yang biasa digunakan untuk suatu peubah (variable), konstanta, fungsi, atau obyek lain yang didefinisikan oleh pemrogram. Ketika menggunakan identifier dalam program, perlu identifikasi awal untuk masing-masing variabel tersebut. Aturan yang berlaku untuk penamaan identifier adalah:

Pengenal harus diawali dengan huruf (A .. Z, a .. z) atau karakter garis bawah ( _ ). Selanjutnya dapat berupa huruf, angka (0 .. 9), karakter garis bawah, atau simbol seperti dolar

($), %, dll. Pengenal tidak boleh mengandung spasi Panjang pengenal boleh terdiri lebih dari 32 karakter, akan tetapi hanya 32 karakter pertama

yang dianggap berarti. Contoh: Jumlah

jumlah nilai2 total_per_bulan harga_jual$

Karakter garis-bawah biasa digunakan untuk memudahkan pembacaan terhadap suatu pengenal, terutama yang terdiri lebih dari satu kata, karena nama suatu pengenal tidak boleh dipisahkan spasi. Untuk menghindari kesalahan, pengenal tidak boleh menggunakan nama yang tergolong sebagai kata kunci (seperti main), dan sebaiknya tidak menggunakan pengenal yang digunakan untuk nama fungsi, konstanta, variabel atau obyek lain yang digunakan oleh pustaka-pustaka bahasa pemrograman. Contoh idenfier yang dijadaikan pustaka oleh bahasa pemrograman C.

Tabel 3.1 Contoh pustaka C No Bahasa C

1 Case

2 Enum

3 Class

4 Const

5 Catch

1.2. PEUBAH (VARIABLE) Peubah atau variabel dalam program digunakan untuk menyimpan suatu nilai, dan nilai yang ada padanya dapat diubah-ubah selama eksekusi program berlangsung. Peubah yang akan digunakan dalam program harus dideklarasikan terlebih dahulu. Pengertian deklarasi disini berarti memesan memori dan menentukan jenis data yang dapat disimpan di dalamnya. Bentuk umum pendeklarasian suatu peubah adalah:

tipe nama_peubah;

Page 3: 1. variable identifier dan_tipe_data

3

Pada pendeklarasian peubah, daftar-peubah dapat berupa sebuah peubah atau beberapa peubah yang dipisahkan dengan tanda koma, contoh:

int jumlah; float harga_per_satuan, total_harga;

Pernyataan deklarasi yang pertama menyatakan bahwa jumlah adalah nama peubah/vaiabel dan tipe dari perubah terseut adaah int (integer = digunakan untuk menyimpan bilangan bulat), sedangkan pernyataan kedua menyatakan bahwa harga_per_satuan dan total_harga adalah nama peubah yang bertipe float (untuk menyimpan bilangan pecahan), tanda koma (,) diperuntukan sebagai pemisah anatar peubah. Pendeklarasian peubah dalam baris ke dua di atas dapat dideklarasikan menjadi sebagai berikut:

float harga_per_satuan; float total_harga;

1.3. TIPE DATA Pada umumnya, program komputer bekerja dengan memanipulasi obyek (data di dalam memori. Obyek akan diprogram bermacam-macam jenis atau tipenya, misalnya nilai numeric, karakter, string, dan rekaman (record). Suatu tipe menyatakan pola penyajian data dalam komputer. tipe data dikelompokan menjadi dua macam. Tipe dasar dan tipe bentukan. Tipe dasar adalah tipe yang dapat langsung dipakai, sedangkan tipe bentukan dibentuk dari tipe dasar atau dari tipe bentukan lain yang sudah didefinisikan. (Munir:2001)

1.3.1. Tipe Dasar Dalam dunia pemrograman yang termasuk tipe dasar adalah: bilangan logika, bilangan bulat, bilangan riil, dan karakter.

Bilangan Logika Bilangan logika dinyatakan dalam bentuk angka biner yaitu 1 dan 0. bilangan ini kemudian diterjemahkan kedalam bahasa pemrograman 1 jika pernyataan tersebut bernilai benar (true) dan 0 jika pernyataan tersebut bernilai salah (false). Dalam pemrograman tipe untuk menyatakan bilangan logika dinyatakan dengan boolean. Jika a dan b adalah suatu peubah (variabel) yang bertipe boolean, maka hasil operasi a dan b dengan operator boolean tersebut diberikan oleh tabel kebenaran berikut

Tabel 3.2. Hasil Operasil dari Tipe Data Bolean

No A B A and b A or b

1 True True True True

2 False True False True

3 True False False True

4 False False False False

Bilangan Bulat Bilangan bulat adalah bilangan yang tidak mengandung pecahan desimal, seperti 1, 2, 5, 78, 445, -87, dan sebagainya. tipe untuk menyatakan bilangan bulat dinyatakan dengan integer (int). Rentang nilai tipe data integer adalah dari minus tak hingga sampai plus tak hingga. Akan tetapi dalam implementasinya tipe ini mempunyai keterbatasan digit bilangan. Ketika suatu data diimplementasikan bertipe integer maka data tersebut tidak boleh mengandung bilangan pecahan.

Page 4: 1. variable identifier dan_tipe_data

4

Pada kompilator Turbo Pascal tipe integer dapat direpresentasian ke dalam 4 macam tipe, yaitu byte, shortint, word, integer, dan longint.

Tabel 3.3. Daftar variasi tipe bilangan bulat (integer)

No Tipe Rentang Nilai Format

1 Byte 0 . . . 255 Unsigned 8 bit

2 Shortint -128 . . . 127 Signed 8 bit

3 Word 0 . . . 65535 Unsigned 16 bit

4 Integer -23768 . . . 32767 Signed 16 bit

5 Longint -2147483648 . . . 2147483647 Signed 32 bit

Sebagai contoh, dua buah peubah X dan Y masing-masing didefinisikan bertipe byte dan integer dalam Pascal. Var X : byte Y : integer Sebagai konsekuensi pendifinisian tipe X dan Y, maka peubah X tidak dapat dioperasikan untuk nilai-nilai diatas 255 atau dibawah 0. begitu juga peubah Y tidak dapat bekerja pada nilai-nilai diatas 32767.

Bilangan Riil Bilangan riil adalah bilangan yang mengandung nlai pecahan, misalnya 3,56 , 100,6 , 100 E-6 dan sebagainya. Tipe untuk menyatakan bilangan riil dinyatakan dengan real untuk bahasa pascal dan float untuk bahasa C. Sebagai contoh pada kompilator turbo pascal bilangan riil direpresentasikan dengan 4 macam tipe yaitu real, single, double, dan extended.

Tabel 3.4. Daftar variasi tipe bilangan floating point (float) No Tipe Rentang Nilai Format

1 Real 2.9 x 10-39 . . . 1.7 x 1018 6 byte

2 Single 1.5 x 10-45 . . . 3.4 x 1038 4 byte

3 Double 5.0 x 10-324. . . 1.7 x 10308 8 byte

4 Extended 3.4 x 10-4932... 1.1 x 104932 10 byte

Karakter Karakter adalah huruf alfabet, tanda baca, simbol, dan angka. Tipe untuk menyatakan karakter dengan char. Tetapan untuk data bertipe karakter harus diapit oleh tanda petik tunggal contoh, ’h’, ’Y’, dan sebagainya, ’9’ adalah karakter akan tetapi 9 adalah bertipe integer atau riil.

1.3.2. Tipe Bentukan Tipe bentukan adalah tipe yang didefinisikan sendiri oleh programmer. Tipe bentukan disusun oleh satu oleh lebih tipe dasar. Tipe bentukan diantaranya String dan Rekaman (record)

String String adalah deretan karakter dengan panjang deretan yang tertentu jumlahnya. Contohnya ’Jurusan Teknik Elektro’, ’G 2345 HB’. Tipe untuk menyatakan string adalah string atau char [ .. .].

Page 5: 1. variable identifier dan_tipe_data

5

Rekaman Rekaman disusun oleh satu atau lebih field. Tiap field menyimpan data dari tipe dasar tertentu atau dari tipe bentukan lain yang sudah didefinisikan sebelumnya. Nama rekaman idefinisika oleh programmer sendiri. Tipe untuk menyatakan rekaman adalah record atau typedef.

Contoh pendefinisian rekaman dalam bahasa pascal

Type matakuliah : record < Kode_MK : string, Nama_MK : string, Nilai : char > Contoh pendefinisian rekaman dalam bahasa C Typedef struct { int NIM; char nama[25]; int Nilai; } Mahasiswa; Penggunaan berbagai macam tipe data Contoh 3.1 #include <stdio.h> #include <conio.h> main( ) { int a = 3; int b = 3; int c = a + b; printf (“Hasil dari penjumlahan antara a dan b adalah : %d”,c); } Pada program 3.1 semua data direpresentasikan dengan tipe integer. Variable yang bertipe integer hanya dapat menampung data dalam bentuk bilangan bulat, jika variable tersebut di berikan nilai 3.5 maka nilai decimal dibelangan angka 3 yaitu 0.5 tidak akan pernah diperhitungkan. Coba saja???. Contoh 3.2 #include <stdio.h> #include <conio.h> main( ) { float n1 = 2.5; int n2 = 2; float n3 = n1 * n2; printf (“Hasil dari perkalian antara n1 dan n2 adalah : %f”,n3); } Pada program 3.2 variabel – variablenya menggunakan tipe data integer dan float. N1 bertipe float, dengan tipe data ini maka varibel tersebut dapat menampung nilai decimal. N3 juga bernilai float, dengan memberikan tipe data float pada n3 maka hasil perkalian antara n1 dan n2 dapat menghasilkan nilai yang tepat, jika n3 diberi tipe integer kira-kira apa yang dihasilkan???. Contoh 3.3 #include <stdio.h> #include <conio.h> main( ) {

Page 6: 1. variable identifier dan_tipe_data

6

printf(“Nama siswa : %s\n, “Feddy”); printf(“NIM : %d\n”, 10029); printf(“Nilai : %f Predikat : %c\n”, 86.6, ‘A’); } Program 3.3 mendemonstrasikan penggunaan berbagai macam tipe data yang digunakan secara bersamaan dalam sebuah program, perlu dijadikan perhatian khusus setiap tipe data mempunyai symbol masing-masing dimana data tersebut akan ditampilkan sesuai dengan tipe datanya. Int (integer) %d Float (floating point) %f Char (character) %c dsb……..

1.4. OPERATOR DAN FUNGSI MATEMATIKA Mengenal operator dan fungsi matematika dalam memahami konsep pemrograman terstruktur merupakan hal mendasar dalam memahami konsep pemrograman secara keseluruhan. Beberapa buku pemrograman akan mengawali contoh programnya dengan membuat program Hello World atau dengan program aritmatika sederhana. Berikut daftar operator aritmatika yang digunakan dalam pemrograman bahasa C

Tabel 3.5. Simbol Operator Aritmatika dalam C

Simbol Arti

+ Penambahan

- Pengurangan

* Perkalian

/ Pembagian

% Sisa Hasil Bagi (Modulus)

++ Increment

-- Decrement

Beberapa operasi matematika yang agak komplek oleh C dibuatkan beberapa fungsi sehingga pengguna tinggal memanfaatkan fungsi tersebut dalam pemerograman, beberapa fungsi matematika yang disediakan oleh C :

Tabel 3.6 Fungsi matematika yang disediakan C

Fungsi Arti

Pow() Fungsi untuk kuadrat

Abs() Fungsi untuk mendapatkan nilai absolut

Log() Fungsi untuk mendapatkan nilai logaritma

Sqrt() Fungsi untuk mendapatkan nilai akar kuadrat

Sin() Fungsi untuk mendapatkan nilai Sinus

Cos() Fungsi untuk mendapatkan nilai Cosinus

Page 7: 1. variable identifier dan_tipe_data

7

Tan() Fungsi untuk mendapatkan nilai tangen

Bentuk operator lain yang dikenal dalam pemrograman C adalah operator relasional dan operator logika. Operator relasional melambangkan hubungan antara dua entitas, Entitas tersebut bisa berupa variabel, konstanta maupun fungsi, Nilai dari kedua hubungan tersebut hanya bernilai dua yaitu TRUE atau FALSE. Adapun Operator operasional dalam pemrograman berbentuk sebagai berikut :

Tabel 3.7. Simbol Operator Relasional yang digunakan dalam C

Operator Arti

> Lebih Besar

>= Lebih Besar atau Sama Dengan

< Lebih Kecil

<= Lebih Kecil atau Sama Dengan

== Sama Dengan

!= Tidak Sama Dengan

Operator tersebut akan mempunyai dua nilai True atau False jika digunakan dalam operasi matematika, sebagai contoh 3 > 1 : True , 5 < 8 : True , 3==5 : False , 3!=5 : True

Operator logika juga merupakan operator yang menyatakan kondisi True atau False dengan kondisi logika tertentu. Adapun operator lagika dalam pemrograman berbentuk sebagai berikut :

Tabel 3.8. Simbol Operator Logika dalam C

Operator Arti

&& Logika AND

|| Logika OR

! Logika NOT

Pengayaan Latihan 3.1 #include <stdio.h> #include <conio.h> main() { int roti = 5; int kalori = 125; /* Calories per cookie */ int total_dimakan = 0; /* Total cookies eaten */ int dimakan = 2; /* Number to be eaten */ roti = roti - dimakan; /* Subtract number eaten from cookies */ total_dimakan = total_dimakan + dimakan; printf("\nSay telah memakan %d roti. Terdapat %d roti yang tersisa",dimakan, roti); dimakan = 3; /* New value for cookies to be eaten */ roti = roti - dimakan; /* Subtract number eaten from cookies */ total_dimakan = total_dimakan + dimakan; printf("\nSaya telah memakan %d. Sekarang terdapat %d roti yang tersisa\n",dimakan, roti); printf("\nTotal energy yang dikonsusi adalah %d calories.\n",total_dimakan*kalori);

Page 8: 1. variable identifier dan_tipe_data

8

} Latihan 3.2 #include <stdio.h> #include <conio.h> main( ) { /* Menghitung volume silender */ float radius, height, volume; radius 2.5; height 16.0; volume 3.1416 * radius * radius * height; printf("\n Volume silender tersebut adalah %f", volume); getch(); } Latihan 3.3 #include <stdio.h> main( { int sum; sum = 25; printf("\nThe number stored in sum is %d.",sum); sum = sum + 10; printf (" \nThe number now stored in sum is %d.", sum) ; getch(); } Latihan 3.4 #include <stdio.h> #include <conio.h> main( ) { clrscr();

printf(“ 3 < 5 bernilai : %d\n”, 3 < 5); printf(“15 >= 3 * 5 bernilai : %d\n”, 15 >= 3 * 5); printf(“ 8 = = 7bernilai : %d\n”, 8= =7); printf(“11<=5+4 bernilai : %d\n”, 11<=5+4); getch(); } Latihan 3.5 #include <stdio.h> #include <conio.h> main( ) {

int x, y; x = 5; y = 2; printf("%d ", x/y); /* akan menampilkan angka 2 */ printf(''%d ", x%y); /* akan menampilkan angka 1, 1 adalah sisa dari hasil bagi*/

}

Page 9: 1. variable identifier dan_tipe_data

9

Latihan 3.6 #include <stdio.h> #include <conio.h> main() { puts("LOGIKA AND"); printf("hasil AND dari 1 AND 1 = %d\n",1 && 1); printf("hasil AND dari 1 AND 0 = %d\n",1 && 0); printf("hasil AND dari 0 AND 1 = %d\n",0 && 1); printf("hasil AND dari 0 AND 0 = %d\n",0 && 0);

printf("\n\n"); puts("LOGIKA OR"); printf("hasil OR dari 1 OR 1 = %d\n",1 || 1); printf("hasil OR dari 1 OR 0 = %d\n",1 || 0); printf("hasil OR dari 0 OR 1 = %d\n",0 || 1); printf("hasil OR dari 0 OR 0 = %d\n",0 || 0); getch(); } Latihan 3.7 #include <stdio.h> #include <conio.h> main(void) { float x, y, kuadrat, akar; x = 10; y = 9; kuadrat=pow(x); akar=sqrt(y); printf(“Hasil kuadrat dari 10 = %f”,kuadrat); printf(“Hasil akar kuadrat dari 9 = %f,akar); }