Pertemuan Minggu 4
Alokasi Waktu : 2 Jam Pertemuan
Standar Kompetensi : Siswa dapat membuat program komputer sederhana dengan
menggunakan bahasa C
Kompetensi Dasar : Memahami penamaan variabel dan macam-macam tipe data, operator
dalam bahasa C
Indikator : Siswa dapat memahami konsep variabel dalam bahasa C.
Siswa memahami berbagai macam tipe data dalam bahasa C
1.1. IDENTIFIER
Semua angka dan huruf yang digunakan dalam program komputer disimpan di dalam unit
memori. Secara konseptual, lokasi memori di dalam 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 :
Gambar 3.1
Penempatan Nilai 2548
1652
pada Memori Komputer
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 nomor 101B. Dengan menggunakan variabel ini
maka proses penyimpanan nilai 10 dan 100 di dalam unit memori menjadi sebagai berikut:
N1 = 10
N2 = 100
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 dijadikan pustaka oleh bahasa pemrograman C.
Tabel 3.1 Contoh pustaka C
No Bahasa C
1 Case
2 Enum
3 Class
4 Const
5 Catch
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;
Bilangan Logika
Bilangan logika dinyatakan dalam bentuk angka biner yaitu 1 dan 0. bilangan ini kemudian
diterjemahkan ke dalam 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.
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 di atas 255 atau di bawah 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.
String
String adalah deretan karakter dengan panjang deretan yang tertentu jumlahnya. Contohnya
’Jurusan Teknik Informartika’, ’R 2345 AM’. Tipe untuk menyatakan string adalah string atau
char [ .. .].
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 dibelakang angka 3 yaitu 0.5 tidak akan pernah
diperhitungkan. Coba saja???.
Contoh 3.2
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……..
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
Latihan 3.3
#include <stdio.h>
#include <conio.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>
Modul Pemrograman Dasar X RPL_Disusun oleh : Rima Ariona N.A., S.Pd. 8
main( )
{
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("Hasil bagi %d ", x/y); /* akan menampilkan angka 2 */
printf("\nSisa bagi %d", x%y); /* akan menampilkan sisa dari hasil bagi*/
}
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,2);
akar=sqrt(y);
printf("Hasil kuadrat dari 10 = %f",kuadrat);
printf("\nHasil akar kuadrat dari 9 = %f",akar);
}