MODUL PENGATURCARAAN KOMPUTER BAHASA C SEMESTER 2
Algoritma danPengaturcaraan
Bahasa Cdengan Konsep, Teori dan Pelaksanaan
Nama Pelajar :
Tingkatan : 6 AS 2
Tahun : 2021
1
MODUL PENGATURCARAAN KOMPUTER BAHASA C SEMESTER 2
Table of Contents
01. PENGENALAN KEPADA PENGATURCARAAN (PROGRAMMING)..................................................... 5
A. Apa itu program komputer (computer program)........................................................................ 5
Latihan: ......................................................................................................................................... 5
B. Perbezaan antara lima Generasi Bahasa pengaturcaraan (programming Language) ................... 5
C. Perbezaan di antara bahasa penterjemahan (language translators): Himpunan (assemblers),
Kompiler (compilers) and Pentaksiran (interpreters)...................................................................... 8
02 ASAS BAHASA PENGATURCARAAN C........................................................................................... 10
A. Persekitaran Pembangunan Program C (C Program Development Environment)...................... 10
B. Jenis Ralat Dalam Pengeturcaraan (Types of Programming Error) ............................................ 11
C. Struktur Program C .................................................................................................................. 12
D. Arahan Pra-Pemproses (Pre-Process Directives) ...................................................................... 13
E. Perkataan Simpanan Bahasa C (C language Reserved Words)................................................... 15
F. Jenis-Jenis Data Dalam Bahasa C. ............................................................................................. 15
03 PENGISYTIHARAN PEMBOLEHUBAH (VARIABLE DECLARATION) .................................................. 16
A. Nama Pembolehubah .............................................................................................................. 16
B. Peraturan Menamakan Pembolehubah.................................................................................... 16
C. Jenis-jenis Pembolehubah........................................................................................................ 17
C. Pengisytiharan Pembolehubah ................................................................................................ 17
04 JENIS DATA ................................................................................................................................. 18
A. Saiz Sel Dan Penerang.............................................................................................................. 18
B. Jenis DataNombor Integer ....................................................................................................... 18
C. Jenis Data Aksara..................................................................................................................... 18
D. Jenis Data Nombor Nyata ........................................................................................................ 18
05 PENGISYTIHARAN PEMALAR (CONSTANT) ................................................................................... 18
A. Pemalar Integer....................................................................................................................... 18
B. Pemalar Nyata ......................................................................................................................... 18
C. Pemalar Aksara........................................................................................................................ 19
D. Pemalar Rentetan.................................................................................................................... 19
06 PENGISYTIHARAN DATA STRUKTUR (STRUCTURE DATA) ............................................................. 19
A. Data struktur ........................................................................................................................... 19
B. Pengisytiharan Data struktur ................................................................................................... 19
07 OPERATOR DAN UNGKAPAN....................................................................................................... 19
Pengenalan Operator................................................................................................................... 19
A. Operator Aritmetik .................................................................................................................. 19
B. Operator Logical ...................................................................................................................... 21
2
MODUL PENGATURCARAAN KOMPUTER BAHASA C SEMESTER 2
C. Operator Hubungan (Relational Operator) ............................................................................... 22
08 DATA INPUT DAN OUTPUT.......................................................................................................... 22
A. Data Output ............................................................................................................................ 22
B. Data Input ............................................................................................................................... 25
09 LANGKAH-LANGKAH PENYELESAIAN MASALAH DALAM PENGATURCARAAN............................... 27
Langkah 1: Keterangan Program .................................................................................................. 27
Langkah 2: Rekabentuk Program.................................................................................................. 27
Langkah 3: Kod Program .............................................................................................................. 27
Langkah 4: Uji Program................................................................................................................ 27
Langkah 5: Dokumentasi Dan Penyelengaraan............................................................................. 28
Dokumentasi Program...................................................................................................... 28
Penyelenggaraan Program ............................................................................................... 28
10 STRUKTUR KAWALAN (CONTROL STRUCTURE)............................................................................ 28
A. Struktur Kawalan Jujukan ........................................................................................................ 28
B. Struktur Kawalan Pilihan (Selection Control Structure)............................................................. 29
a. Pernyataan if........................................................................................................................ 29
b. Pernyataan if …else.............................................................................................................. 31
c. Pernyataan if …else if …else.................................................................................................. 32
c. Pernyataan if Tersarang (Nested if) ...................................................................................... 33
d. Pernyataan switch…. case .................................................................................................... 33
11 STRUKTUR KAWALAN ULANGAN (REPETITION CONTROL STRUCTURE) ........................................ 34
A. Kenyataan while ...................................................................................................................... 34
B. Kenyataan do…while................................................................................................................ 35
C. Kenyataan for .......................................................................................................................... 36
D. Kenyataan yang Lain................................................................................................................ 37
Pernyataan break .................................................................................................................... 37
Pernyataan continue................................................................................................................ 37
12 FUNGSI (FUNCTION) ................................................................................................................... 38
Apakah itu fungsi? ....................................................................................................................... 38
A. Definisi Fungsi (Function Difinition) ......................................................................................... 38
Jenis Pemulangan Fungsi (Return Type Function): .................................................................... 38
Nama Fungsi............................................................................................................................ 38
Parameter : ........................................................................................................................... 38
B. Prototaip Fungsi ...................................................................................................................... 39
Latihan: ................................................................................................................................... 39
3
MODUL PENGATURCARAAN KOMPUTER BAHASA C SEMESTER 2
C. Pemanggil Fungsi ..................................................................................................................... 39
Contoh Aturcara Fungsi ............................................................................................................... 40
Mengapa Perlunya Fungsi? .......................................................................................................... 40
Jenis-Jenis Fungsi......................................................................................................................... 41
a) Fungsi Piawaian Perpustakaan C (Function Standard Library C) ............................................ 41
b) Fungsi Definisi (Takrifan) Pengguna...................................................................................... 41
Pertukaran antara Carta Alir Fungsi ke Atucara Kod C .................................................................. 44
Cara Pencerakinan Kod Dari Fungsi Utama ke Sub Fungsi............................................................. 45
Latihan Kendiri 1.......................................................................................................................... 46
Fungsi Piawaian (Standard Function) dalam Perpustakaan C (Library C) ....................................... 47
a) sqrt ()................................................................................................................................... 47
b) pow () .................................................................................................................................. 47
c) floor ().................................................................................................................................. 48
d) ceil () ................................................................................................................................... 48
Soalan...................................................................................................................................... 48
13 TATASUSUN (ARRAY) .................................................................................................................. 49
JENIS TATASUSUN........................................................................................................................ 49
A) Tatasusun 1 Dimensi ............................................................................................................... 49
a) Pengisytiharan Tatasusun 1 dimensi..................................................................................... 49
b) Contoh Aturcara Tatasusun Satu Dimensi – Melibatkan Nombor Dan Aksara ....................... 50
Latihan ........................................................................................................................................ 53
B) TATASUSUN 2 DIMENSI ........................................................................................................... 54
a) Mengumpuk nilai dalam tatasusun 2 dimensi melibatkan nombor ....................................... 54
b) Mengumpuk nilai dalam tatasusun 2 dimensi melibatkan rentetan ..................................... 55
c) Menginput nilai mengunakan tatasusun 2 dimensi............................................................... 55
d) Mempaparkan nilai tatasusun 2 dimensi.............................................................................. 56
e) Tatasusun dua dimensi yang melibatkan “string” (rentetan) ................................................ 56
C) Isihan Sisipan (Insertion Sorting) dan Isihan Gelembung (Bubble Sorting) ................................ 57
Carian Linear (Linear Search) ....................................................................................................... 61
14 KONSEP DAN PERNYATAAN DATA STRUKTUR ............................................................................. 62
A) Konsep Data Struktur .............................................................................................................. 62
B) Pengisytiharan Struktur Data ................................................................................................... 62
C) Umpukan Nilai Awalan Kepada Struktur Data .......................................................................... 63
D) Menginput Data Kepada Struktur Data .................................................................................... 63
E) Paparan Hasil Output Struktur Data ......................................................................................... 64
F) Struktur Data Melipatkan Tatasusun (Array) ............................................................................ 64
4
MODUL PENGATURCARAAN KOMPUTER BAHASA C SEMESTER 2
01. PENGENALAN KEPADA PENGATURCARAAN
(PROGRAMMING)
A. Apa itu program komputer (computer program)
Program komputer juga dikenali sebagai perisian.
Ia merupakan satu siri arahan untuk mengarah computer menlaksanakan sesuatu tugasan.
Contoh: Perisian Microsoft word merupakan satu contoh program komputer – yang berfungsi
untuk pengeditan teks atau penulisan teks.
Latihan:
Dengan contoh yang sesuai, terangkan apa yang anda faham dengan program computer.
B. Perbezaan antara lima Generasi Bahasa pengaturcaraan (programming
Language)
Apa itu bahasa aturcara?
Bahasa yang digunakan untuk menulis arahan-arahan komputer untuk mengarah
komputer melakukan sesuatu tugasan.
Bahasa aturcara ini ditulis oleh pengaturcara (programmer), juga dipanggil sebagai pembangun
sistem atau program.
Kepentingan bahasa pengaturcaraan
Membolehkan pengaturcara berkomunikasi dengan arahan komputer.
Membolehkan pengaturcara mengawal operasi komputer.
Membolehkan pengaturcara mengarah komputer melaksanakan sesuatu tugas
Bahasa pengaturcaraan boleh dibahagi kepada:
Bahasa pengaturcaraan aras rendah
Bahasa pengaturcaraan aras tinggi.
Semakin rendah suatu aras bahasa pengaturcaraan semakin sukar untuk dipelajari.
5
MODUL PENGATURCARAAN KOMPUTER BAHASA C SEMESTER 2
Bahasa pengaturcaraan rendah terbahagi kepada dua generasi bahasa iaitu bahasa aturcara
generasi pertama dan kedua manakalan bahasa aturcara aras tinggi terdiri daripada bahasa
aturcara generasi ketiga, keempat dan kelima.
Aras Bahasa Keterangan Contoh
Bahasa Generasi Bahasa Mesin adalah Contoh Binari kod:
Pertama (GL1) bahasa aturcara generasi 1100100010001100
pertama yang di tulis dalam
bentuk kod binari (binary
code)
Setiap pernyataan
bertanggungjawab
melaksanakan satu tidakan
mesin.
Susah di baca oleh
manusia, hanya mereka
yang tahun tentang bahasa
aturcara bahasa mesin.
Bahasa Generasi Bahasa aturcara generasi
Kedua (GL2) kedua adalah bahasa
himpunan (assembly
language).
Bahasa aturcara yang boleh
dibaca oleh manusia untuk
bahasa nesin yang
digunakan untuk mengawal
operasi komputer yang
khusus.
Menggunakan tatatanda
(notasi)
Menggunakan arahan
dalam bentuk simbolik yang
meringkaskan makna dan
untuk tujuan diingat.
Program penghimpunan
digunakan untuk
menterjemahkan bahasa
himpunan kepada bahasa
mesin.
6
MODUL PENGATURCARAAN KOMPUTER BAHASA C SEMESTER 2
Bahasa Generasi Bahasa aturcara generasi Contoh Bahasa 4GL: Pascal, fortran,
ketiga (GL3) ketiga menggunakan Basic, Cobol, C and C++
bahasa prosedural
Bahasa Generasi (procedural language) Contoh bahasa ini: SQL, NOMAD and
Keempat (GL4) Di kategori dalam bahasa FOCUS.
aras tinggi.
Menggunakan satu seri
bahasa inggeris seperti
perkataan,
Kesan: mengatasi masalah
manusia susah menulis
bahasa aturcara.
Bahasa ini membolehkan
bahasa aturcara yang
komplek senang dibaca,
ditulis dan diselenggara
oleh pengaturcara.
Bahasa ini perlu di tukarkan
menjadi bahasa mesin
menggunakan kaedah
Kompilan atau interpreter
(pentaksiran).
Dikategorikan dalam
bahasa aturcara aras tinggi.
Perlu diterjemah ke dalam
bahasa mesin.
Bahasa aturcara arah tinggi.
Bahasa bukan bahasa
prosedural (non-
procedural)
Membolehkan pengguna
mencapai data dalam
pangkalan data.
Bahasa ini terhad kepada
aplikasi khusus yang
menggunakan sintak yang
tidak digunakan oleh
bahasa aturcara lain.
7
MODUL PENGATURCARAAN KOMPUTER BAHASA C SEMESTER 2
Bahasa Generasi Membekal antara muka
Kelima (GL5) visual, menyenangkan
penggunanya.
Membolehkan manusia
tidak perlu mengingat
arahan-arahan komputer.
Pengguna tidak perlu
mengingat simbol2 atau
arahan aturcara
Menggunakan bahasa
semulaja (Natural
language) seperti bahasa
inggeris biasa untuk
menulis aturcara.
Contoh Perisian: prolog dan Mercury
C. Perbezaan di antara bahasa penterjemahan (language translators): Himpunan
(assemblers), Kompiler (compilers) and Pentaksiran (interpreters)
Terdapat tiga jenis bahasa penterjemahan (language translators), iaitu
a. Himpunan
Menterjemah bahasa himpunan terus kepada bahasa mesin
b. Kompiler
Kompiler adalah program komputer (perisian Komputer) yang menterjemah
tulisan dalam bentuk teks ke dalam bahasa mesin.
Kompiler (Pengkompilan) menterjemahkan bahasa aras tinggi kepada bahasa aras
rendah seperti bahasa mesin atau bahasa himpunan.
Menukarkan keseluruhan sumber kod program ke dalam bahasa mesin sebelum
dilaksanakan.
Menterjemah keseluruhan kod sumber pada satu masa sebelum ia dilaksanakan.
Hasil pengkompilan adalah bahasa mesin dan kod objek akan terhasil.
Kelebihan: Program yang dihasil dilarikan dengan sangat cepat.
8
MODUL PENGATURCARAAN KOMPUTER BAHASA C SEMESTER 2
c. Pentaksiran
Menukarkan bahasa aturcara aras tinggi kepada bahasa aturcara aras rendah.
Menterjemahkan dan malaksanakan kod sumber satu baris demi baris dalam
masa yang berbeza.
Tiada kod Objek disimpan/dihasilkan semasa proses pentaksiran.
Kelemahan: Lambat.
9
MODUL PENGATURCARAAN KOMPUTER BAHASA C SEMESTER 2
02 ASAS BAHASA PENGATURCARAAN C
A. Persekitaran Pembangunan Program C (C Program Development Environment)
Persekitaran Pembangunan program C boleh terbahagi kepada enam fasa iaitu;
a. Fasa Edit
b. Fasa Pra-proses (pre-process)
c. Fasa pengkompianl (compile)
d. Fasa pempautan (link)
e. Fasa pemuat an(load)
f. Fasa Laksana (execute)
Fasa-Fasa Persekitaran Pembangunan Program C.
Fasa Keterangan
Fasa Edit
Proses menggunakan perisian penyunting (Editor)
Fasa Pra-proses seperti Turbo C untuk menaip kod aturcara dan
(pre-process) menghasilkan program C.
Aturcara yang ditulis akan disimpan dalam storan
terutamanya storan skunder seperti hardisk.
Aturcara ini disimpan dengan nama yang sesuai dan
penghujungnya disambung dengan .c
Contoh: kira.c
Fasa ini dilaksanakan sebelum fasa pengkompilan.
fasa dimana program memproses kod aturcara sebelum
di hantar ke proses pengkompilan.
Operasi ini dikawal oleh perintah-perintah dan arahan-
arahan khas prapemprosesan.
Arahan-arahan prapemprosesan akan menggantikan
kod sumber sebelum dihantar ke fasa pengkompilan.
Arahan prapemprosesan akan mengikut peraturan
sintaks khas pengaturcaraan C.
Fasa pengkompil (compile) mengkompil aturcara yang ditulis dalam fasa satu
Fasa pempautan (link) kepada bahasa yang boleh dibaca oleh CPU.
Hasil fasa 2 iaitu fasa prapemprosesan akan dikompil
iaitu diterjemahkan bahasa aturcara C (bahasa aturcara
aras tinggi) kepada bahasa mesin.
Hasil pengkompilan akan menghasilkan kod objek
Fasa keempat dippanggil sebagai pempautan.
Program C lazimnya mengandungi rujukan-rujukan yang
berfungsi mengenalpasti definisi seperti yang terdapat
dalam piawaian perpustakaan.
Pempautan akan mempautkan fungsi-fungsi yang
terlibat dalam kod objek
10
MODUL PENGATURCARAAN KOMPUTER BAHASA C SEMESTER 2
Fasa pemuatan (load) Fasa kelima adalah fasa pemuat.
Fasa Laksana (execute) Sebelum program dilaksanakan. Program perlu
ditempatkan dalam memori komputer.
Pemuat akan mengambil kod objek dalam disk dan
transfer ke dalam memori.
Fasa pelaksanaan arahan demi arahan oleh komputer di
bawah kawalan CPU.
B. Jenis Ralat Dalam Pengeturcaraan (Types of Programming Error)
Terdapat tiga jenis ralat dalam pengaturcaraan C. iaitu:
a. Ralat masa lari (runtime error)
b. Ralat Sintak (Syntax Error)
c. Ralat Logik (Logic Error)
Ralat Runtime
Merujukkan ralat yang berlaku semasa melaksanakan suatu program aturcara.
Ralat ini mungkin disebab tidak cukup memori dalam system semasa melaksanakan
proses kompilan.
Ralat Sintak
Merujuk kepada ralat yang berlaku disebabkan kesalahan kod ejaan dan penggunaan
simbol-simbol.
Contoh: pritf printf atau Printf printf
Ralat Logik
Merujuk ralat yang berlaku disebabkan penggunan operasi atau logik yang salah atau
silap.
Operasi yang dimaksud ialah operasi matematik dalam aturcara C.
Contoh: dalam pengiraan purata
Purata=a+b+c/3 purata=(a+b+c)/3
Umur<34
11
MODUL PENGATURCARAAN KOMPUTER BAHASA C SEMESTER 2
C. Struktur Program C
Struktur Program C boleh dibahagikan kepada
Komen/Tajuk
Arahan Prapemproses (preprocessor directives)
Pengisytiharaan. (Global dan Local)
Blok Fungsi Utama
Block Sub-sub Fungsi lain
//Nama: Chee Yeong Shing Komen/tajuk
/* Kelas: 6 Atas Siber */ Arahan Pra-pemproses
#include<stdio.h>
int purata; Penyisytiharan (Pembolehubah global)
void main ()
{
int a, b;
a=30; Penyisytiharan (Pembolehubah local (setempat))
Blok b=40;
Fungsi
Utama kiraPurata (a, b);
Blok printf (“PURATA = %d”, purata);
Sub
Fungsi }
Int kiraPurata (int a, int b)
{
purata=(a+b)/2
return purata
}
Komen/Tajuk
Merujuk kepada pendokumentasian dalaman
Digunakan untuk mencatat nama pembangun, tujuan projek, formula-formula yang
digunakan dan untuk rujukkan pengaturcara yang lain.
Komen ini akan diabaikan semasa proses pengkompilan.
Arahan Prapemproses (preprocessor directives)
Merujuk kepada arahan pra pemproses yang perlu dilaksanakan sebelum dikompilkan.
Biasanya terdapat dua arahan pra-pemproses yang selalu digunakan:
12
MODUL PENGATURCARAAN KOMPUTER BAHASA C SEMESTER 2
Arahan #include
Arahan #define
Pengisytiharaan. (Pembolehubah Global dan Local)
Penyisytiharan pembolehubah boleh dibahagikan kepada pemboleh ubah global dan
pemboleh ubah setempat.
Pembolehubah global ialah pembolehubah yang boleh diguna oleh semua blok fungsi.
Pemboleh ubah setempat ialah pemboleh ubah yang hanya digunakan untuk blok
fungsi tersebut sahaja.
Blok Fungsi Utama
Merujuk kepada fungsi utama suatu aturcara.
Bermula dengan main () dan diikuti dengan {dan}.
Anatara {dan} terdapatnya isi kandungan aturcata.
Block Sub-sub Fungsi lain
Merujuk blok fungsi lain yang dibina oleh pengguna.
Bermula dengan nama fungsi () dan diikuti dengan {dan}.
Sub fungsi ini boleh dipanggil dalam fungsi utama.
D. Arahan Pra-Pemproses (Pre-Process Directives)
Masih ingatkah arahan pra-pemproses ini berada pada fasa mana dalam fasa pembangunan
persekitaran pengeturcaraan C. Ya…fasa yang kedua iaitu fasa pra-pemprosesan.
Dalam fasa ini, arahan-arahan pra-pemproses akan dilaksanakan sebelum proses pengkompilan
kod sumber dilaksanakan.
Arahan-arahan pra-pemproses ini terdiri daripada:
Arahan #include<fail kepala>
digunakan untuk menggabungkan fail luaran ke dalam satu aturcara
sumber/punca dgn memanggil fail pengepala (namafail.h)
format penulisan arahan #include adalah seperti berikut:
#include<fail pengepala>
Contoh: #include<stdio.h> **stdio.h merujuk kepada fail kepala
(header file).
**bila kita isytiharkan #include<stdio.h> semasa proses pra-
pemprosesan arahan pra-pemproses #include akan mendapatkan fail
kepala “stdio.h” daripada perpukataan C, kemudian memasukkannya
ke dalam fail perantara aturcara C. fail kepada “stdio.h” diperlu untuk
kegunaan fungsi printf () atau scanf ().
13
MODUL PENGATURCARAAN KOMPUTER BAHASA C SEMESTER 2
Terdapat dua jenis fail kepada; iaitu fail kepada standard yang terdapat
dalam perpustakana C (Library C) dan fail kepala yang ditulis oleh
pengguna.
Arahan #define namaMakro/Fungsi pemalar/rentetan/formula
Format penulisan adalah seperti berikut:
#define namaMakro/Fungsi pemalar/rentetan/formula
Fungsi:
untuk mengisytiharkan pemalar
contoh: #define faedah 0.15
untuk pentakrifan fungsi yang mudah
contoh: #define kiraLuasSegiempat (L, P) L*P
untuk penukaran rentetan
contoh: #define ayat1 “MALAYSIA”
Perhatian: tanda “;” tidak perlu ditambah pada akhir pemalar.
Contoh:
Kod Aturcara C Hasil Output
#include<stdio.h>
#define teks “LUAS SEGIEMPAT: %d”
#define luas (L, P) L*P
int main () LUAS SEGIEMPAT: 120
{
int luas, panjang=12, lebar=10;
luas=luas (panjang, lebar);
printf (teks, luas);
return 0;
}
14
MODUL PENGATURCARAAN KOMPUTER BAHASA C SEMESTER 2
E. Perkataan Simpanan Bahasa C (C language Reserved Words)
Kata simpanan adalah kata yang mempunyai makna khas dalam bahasa C dan tidak boleh
digunakan untuk tujuan lain. Contohnya kita tidak boleh mengisytiharkan pembole ubah
menggunakan kata simpanan.
Semua kata simpanan muncul dalam huruf kecil.
Contoh-contoh kata simpanan yang terdapat dalam bahasa C:
char, int, float, double, case, auto, continue, default, do, else, if, entry, enum, extern, for
goto, long, register, return, short, sizeof, static, struct, switch, typedef, union, unsigned,
void, while
F. Jenis-Jenis Data Dalam Bahasa C.
Terdapat tiga jenis data dalam bahasa aturcara C, iaitu
Jenis Data integer (int)
Jenis Data Aksara (char)
Jenis Data Nyata
Jenis Data Integer
Jenis data integer ini menggunakan simbol “int”.
Jenis data integer ini terdiri daripada nombor negetif (contoh: -77, -90) dan nombor
positif (contoh: 78,123).
Saiz sel ingatan bagi jenis data “int” adalah berbeza bergantung kepada system computer.
Jenis Data Aksara
Jenis data ini menggunakan symbol “char”.
Jenis data aksara digunakan untuk mewakili aksara seperti:
Huruf (contoh: huruf kecil a…. z atau huruf besar A…. Z).
Digit (contoh: 102 nombor bilik, 0138937110 nombor telefon) ** digit tidak
mempunyai nilai, ia berbentuk symbol sahaja. Nombor mempunyai nilai.
Simbol khas seperti %, #, @ dan lain-lain.
Aksara boleh ditukar kepada suatu nilai integer.
Kita juga boleh melakukan perbandingan symbol aksara dengan menggunakan operator
sama dengan (= =) atau tidak sama dengan (! = ).
Jenis Data Nyata
ANSI C (American national Standard Institute) menakrifkan tiga jenis data yang boleh
digunakan untuk menipulasi nombor nyata, iaitu
float
double
long double
Jenis data ini boleh menyimpan nilai nyata seperti 0.001, 2.0 dan 3.14159.
Pilihan penggunaan jenis data bergantung kepada julat nombor yang ingin diwakili.
Jenis data float saiz bait = 4, double saiz bait 8 dan long double saiz bait = 16.
15
MODUL PENGATURCARAAN KOMPUTER BAHASA C SEMESTER 2
03 PENGISYTIHARAN PEMBOLEHUBAH (VARIABLE
DECLARATION)
A. Nama Pembolehubah
Pemboleh ubah adalah satu contoh pengecam.
Untuk mengisytihar pembolehubah perlu kenalpasti nama dan jenis data yang diwakili.
Pemboleh ubah yang sebagai pengecam boleh ditakrifkan oleh pengguna.
Nama pembolehubah yang diisytihar perlu:
Sesuai (makna sesuai dengan apa yang diwakili olehnya. Contoh kalau pembolehubahnya
berkaitan dengan panjang mesti pilih nama yang sesuai untuk mewakili panjang)
Mudah difahami
Nama ini digunakan untuk menamakan ruang ingatan yang menyimpan pembolehubah
tersebut.
Panjang
Ruang Ingatan komputer
B. Peraturan Menamakan Pembolehubah
Adalah seperti berikut:
Nama pembolehubah terdiri daripada huruf, digit dan aksara simbol
Nama pembolehubah tidak boleh mula dengan digit.
6panjang; - tidak boleh digunakan sebab mula dengan digit.
Kata simpanan C tidak boleh digunakan sebagai nama pemboleh ubah.
Contoh kata simpanan C yang tidak boleh digunakan: int, float, double
Panjang Nama pembolehubah hanya boleh sehingga 31 aksara sahaja. Jika panjang lebih
daripada 31, maka aksara ke 32 ke atas tidak lagi diambil kira.
Contoh-contoh nama pembolehubah yang sah/betul adalah seperti berikut:
Jumlah1 jumlah_purata jumlahPurata _jumlah
Bagi menamaka pembolehubah yang menggunakan dua perkataan. Cara berikut boleh
digunakan: contoh menamakan luas segitiga:
luasSegitiga luas_segitiga
Huruf pada nama pembolehubah adalah kes sensitif maknanya huruf besar dan huruf kecil
yang digunakan adalah dianggap berbaza
Contoh: a berbeza dengan A
jumlah berbeza dengan JUMLAH, Jumlah. JUMLAH, jumLah, JumlaH
16
MODUL PENGATURCARAAN KOMPUTER BAHASA C SEMESTER 2
C. Jenis-jenis Pembolehubah
Pembolehubah boleh mewakili berbagai jenis data.
Jenis data yang digunakan akan menentukan jenis pembolehubahnya.
Jadual dibawah menunjukkan jenis data asas yang digunakan dalam bahasa C:
Jenis Data Tafrifan
Aksara char
Integer int
Nombor Nyata float
Nombor Nyata dengan kepersisan double
tinggi
Apabila suatu pembolehubah mempunyai jenis data integer, bermakna pembolehubah tersebut
akan mewakili data jenis integer.
Terdapat juga jenis data tambahan yang menggunakan penerang (qualifier). Biasanya penarang
ini disimpan di depan jenis data.
Contoh penerang yang digunakan adalah unsigned, signed, short, long, unsigned short, signed
short dan sebagainya;
signed short int
penerang jenis data
C. Pengisytiharan Pembolehubah
Fungsi pembolehubah adalah untuk digunakan untuk menyimpan data input dan hasil
pengiraan atau manipulasi logik.
Nilai yang simpan boleh berubah sepanjang pelaksanaan aturcara.
Format pengisytiharan pemboleh ubah adalah seperti berikut:
i. Jenis data + pembolehubah +;
int panjang;
ii. Penerang + jenis data + pembolehubah +;
long int panjang;
Contoh pengisytiharan pembolehubah jenis integer
int panjang; int luas_segiempat;
Contoh pengisytiharan pembolehubah jenis nombor nyata
float tinggi;
Contoh prngytiharan pembolehubah jenis data akasara
char huruf;
Contoh pengisytiharan jenis data rentetan
char namaMurid [20];
17
MODUL PENGATURCARAAN KOMPUTER BAHASA C SEMESTER 2
04 JENIS DATA
A. Saiz Sel Dan Penerang
Saiz sel merujuk kepada saiz ingatan yang disediakan pada ingatan komputer.
Saiz sel ini diungkap dalam unit yang dipanggit bait. (1 bait sama dengan 8 bit).
Saiz sel ini bergantung kepada jenis data masing-masing.
Jadual dibawah ini menunjukkan pengisytiharan pembolehubah dengan saiz sel ingatannya:
Pengisytiharan Pembolehubah Dalam ingatan Bilangan Bait
Int jauh; jauh 2 bait (16 bit)
float tinggi tinggi 4 bait (32 bit)
long int jauh jauh 4 bait (32 bit)
Penggunaan penarang akan menambahkan saiz sel ingatan pembolehubah.
Contoh: rujuk jadual di atas, bila kita tambah penarang long pada int, saiz sel ingatan akan
bertambah dari 2 bait kepada 4 bait.
B. Jenis DataNombor Integer
Jenis data integer menggunakan “int” untuk mewakili nombor integer positif dan negatif.
Contoh -23, -90, -67, 78, 3, 607
Saiz sel integer bergantuung kepada jenis sistem komputer yang digunakan.
C. Jenis Data Aksara
Jenis data aksara (character) menggunakan “char” untuk mewakili akasara seperti huruf, digit
atau simbol.
Jenis data ini mewakili huruf besar dan huruf kecil.
Juga mewakili digit nombor seperti 0,1,2,3,4….,9 (bezakan digit dengan nombor)
D. Jenis Data Nombor Nyata
American National Standard Institute (ANSIC) menakrifkan tiga jenis data menggunakan float,
double dan long double untuk mewakili nombor nyata yang mempunyai titik perpuluhan.
Contoh: 0.0001, 2.0, 3.1234
05 PENGISYTIHARAN PEMALAR (CONSTANT)
Pemalar merujuk kepada suatu nilai yang tetap dan tidak boleh berubah sepanjang
pelaksanaan atur cara.
Pemalar boleh dikategorikan bebrapa jenis berdasarkan jenis datanya.
A. Pemalar Integer
Merujuk kepada nilai nombor integer yang tetap.
Cara pengisytiharan seperti berikut: const int jumlah = 12;
** Nilai pembolehubah jumlah tidak akan berubah sepanjang pelaksanaan aturcara.
B. Pemalar Nyata
Merujuk kepada nilai nombor nyata yang tetap.
Cara pengisytiharan seperti berikut: const float pai=3.14;
18
MODUL PENGATURCARAAN KOMPUTER BAHASA C SEMESTER 2
C. Pemalar Aksara
Merujuk kepada nilai aksara yang tetap.
Cara pengisytiharan seperti berikut: const char a=’A’;
D. Pemalar Rentetan
Merujuk kepada nilai rentetan yang tetap.
Cara pengisytiharan seperti berikut: const char [7] =” KELUAR”;
06 PENGISYTIHARAN DATA STRUKTUR (STRUCTURE DATA)
A. Data struktur
Merujuk kepada satu koleksi data yang berlainan jenis.
B. Pengisytiharan Data struktur
Kaedah pengisytiharan adalah seperti berikut:
struct student {
char firstName [20];
char lastName [20];
char SSN [9];
float gpa;
};
07 OPERATOR DAN UNGKAPAN
Pengenalan Operator
1. Simbol matematik yang kita guna seperti +, -, x, < dan > dan lain-lain adalah dikenali sebagai
operator.
2. Simbol operator ini digunakan untuk memanipulasi data.
A. Operator Aritmetik
1. Untuk membolehkan aturcara kita memlakukan pengiraan aritmetik, maka kita perlu operator
aritmetik.
2. Operator aritmetik bahasa C sama dengan operator aritmetik dalam matematik.
19
MODUL PENGATURCARAAN KOMPUTER BAHASA C SEMESTER 2
3. Berikut merupakan simbol operator untuk aritmetik matematik.
Simbol operator Makna Ungkapan Hasil
+ Tambah 25 + 8 33
- Tolak 120-64 56
* Darab 3*7 21
/ Bahagi 66/6 11
% Modulo – cari baki 68%6 2
bahagi
4. Perhatian simbol darab adalah * dan bukannya x. dan simbol bahagi adalah / bukannya \.
5. Untuk mancari baki pembahagi suatu nombor, kita guna simbol %. Cara adalah seperti berikut:
23 % 10 = hasilnya ialah 3 manakala 23/10 = hasilnya ialah 2
6. Paras keutamaan Aritmetik Operator:
Keutamaan Operasi Makna
Tinggi *, / , % Maknanya mula kira *, / atau
% dahulu berbanding dengan
Rendah +,- operasi + dan -
Kira kemudian, selepas
pengiraan operator *, / dan %
7. Walaubagaimana pun, jika terdapat kurungan () maka pengiraan akan mendahulukan
pengiraan pada kurungan. Contoh seperti di bawah:
7.5 * (2.0 – 4.52) = <- pengiraan akan mendahului 2.0 – 4.52
8. Menulis ungkapan aritmetik dalam bahasa C. contoh –contoh adalah seperti di bawah:
9.
16 - = boleh ditulis dalam bahasa C seperti berikut: 16 – 8 / 2
boleh ditulis sebagai (15+5+7) / 2
boleh ditulis sebagai 16 * 16
9. Operator + dan – juga boleh dilaksanakan seperti berikut
Contoh: a++; disimpan di belakang suatu nilai pembolehubah
a++ sama juga dengan persamaan berikut a = a + 1
a-- sama juga dengan persamaan berikut a =a – 1
a+=1 sama juga dengan persamaan berikut a=a+1
a-=1 sama juga dengan persamaan berikut a=a-1
20
MODUL PENGATURCARAAN KOMPUTER BAHASA C SEMESTER 2
B. Operator Logical
1. Operator Logik juga dikenali sebagai operator Mantik.
2. Bahasa C menyediakan tiga jenis operator logik dan seperti jadual dibawah.
Operator Logik Makna Contoh ungkapan Makna ungkapan
&& dan A && B A dan B
|| atau A || B A atau B
! Tidak A! = B A tidak sama B
3. Keterangan mengenai operator && (dan)
Benar && Benar = benar
Palsu && Benar = Palsu
Benar && Palsu = Palsu
Palsu && Palsu = Palsu
Untuk jadi benar kedua-dua mesti benar, jika terdapat satu palsu maka hasilnya adalah palsu.
4. Keterangan menegnai operator || (atau)
Benar || Benar = Benar
Benar || Palsu = Benar
Palsu || Benar = Benar
Palsu || Palsu = Palsu
Untuk hasil Benar, sekurang-kurangnya satu adalah benar. Jika kedua-dua palsu maka hasilnya
adalah palsu.
5. Ketarangan menegnai operator! (Tidak/bukan)
! Benar = Palsu
! Palsu = Benar
6. Kesimpulannya operator logik akan memberi dua keputusan sahaja iaitu Benar atau Palsu.
Dalam bahasa C, Benar diwakili dengan 1 dan Palsu diwakili dengan 0.
7. Contoh soalan operator logik
Jika diberi a =2, b=7 dan c=9. Tentukan ungkapan berikut benar atau palsu
a * b && c + 5
(2 * 7) && (9+5) (Jika nilai sama dengan 1 atau lebih daripada 1. logiknya 1)
14 && 14
1 && 1
= Benar (1)
Jawapan: ungkapan adalah Benar
21
MODUL PENGATURCARAAN KOMPUTER BAHASA C SEMESTER 2
C. Operator Hubungan (Relational Operator)
1. Bahasa C menyediakan operator hubungan untuk membanding data.
2. Bahasa C menyediakan enam jenis operator hubungan:
Operator Makna Ungkapan
< 6<9
<= Lebih kecil daripada 12 <=13
Lebih kecil atau sama
> dengan 7 > 10
>= Lebih besar daripada 9 >=5
Lebih besar daripada
== atau sama dengan 7 == 5
!= Sama dengan 6 != 5
Tidak sama dengan
Contoh soalan yang melibatkan operator hubungan dan operator logikal
1. Tentukan ungkapan berikut Benar atau Salah. Jika diberi a=1, b=5, c=15 dan d = 25.
(c >= (b * 3)) || (a == 3)
(15 >= (5*3)) || (1 ==3)
(15 >=15) || 0
1 || 0
1 (benar) Jawapan : Ungkapan di atas adalah Benar.
08 DATA INPUT DAN OUTPUT
Terdapat pelbbagai fungsi dalam perpustakaan C yang digunakan untuk aktiviti input data dan
output data.
Dua fungsi yang ingin diterangkan disini ialah printf () dan scanf ()
Fungsi printf () – digunakan untuk memaparkan aksara/rentetan/ dalam peralatan output
seperti monitor/LCD.
Fungsi scanf () – digunakan untuk membaca/ menginput/ menangkap(capturing) aksara/
rentetan dari peralatan input; seperti papan kekunci.
A. Data Output
Fungsi printf ()
Secara am format penulisan fungsi printf terdapat beberapa cara:
Cara1: terdiri daripada satu parameter.
printf (“Paparan teks atau format nilai output pembolehubah “);
contoh: printf (“MALAYSIA MAJU”);
22
MODUL PENGATURCARAAN KOMPUTER BAHASA C SEMESTER 2
Cara 2: terdiri daripada dua parameter atau lebih.
printf (“Paparan teks atau format nilai Output pembolehubah”, nilai atau pembolehubah)
Contoh 1: printf (“Nama saya ialah %s”,” Helen Kong”);
Contoh 2: printf (“Nama saya ialah %s dan berumur %d”,” Ahmad”,21);
Contoh 3:
int umur=17;
printf (“Umur saya ialah %d tahun”, umur);
Format output
format yang akan dipaparkan mengikut format yang telah ditentukan.
Biasanya dimula dengan tanda “dan akhir dengan “
Boleh di masukkan format output nilai pembolehubah.
Contoh: printf (“Harga baju = RM %.2f”,17.3);
Paparan Output: Harga baju = RM17.30
Nilai atau pembolehubah
Terdiri daripada nilai aksara/rentetan atau nilai pembolehubah yang akan di hantar ke
dalam format output nilai pembolehubah.
Contoh:printf (“Nama saya %s dan berumur %d”, “Kong Li”, 23);
Senarai Format nilai output pembolehubah adalah seperti berikut:
%s untuk paparan format rentetan (string)
Contoh: printf (“%s”,” Malaysia”) Output: Malaysia
%c untuk paparan format aksara (charater)
Contoh: printf (“%c %c”,’A’,’C’); Output: A C
%d untuk paparan format integer
Contoh: printf (“%d”, 21); Output: 21
%f untuk paparan format numbor perpuluhan (float atau double)
Contoh: printf(“%.2f”,21.2); Output: 21.20
Contoh: printf(“%.2f”,17.236); Output: 17.24
%e untuk paparan format nombor perpuluhan (notasi sainstifik)
Contoh: printf(“%e”,16.2356789); Output: 1.623568e+001
23
MODUL PENGATURCARAAN KOMPUTER BAHASA C SEMESTER 2
Contoh: printf(“%.2e”,16.2356789); Output: 1.62e+001
Fungsi printf () dengan format nilai output %s.
Contoh 1: printf (“Nama saya %s”,” Gan Hock Jin”); Output: Nama saya Gan Hock Jin
Contoh 2: char nama [13] =” Gan Hock Jin”;
printf (“Nama saya %s”, nama); Output: Nama saya Gan Hock Jin
Fungsi printf () dengan format nilai output %c.
Contoh 1: printf (“Huruf - %s”,’Y’); Output: Huruf - Y
Contoh 2: char a=’Y’;
char b=’A’;
printf (“Huruf- %c dan %c”, a, b); Output: Huruf – Y dan A
Fungsi printf () dengan format nilai output %d.
Contoh 1: printf (“Umur saya ialah %d tahun”,17); Output: Umur saya ialah 17 tahun
Contoh 2: printf (“Hasil tambah 15 dan 67 ialah %d”,15+67);
Output: Hasil tambah 15 dan 67 ialah 82
Contoh 3: int no1=15;
int no2=67;
printf (“Hasil tambah 15 dan 67 ialah %d”, no1+no2);
Output: Hasil tambah 15 dan 67 ialah 82
Fungsi printf () dengan format nilai %f.
Contoh 1: printf (“BM = %.2f”,73.4); Output: BM = 73.40
Contoh 2: printf (“Hasil tambah 15.5 dan 67.5 ialah %f”,15+67);
Output: Hasil tambah 15.5 dan 67.5 ialah 83
Contoh 3: float no1=15.6;
float no2=67.5;
printf (“Hasil tambah 15.6 dan 67.5 ialah %.2f”, no1+no2);
Output: Hasil tambah 15.6 dan 67.5 ialah 83.10
24
MODUL PENGATURCARAAN KOMPUTER BAHASA C SEMESTER 2
Format Output (Tambahan)
Apakah perbezaan di antara printf(“%6d”,123); dan printf (“%6d”, -123);
“%6” dalan fungsi printf () akan mengarah computer menyediakan 6 runagan kosong
pada device output seperti berikut:
123 dan -123 pada fungsi printf () membezakan dari segi kedudukan nombor itu di
tempatkan. 123 adalah nilai positif, kedudukannya akan ditempatkan di kanan petak
kosong; manakala -123 adalah nilai negative kedudukannya akan ditempatkan di kiri
petak ruangan kosong. Kedudukan kedua-dua boleh digambarkan seperti rajah di
bawah
** printf(“%6d”,123);
12 3
**printf (“%6d”, -123);
123
Apakah perbezaan di antara printf(“%6.2f”,3.4) dan printf(“%6.1f”,3.4).
Kedua-dua format output akan menyediakan 6 petak kepada hasil output.
Bezanya dari segi bilangan tempat titik perpuluhan yang disediakan. Bagi
printf(“%6.2f,3.4) format output akan menyediakan dua tempat titik
perpuluhan seperti di bawah:
printf(“%6.2d”,3.4);
3. 40
Bagi printf(“%6.1f”,3.4) format output akan disediakan satu tempat titik
perpuluhan seperti di bawah.
printf(“%6.1f”,3.4);
3. 4
B. Data Input
Fungsi scanf ()
Penulisan format untuk fungsi scanf () adalah seperti berikut:
scanf (format input, pembolehubah);
format Input memanggil fungsi tentang format data yang akan diinputkan.
format Input dimula dengan “dan akhir dengan “.
format Input boleh terdiri daripada beberapa nilai format input, contoh seperti begitu:
25
MODUL PENGATURCARAAN KOMPUTER BAHASA C SEMESTER 2
Contoh: scanf (“%d %d %d”, &no1, &no2, &no3); terdiri daripada 3 nilai format
input.
Pembolehubah ialah data yang diinput dalam memori/ingatan computer.
Pengguna perlu menginput (Key in) data berdasarkan format input
Fungsi scanf () dengan format input %c
printf (“Masukkan satu huruf: “); Output: Masukkan satu huruf: _
scanf (“%c”, &huruf);
**Untuk format input aksara (charater) – depan pembolehubah mesti simpan tanda &
Fungsi scanf () dengan format input %d
printf (“Masukkan satu nombor: “); Output: Masukkan satu nombor: _
scanf (“%c”, &no);
**Untuk format input integer – depan pembolehubah mesti simpan tanda &
Fungsi scanf () dengan format input %f
printf (“Masukkan satu nombor perpuluhan: “);
scanf (“%f”, &no);
Output: Masukkan satu nombor perpuluhan: _
**Untuk format input float– depan pembolehubah mesti simpan tanda &
Fungsi scanf () dengan format input %s
printf (“Masukkan nama anda: “);
scanf (“%c”, nama);
printf (“\nNama anda ialah %s”, nama);
**Untuk format input rentetan (string) – depan pembolehubah tidak perlu simpan tanda &
Output: Masukkan nama anda: Faridah Ahmad
Nama anda ialah Faridah
** Perhatikan output; bila kita masukkan nama “Faridah Ahmad” paparan hanya kepada
perkataan “Faridah” sahaja. Ini disebabkan fungsi scanf () hanya memaparkan perkataan
pertama sesuatu ayat sahaja.
**Untuk mengatasi masalah ini kita perlu menggunakan fungsi gets () sebagai ganti kepada
fungsi scanf ().
Fungsi gets () dengan format input %s
printf (“Masukkan nama anda: “);
gets(nama);
26
MODUL PENGATURCARAAN KOMPUTER BAHASA C SEMESTER 2
printf (“\nNama anda ialah %s”, nama);
Output: Masukkan nama anda: Faridah Ahmad
Nama anda ialah Faridah Ahmad
09 LANGKAH-LANGKAH PENYELESAIAN MASALAH DALAM
PENGATURCARAAN
Terbahagi kepada lima langkah:
1. program clarification
2. program design
3. program code
4. program test
5. program documentation and maintenance
Langkah 1: Keterangan Program
Menilai masalah – mengkaji masalah dalam suatu situasi
Mengambil maklumat yang penting daripada masalah tersebut.
Bahagikan masalah tersebut kepada bahagian-bahagian yang kecil, tujuan menyenangkan
penyelesaian.
Kenalpasti penyelsaian- cadangkan beberapa penyelsaian
Pilih penyelesaian yang paling baik.
Langkah 2: Rekabentuk Program
Reka bentuk algoritma berdasarkan cadangan penyelesaian yang terbaik di langkah 1.
Reka bentuk algoritma ini boleh terdiri daripada Carta Alir atau Kod Psuedo
Langkah 3: Kod Program
Menterjemahkan reke bentuk algoritma yang dibuat dalam langkah 2 ke dalam bentuk kod
aturcara atau kod sumber C.
Langkah 4: Uji Program
Setelah selesainya pengekodan program, program tersebut perlu diuji supaya ia bebas
daripada sebarang ralat.
Ralat program mungkin terdiri daripada ralat runtime, ralat logikal dan ralat sintaks.
Jika terdapatnya ralat. Pengaturcara akan melaksanakan Nyahpijatkan (Debug) untuk
membentulkan kesalahan tersebut.
27
MODUL PENGATURCARAAN KOMPUTER BAHASA C SEMESTER 2
Langkah 5: Dokumentasi Dan Penyelengaraan
Dokumentasi Program
1. Dokumentasi Dalaman
2. Dokumentasi Luaran
Dokumentasi Dalaman merujuk kepada dokumentasi teknikal yang ditulis dalam program;
mengenai komen/penerangan suatu pernyataan kod.
Tujuan Dokumentasi dalaman ini adalah untuk rujukkan pengaturcara atau pengaturcara baru
yang akan mengambil alih tugas pengubahsuai program.
Dokumentasi dalaman ini sangat berguna kepada pengaturcara kerana dokumentasi ini
Merupakan dokumentasi rujukan untuk tujuan penyelenggaran
membolehkan pengaturcara merujuk semula aturcara
memudahkan pengeturcara mengesan kesilapan aturcara.
Dokumentasi Luaran merujuk kepada Manual Penggunaan tentang program yang telah dibina.
Manual Penggunaan ini termasuklah penerangan tentang tujuan system, cara-cara
penggunaan dan carta aliran kerja Manual Penggunaan sangat penting kepada pengguna
system
Penyelenggaraan Program: Merujuk kepada penambahbaikan, pembetulan dan penaiktarafan
program.
10 STRUKTUR KAWALAN (CONTROL STRUCTURE)
Terbahagi kepada tiga jenis struktur kawalan:
a) Struktur Kawalan Jujukan (Sequential Control Structure)
b) Struktur Kawalan Pilihan (Selection Control Structure)
c) Struktur Kawalan Ulangan (Repetition Control Structure)
A. Struktur Kawalan Jujukan
1. Merujuk kepada suatu program (aturcara) dilaksanakan secara berurutan.
2. Contoh carta alir dan kod psuedo:
Mula Kod pseudo:
Mula
Input panjang dan lebar Input panjang dan lebar
Kira luas=panjang x lebar
Kira luas=panjang *lebar Cetak luas
Panjang x lebar
Cetak luas
Tamat Tamat
28
MODUL PENGATURCARAAN KOMPUTER BAHASA C SEMESTER 2
3. Ciri-ciri sruktur kawalan jujukan :
a) Aturcara dilaksanakan secara urutan.
b) Tidak mempunyai kenyataan pilihan; contoh kenyataan if atau switch.
c) Tidak mmepunyai kenyataan ulangan; contoh kenyataan while (selagi), for (untuk)
B. Struktur Kawalan Pilihan (Selection Control Structure)
1. Juga dikenali sebagai struktur kawalan bersyarat atau conditional control structure.
2. Merujuk kepada satu program dilaksanakan dengan adanya pilihan-pilihan yang ditetapkan.
3. Ciri-ciri structure kawalan pilihan :
a) Program dilaksanakan dengan terdapatnya pilihan-pilihan yang ditetapkan.
b) Program tidak dilaksanakan secara urutan.
c) Program tidak dilaksanakan secara ulangan.
4. Terdapat 5 jenis pernyataan kawalan struktur pilihan, iaitu:
1. Kenyataan if
2. Kenyataan if……else
3. Kenyataan if …. else if …. else
4. Kenyataan if tersarang (If bersarang)
5. Kenyataan switch…case
a. Pernyataan if
1. Digunakan untuk satu atau lebih daripada satu pilihan.
2. Contoh carta alir dan kod pseudo.
Mula KOD PSUEDO:
Input Jantina Mula
Jantina! = L Ya Input Jantina
||P
Cetak Sila Masukkan P Jika jantina tidak sama dengan ‘L’
Tidak atau jantina tidak sama dengan ‘P’
atau L sahaja maka
Cetak “Sila Masukkan P atau L
sahaja”
Tamat
Tamat
29
MODUL PENGATURCARAAN KOMPUTER BAHASA C SEMESTER 2
3. Aturcara kod C:
#include<stdio.h>
void main ()
{
char jantina;
printf(“Masukkan Jantina anda (L atau P) : \n\n“);
scanf(“%c”,jantina);
if(pilihan !=’L’ || pilihan !=’P’)
printf(“Sila Masukkan P atau L sahaja”);
}
4. Contoh Carta alir dan pseudo untuk aturcara di atas.
Mula KOD PSUEDO:
Input Jantina Mula
Ya Input Jantina
Jantina=’L Cetak Lelaki Jika jantina sama dengan ‘L’ maka
’ Cetak “Anda adalah lelaki.”
Tidak Ya Jika jantina sama dengan ’P’ maka
Cetak Perempuan Cetak “Anda adalah perempuan”
Jantina=’P’
Tamat
’L’
Tidak
Tamat
5. Aturcara kod C:
#include<stdio.h>
void main ()
{
char jantina;
printf(“Masukkan Jantina anda (L atau P) : \n\n“);
scanf(“%c”,jantina);
if(jantina==’L’)
printf(“Anda adalah lelaki.”);
if(jantina==’P’)
printf(“Anda adalah Perempuan”);
}
30
MODUL PENGATURCARAAN KOMPUTER BAHASA C SEMESTER 2
b. Pernyataan if …else KOD PSUEDO:
1. Digunakan untuk melibatkan dua pilihan sahaja.
2. Contoh carta alir dan pseudo kod: Mula
Mula Input Jantina
Input Jantina Jika jantina sama dengan ‘L’ maka
Cetak “Anda adalah lelaki.”
Jantina = Ya Cetak Lelaki
‘L’ sebalik
Cetak “Anda adalah perempuan”
Tidak
Tamat
Cetak Perempuan
Tamat
3. Aturcara kod C:
#include<stdio.h>
void main ()
{
char jantina;
printf(“Masukkan Jantina anda (L atau P) : \n\n“);
scanf (“%c”, jantina);
if(pilihan==’L’)
printf (“Anda adalah lelaki.”);
else
printf (“Anda adalah Perempuan”);
}
31
MODUL PENGATURCARAAN KOMPUTER BAHASA C SEMESTER 2
c. Pernyataan if …else if …else
1. Digunakan untuk melibatkan dua pilihan atau lebih.
2. Carta alir dan pseudo kod:
Mula
Input pilihan KOD PSUEDO:
Pilihan Ya Mula
=1
Cetak ...Kereta Input pilihan
Tidak Ya Jika pilihan sama dengan 1 maka
Cetak “Anda memdapat sebuah kereta”
Pilihan Cetak ...motorsikal
=2 Cetak …meja Jika sebalik pilihan sama dengan 2 maka
Cetak …kerusi Cetak “Anda mendapat sebuah
Tidak Ya motorsikal”
Pilihan Jika sebalik pilihan sama dengan 3 maka
=3 Cetak “Anda mendapat sebuah kerusi”
Tidak Ya sebalik
Cetak “Maaf salah kod pilihan”
Pilihan
=4 Tamat
Tidak
Cetak ……Maaf salah kod
Tamat #include<stdio.h>
void main ()
2. Aturcara kod C: {
int pilihan;
printf (“Sila masukkan 1 hingga 4 sahaja: \n\n “);
scanf (“%c”, pilihan);
if(pilihan==1)
printf (“Anda memdapat sebuah kereta”);
else if (pilihan==2)
printf (“Anda mendapat sebuah motorsikal”);
else if (pilihan==3)
printf (“Anda mendapat sebuah meja”);
else if (pilihan==4)
printf (“Anda mendapat sebuah kerusi”);
else
printf (“Maaf salah kod pilihan”);
}
32
MODUL PENGATURCARAAN KOMPUTER BAHASA C SEMESTER 2
c. Pernyataan if Tersarang (Nested if)
1. Makna dalam if ada if.
2. formatnya adalah seperti berikut:
if(pilihan==1)
{ if(nama==’chee’)
printf (“…….”);
else
printf (“….”)
}
else
printf (“……”)
d. Pernyataan switch…. case
1. Melibatkan lebih daripada dua pilihan.
2. Contoh carta alir dan pseudo kod
Mula
Input pilihan KOD PSUEDO:
case Ya Cetak 1 Mula
1 Ya Cetak 2
Cetak 3 Input pilihan
Tidak
Kes 1: Cetak1
Case Berhenti
2
Kes2: Cetak 2
Tidak Berhenti
Case Kes 3: Cetak 3
3 Berhenti
Default: Cetak 4
Tamat
Ya
Tidak
Cetak 4
Tamat
33
MODUL PENGATURCARAAN KOMPUTER BAHASA C SEMESTER 2
** Kenyataan switch adalah sama dengan penggunaan kenyataan if…else if…else
3. Aturcara kod C:
#include<stdio.h>
void main ()
{
int pilihan;
printf (“Masukkan 1 – 3 sahaja: “);
scanf (“%d”, pilihan);
switch(pilihan)
{
case 1: printf (“1”); break;
case 2: printf (“2”); break;
case 3: printf (“3”); break;
default: printf (“4”);
}
}
11 STRUKTUR KAWALAN ULANGAN (REPETITION CONTROL
STRUCTURE)
1. Struktur kawalan yang aturcara akan diulangi selagi syarat tidak dipenuhi.
2. Ciri-ciri struktur kawalan ini
a) Terdapatnya kenyataan berulang dan ia akan tamat jika syarat dipenuhi.
b) Terdapat kenyataan “while”
c) Mempunyai pengemakinian pembilang yang mengawal bilangan ulangan.
3. Struktur kawalan ini terbahagi kepada 3 jenis kenyataan:
a) Kenyataan while
b) Kenyataan do…while
c) Kenyataan for
A. Kenyataan while
1. Format umum penulisan kenyataan while adalah seperti di bawah
while (ujian) ujian
{ badan
Kenyataan
pengemaskini
}
2. terbahagi kepada dua bahagian utama; kepada dan badan
ujian satu kompenan yang menentukan berapa kali kenyataan
34
MODUL PENGATURCARAAN KOMPUTER BAHASA C SEMESTER 2
dalam badan hendak diulang. Bila ujian tersebut memenuhi syarat maka ulangan
tersebut akan tamat.
Badan terdiri daripada satu atau lebih kenyataan C dan pengemaskini
3. Contoh carta alir dan psuedo kod aturcara mennggunakan kenyataan while:
Kod Psuedo: Carta Alir:
Mula mula
Set i kepada 0, jumlah kepada 0 Isytihar
Selagi i lebih kecil daripada 6 maka Int i=0
Jumlah=0
Cetak jumlah i<6 Ya Kemaskini bilangan
Kemaskini jumlah +=1 ulangan
Kemaskini i ++ Tidak Cetak jumlah i++
Tamat selagi Kemaskini
Pengiraaan
Tamat Jumlah +=1
4. Keratan Kod C kenyataan while: Tamat
B. Kenyataan do…while int i=0;
int jumlah=0;
while(i<6)
{
printf (“%d”, jumlah)
jumlah +=1;
i++;
}
1. kenyataan ini seakan-akan sama dengan kenyataan while. Yang terdiri daripada ujian dan badan.
2. Beza antara kenyataan do..while dan while ialah do..while akan melaksanakan kenyataan dalam
badan dahulu kemudian baru uji ujian bersyarat manakala kenyataan while akan membuat ujian
bersyarat kemudian baru melaksanakan kenyataan dalam badan.
35
MODUL PENGATURCARAAN KOMPUTER BAHASA C SEMESTER 2
3. Format penulisan umum kenyataan do…while adalah seperti berikut :
do { badan
kenyataan ujian
} while(ujian)
4. Contoh Carta alir dan kod psuedo mula
Mula Isytihar
Isytihar int i=0, int jumlah=0 Int i=0
Jumlah=0
Laksana Selagi i lebih kecil daripada 6 Cetak jumlah
Cetak jumlah Kemaskini
Kemaskini jumlah +=1 Jumlah +=1
Kemaskini i ++
Kemaskini
Tamat laksana i++
Tamat Ya
3. Keratan kod C kenyataan do..while i<6
int i=0; Tidak
int jumlah=0;
Tamat
do
{
printf (“%d”, jumlah)
jumlah +=1;
i++;
} while(i<6);
C. Kenyataan for
1. Satu contoh pernyataan ulangan (loop statement)
2. Bentuk umum for adalah seperti berikut :
for(awalan,ujian,pengemaskinian)
{
kenyataan
}
3. Berdasarkan contoh di atas, pernytaan for terdapat tiga ungkapan; iaitu awalan, ujian dan
pengemaskinian.
4. Awalan merujuk kepada nilai awal perlaksanaan sebelum gelung pertama.
5. Ujian menentukkan sama ada ulangan terus dilakukan atau sebaliknya.
6. pengemaskinian merujuk nilai pembolehubah selepas setiap gelung dilaksanakan.
36
MODUL PENGATURCARAAN KOMPUTER BAHASA C SEMESTER 2
7. Carta alir dan kod psuedo
Mula Mula
Untuk x =0 kepada x lebih besar daripada 0 Set Awalan
Cetak x x=10
Kemaskini x=x+1
tamat ulangan Kemaskini
x=x-1
Tamat
x>0 Ya
8. Aturcara kod C:
Tidak Cetakan x
Tamat
#include<stdio.h> Awalan: Tetapan nilai awalan
void main () untuk pembolehubah
{
Ujian: Menentukkan berapakali
int x; hendak diulang (10 kali ulang)
for (x=1; x>11; x++) Pengemaskinian:
mengemaskini nilai x untuk
printf (“&”); setiap kali ualangan
}
9. Berdasarkan aturcara di atas:
a) berapa kali ulangan akan dilakukan?
b) apakan output yang akan dicetak?
10. Tentukan apakah output yang akan dihasilkan daripada aturcara for berikut:
for (x=10; x>0; x--)
printf (“%d”, x);
D. Kenyataan yang Lain
Pernyataan break
1. Pernyataan break adalah satu contoh pernyataan kawalan ulangan (loop control statement).
2. Mempunyai dua fungsi:
a. untuk menamatkan pernyataan “case” yang terdapat dalam pernyataan switch. Ini bermakna ia
boleh menghalang melaksanakan “case” seterusnya.
b. untuk menamatkan pernyataan perintah loop (for, while, do…while) secara paksaan.
Pernyataan continue
1. Pernyataan continue adalah satu contoh pernyataan kawalan ulangan (loop control statement).
2. Fungsinya ialah mengembalikan suatu ulangan (loop) kembali semula ke kedudukan mengujian.
37
MODUL PENGATURCARAAN KOMPUTER BAHASA C SEMESTER 2
12 FUNGSI (FUNCTION)
Apakah itu fungsi?
1. Fungsi ialah blok-blok kod yang menjalankan beberapa perintah-perintah ditakrifkan sebelum
mencapai sesuatu yang hasil.
2. Biasanya fungsi terdiri daripada satu fungsi utama dan sub-sub fungsi yang lain.
3. Fungsi biasanya terdiri daripada:
a) Definisi (Takrifan) Fungsi (Function Definition)
b) Prototaip Fungsi.
c) Pemanggil Fungsi
A. Definisi Fungsi (Function Difinition)
1. Merupakan blok kod yang terdiri daripada jenis fungsi, nama fungsi, parameter dan kenyataan
difinisi (takrifan).
2. Format Definisi fungsi adalah seperti berikut: Jenis Pemulangan Fungsi
void KiraLuasSegiempat (int panjang, int lebar) Nama Fungsi
{ Jenis Data dan Parameter
int luas;
luas = panjang * lebar; Pernyataaan
printf (“Luas Segiempat = %d”, luas); Definisi
}
Jenis Pemulangan Fungsi (Return Type Function):
Merujuk kepada Jenis nilai kembali fungsi tersebut. Jenis fungsi contoh di atas ialah void.
Jika guna “void” ia tidak mengembalikan nilai, nilai akan dicetak dalam fungsi tersebut juga.
Jika guna jenis fungsi “int” ia akan mengembalikan nilai. Contoh seperti di bawah akan
mengembalikan jenis nilai int.
int KiraLuasSegiempat (int panjang, int lebar)
{
int luas;
luas = panjang * lebar;
return luas;
}
Nama Fungsi: Nama yang ditetapkan untuk fungsi, mesti guna nama yang sesuai.
Parameter : Nilai pembolehubah dari fungsi utama akan dihantar dari fungsi uatama ke fungsi
untuk tujuan mengiraan
38
MODUL PENGATURCARAAN KOMPUTER BAHASA C SEMESTER 2
B. Prototaip Fungsi
Merujuk kepada pengisytiharan fungsi yang tidak mempunyai badan fungsi tetapi
mengandungi jenis fungsi, nama fungsi dan bahagian parameter terdiri daripada jenis
pembolehubah.
Fungsi Prototaip fungsi adalah untuk memberitahu compiler jenis nilai yang akan
dikembalikan ke fungsi utama, jumlah parameter menunjukkan berapa jenis nilai yang akan
diterima.
Format penulisan prototaip fungsi adalah seperti berikut:
void kiraLuasSegiempat (int, int);
Latihan:
1. Apakah jenis data prototaip fungsi di atas?
2.Apakah jenis data yang akan diterima oleh fungsi dari fungsi utama?
3. Berapa jenis nilai yang akan diterima.
C. Pemanggil Fungsi
Merujuk kepada pengisytiharan fungsi yang terdiri daripada nama fungi dan parameter fungsi
yang terdiri daripada pembolehubah yang di isytihar daam fungsi utama; tanpa mengandungi
jenis fungsi.
Fungsi Pemanggil fungsi adalah untuk menghantar nilai dari fungsi ke sub fungsi atau
menerima nilai yang dikembalikan dari sub fungsi.
Format penulisan pemanggil fungsi adalah seperti berikut:
kiraLuasSegiemapat (panjang, lebar);
Terdapat tiga cara mencetak nilai yang dikembalikan daripada sub fungsi.
Cara 1: Jika tiada nilai yang dikembalikan dari sub fungsi
kiraLuasSegiempat (panjang, lebar);
Cara 2: Jumlah kiraan luas dari fungsi kiraLuasSegiempat yang dipulangkan ke
fungsi utama dan nilai dipegang oleh pembolehubah luas
int luas;
luas = kiraLuasSegiempat (panjang, lebar);
printf (“%d”, luas);
Cara 3: Terus cetak jumlah kiraan luas dari fungsi kiraLuasSegiempat yang dipulangkan
ke fungsi utama
printf (“%d”, kiraLuasSegiempat (panjang, lebar);
39
MODUL PENGATURCARAAN KOMPUTER BAHASA C SEMESTER 2
Contoh Aturcara Fungsi Prototaip Fungsi
#include<stdio.h> Pemanggil Fungsi
Definisi Fungsi
int kiraLuasSegiempat (int, int); Badan Fungsi
void main ()
{
int panjang, lebar, jawapan;
printf (“Masukkan panjang = “);
scanf (“%d”, &panjang);
printf (“Masukkan lebar = “);
scanf (“%d”, &lebar);
jawapan = kiraLuasSegiempat (p, l);
printf (“Luas Segiempat = %d”, jawapan);
}
int KiraLuasSegiempat (int p, int l)
{
int kira;
kira = p * l;
return kira;
}
Mengapa Perlunya Fungsi?
Struktur mudah diurus dan mengesan ralat.
Aturcara menjadi lebih mudah dibaca dan difahami kerana kumpulan suruhan – suruhan
yang melakukan kerja tertentu dikumpulkan dlm beberapa bahagian yang dipanggil fungsi.
Ia juga memudahkan proses penyahpepijat. (pembetulan ralat aturcara)
Jimat masa/ruang dan guna semula
Jujukan suruhan yg berulang – ulang dalam sesuatu aturcara boleh dijadikan fungsi. Fungsi
ini hanya perlu ditulis sekali sahaja dan boleh digunakan berulang -ulang dengan
memanggil nama fungsi tersebut. Contohnya fungsi printf yg panjangnya beratus baris
hanya ditulis sekali oleh pembekal pengkompil, tetapi boleh digunakan berulang -
ulang dlm aturcara kita.
Menggalakkan aturcara bermodular
Masalah yang besar dipecahkan kepada masalah yang kecil (pendekatan atas-bawah) dan
skop masalah yang kecil tersebut diselesaikan satu persatu.
40
MODUL PENGATURCARAAN KOMPUTER BAHASA C SEMESTER 2
Jenis-Jenis Fungsi
1. Fungsi boleh dibahagikan kepada dua:
a) Fungsi piawai perpustakaan C (C library)
b) Fungsi Takrifan Pengguna
a) Fungsi Piawaian Perpustakaan C (Function Standard Library C)
merupakan fungsi binaan dalam perpustakaan C.
Contoh seperti printf (), scanf (), gets (); dan lain-lain lagi.
b) Fungsi Definisi (Takrifan) Pengguna
Merujuk kepada fungsi yang dibina oleh programmer/pengeturcara sendiri.
Fungsi takrifan pengguna ini boleh dibahagikan kepada:
a) penglibatan fungsi yang tidak mengahantar nilai ke sub fungsi dan tidak mengembalikan
nilai ke fungsi utama.
Ciri-Ciri fungsi ini:
o Tidak mempunyai parameter
o Penggunaan jenis data “void” pada fungsi (contoh void luasSegitiga)
o Tidak menghantar nilai (pass value)
o Tidak mengembalikkan nilai (return nilai)
Contoh aturcara seperti di bawah ini.
#include<stdio.h> Output Aturcara:
int luasSegiempat (int, int) MENU UTAMA
1. LELAKI
void main () 2. PEREMPUAN
{
Sila buat pilihan (1 atau 2): _
int pilihan;
menuPilihan ();
printf (“Sila buat pilihan (1 atau 2): “);
scanf (“%d”, &pilihan);
}
void luasSegiempat ()
{
printf (“MENU UTAMA\n\n”);
printf (“1. LELAKI\n”);
printf (“2. PEREMPUAN\n”);
}
41
MODUL PENGATURCARAAN KOMPUTER BAHASA C SEMESTER 2
b) penglibatan fungsi yang menghantar nilai daripada fungsi utama tetapi tidak
mengembalikkan nilai ke fungsi utama.
Ciri-Ciri fungsi ini:
o mempunyai parameter
o Penggunaan jenis data “void” pada fungsi (contoh void luasSegitiga)
o menghantar nilai (pass value)
o Tidak mengembalikkan nilai (return nilai)
Contoh aturcara seperti di bawah ini.
Perhatikan: #include<stdio.h>
Nilai Luas tidak dikembalikkan void luasSegiempat (int, int)
ke fungsi utama untuk dicetak.
Nilai luas dicetak/dipapar terus void main ()
pada sub fungsi tersebut juga. {
int panjang, lebar;
printf ("Masukkan panjang = ");
scanf ("%d”, &panjang);
printf ("Masukkan lebar = ");
scanf ("%d”, &lebar);
luasSegiempat (panjang, lebar);
}
void luasSegiempat (int panjang, int lebar)
{
int luas;
luas = panjang * lebar;
printf (“LUAS = %d”, luas);
}
c) penglibatan fungsi yang menghantar nilai daripada fungsi utama dan mengembalikkan
nilai ke fungsi utama.
Ciri-Ciri fungsi ini:
mempunyai parameter
menghantar nilai (pass value)
mengembalikkan nilai (return nilai)
42
MODUL PENGATURCARAAN KOMPUTER BAHASA C SEMESTER 2
Contoh aturcara seperti di bawah ini. Perhatikan:
Nilai Luas dikembalikan ke fungsi
#include<stdio.h> utama. Nilai luas dicetak/dipapar
pada fungsi utama.
int luasSegiempat (int, int);
Perhatikan:
void main () Nilai Luas dikembalikan ke fungsi
{ utama.
int panjang, lebar;
int luas;
printf ("Masukkan panjang = ");
scanf ("%d”, &panjang);
printf ("Masukkan lebar = ");
scanf ("%d”, &lebar);
luas = luasSegiempat (panjang, lebar);
printf (“LUAS = %d”, luas);
}
int luasSegiempat (int panjang, int lebar)
{
int luas;
luas = panjang * lebar;
return luas;
}
43
MODUL PENGATURCARAAN KOMPUTER BAHASA C SEMESTER 2
Pertukaran antara Carta Alir Fungsi ke Atucara Kod C
Mula #include<stdio.h>
Isystihar prototaip void luasSegiempat (int, int);
int luasSegiempat (int, int)
int main ()
Isystihar pembolehubah {
int panjang, lebar, luas
int panjang, lebar;
Input Panjang int luas;
Input lebar printf ("Masukkan panjang = ");
scanf ("%d”, &panjang);
luasSegiempat (panjang, lebar)
printf ("Masukkan lebar = ");
Tamat scanf ("%d”, &lebar);
luasSegiempat (panjang, lebar);
}
luasSegiempat (panjang, lebar) void luasSegiempat (int panjang, int lebar)
{
Isystihar pembolehubah
int panjang, lebar, luas int luas;
luas = panjang * lebar;
Kira printf (“LUAS = %d”, luas);
luas = panjang x lebar }
Cetak Luas
Balik ke fungsi utama
44
MODUL PENGATURCARAAN KOMPUTER BAHASA C SEMESTER 2
Cara Pencerakinan Kod Dari Fungsi Utama ke Sub Fungsi
1. Kod-kod dalam fungsi utama boleh dipecahkan. Untuk membentuk sub fungsi supaya fungsi utama
Lebih kemas dan kodnya tidak terlalu panjang.
2. Di bawah merupakan satu aturcara yang lengkap untuk mencari hasil penambahan dua nilai nombor.
Katakan kod fungsi utama ini akan dipecahkan untuk membentuk satu sub fungsi yang bernama:
int kiraJumlah (int a, int b);
Lihat cara bagaimana dipecahkan kepada sub fungsi:
#include<stdio.h>
void main () int kiraJumlah (int a, int b)
{ {
int no1, no2, jumlah; int jumlah;
printf ("Masukkan Nombor Pertama:"); jumlah= a + b;
scanf ("%d”, &no1);
printf ("JUMLAH: %d”, jumlah);
printf ("Masukkan Nombor Kedua:"); }
scanf ("%d”, &no2);
jumlah = no1 + no2;
printf ("JUMLAH: %d”, jumlah);
}
Fungsi Utama Setelah Sub Fungsi (Fungsi kiraJumlah)
#include<stdio.h> dipecahkan
int kiraJumlah (int a, int b)
int kiraJumlah (int, int); {
void main () int jumlah;
{
jumlah= a + b;
int no1, no2;
printf ("JUMLAH: %d”, jumlah);
}
printf ("Masukkan Nombor Pertama:");
scanf ("%d”, &no1);
printf ("Masukkan Nombor Kedua:");
scanf ("%d”, &no2);
kiraJumlah (no1, no2);
}
45
MODUL PENGATURCARAAN KOMPUTER BAHASA C SEMESTER 2
Latihan Kendiri 1
Di bawah ini menunjukkan satu fungsi utama sebuah aturcara C. Aturcara dibangunkan untuk mencari
purata tiga nombor.
#include<stdio.h>
int main ()
{
int no1, no2, no3, purata;
printf (“Masukkan No 1: “);
scanf (“%d”, &no1);
printf (“Masukkan No 2: “);
scanf (“%d”, &no2);
printf (“Masukkan No3: “);
scanf (“%d”, &no3);
purata = (no1 + no2 + no3) / 3;
printf (“PURATA = %d”, purata);
}
a) Asingkan fungsi utama ini kepada sub fungsi void purataTigaNo (int a, int b, int c). Tulis
segmen kod untuk sub fungsi tersebut.
b) Tulis segmen kod untuk fungsi utama setelah proses pengasingan tersebut.
46
MODUL PENGATURCARAAN KOMPUTER BAHASA C SEMESTER 2
Fungsi Piawaian (Standard Function) dalam Perpustakaan C (Library C)
Merujuk kepada fungsi yang bukan dibina oleh programmer dan ia merupakan fungsi dalaman
yang disimpan dalam perpustakaan C.
Fungsi piawaian yang selalu kita guna adalah fungsi input/output, seperti:
printf () – untuk paparan output.
scanf () - untuk input data.
Fungsi lain adalah seperti gets (), puts (), strcpy () dan lain-lain lagi.
Dalam bahagian ini, kita akan berbincang tentang fungsi yang berasaskan matematikal
Fungsi matematikal ini, perlu diisytiharkan header files “math.h” seperti berikut #include<math.h>
a) sqrt ()
Untuk mencari punca kuasa dua suatu nilai.
Nilai yang hendak dipunca kuasa dua haruslah diisytiharkan kepada jenis data float
atau double.
Contoh √16
Contoh aturcara:
#include<stdio.h>
#include<math.h> Hasil Output:
int main () 4.000000
{
float x = 16;
printf (“%f”, sqrt(x));
}
b) pow ()
Untuk mencari nilai kuasa bagi satu nilai, contoh 82
Format nilai kuasa suatu nilai adalah seperti berikut:
Cara penggunaan fungsi ini adalah seperti berikut:
pow (double x, double y);
Contoh aturcara Hasil Output:
#include<stdio.h> 8.114653
#include<math.h>
int main ()
{
float x = 3.2, y=1.8;
printf (“%f”, pow (x, y));
}
47
MODUL PENGATURCARAAN KOMPUTER BAHASA C SEMESTER 2
c) floor ()
Merupakan fungsi yang akan mengembalikkan nilai integer terbesar yang tidak
melebihi x.
Contoh aturcara
#include<stdio.h>
#include<math.h>
int main () Hasil Output:
{ 8.000000
float x = 8.3;
printf (“%f”, floor(x));
}
d) ceil ()
Merupakan fungsi yang akan mengembalikkan nilai integer terbesar yang tidak
melebihi x.
Contoh aturcara
#include<stdio.h>
#include<math.h>
int main () Hasil Output:
{ 9.000000
float x = 8.3;
printf (“%f”, ceil(x));
}
Soalan
Tukarkan √ − 2 kepada ungkapan aturcara C.
48
MODUL PENGATURCARAAN KOMPUTER BAHASA C SEMESTER 2
13 TATASUSUN (ARRAY)
1. Tatasusun merupakan sejenis maklumat yang berstruktur terutamanya digunakan untuk
mengumpukan pembolehubah sama jenis dan mewakilinya dengan satu nama.
2. Indeks tatasusun akan dignakan untuk menuding ke maklumat dalam tatasusun yang ingin dicapai.
JENIS TATASUSUN
Tatasusun boleh dibahagi kepada :
a. tatasusun satu dimensi
b. tatasusun dua dimensi
A) Tatasusun 1 Dimensi
a) Pengisytiharan Tatasusun 1 dimensi
1. Penggunaan tatasusun sama dengan pembolehubah lain, iaitu ia mesti diisytiharkan terlebih dahulu
sebelum boleh digunakan.
2. Format pengisytiharan tatasusun satu dimensi adalah seperti berikut :
Jenis data Nama pembolehubah [saiz]
Contoh : int nombor[5]
3. Dalam bahasa C, indeks bagi elemen pertama masti bermula dengan 0.
4. Pengisytiharan tatasusun int nombor[5] . Memori komputer akan menyediakan ruangan seperti
digambarkan bawah ini :
indeks [0] [1] [2] [3] [4]
saiz tatasusun (array size)
atau
indeks Perhatian:
[0] Saiz indek dikira bermula
saiz tatasusun [1] dengan 1
Nombor indek mesti
[2]
bermula dengan 0
[4] Elemen dikira seperti saiz
indek bermula dengan 1
[5]
49
MODUL PENGATURCARAAN KOMPUTER BAHASA C SEMESTER 2
b) Contoh Aturcara Tatasusun Satu Dimensi – Melibatkan Nombor Dan Aksara
1. Mengumpuk nilai awal (nombor) untuk tatasusun satu dimensi dan cara mencapai nilai
tersebut.
#include<stdio.h> Cara penetapan nilai awal:
void main() Saiz indek adalah saiz 4, maka 4 nilai
{ saja boleh dimasukkan.
int nombor[4] = {3,4,5,6}; 3 indek [0]
4 indek [1]
printf(“%d”,nombor[0]); 5 indek [2]
} 6 indek [3]
Soalan : Output:
3
Apakah nilai output bagi aturcara C berikut : sebab pegang nilai indek [0]
a) printf(“%d”,nombor[1]);
b) printf(“%d”,nombor[3]);
2. Mengumpuk nilai awal (aksara) untuk tatasusun satu dimensi dan cara mencapai nilai tersebut.
#include<stdio.h> Cara penetapan nilai awal:
void main() Saiz indek adalah saiz 4, maka 4 nilai
{ saja boleh dimasukkan.
Tanda’’ digunakan untuk setiap aksara
char huruf[4]={‘a’,’b’,’c’,’d’};
a indek [0]
printf(“%c”,huruf[0]); b indek [1]
} c indek [2]
d indek [3]
Soalan : Output:
a
Apakah nilai output bagi aturcara C berikut : sebab pegang nilai indek [0]
a) printf(“%c”,huruf[2]);
b) printf(“%c”,huruf[3]);
3. Mengumpuk nilai awal ( rentetan(string) ) untuk tatasusun satu dimensi dan cara mencapai
nilai tersebut. Cara penetapan nilai awal:
#include<stdio.h> Saiz indek adalah saiz 10, maka 10 ruangan akan
void main () disediakan dalam memori termasuk rungan
{ kosong antara perkataan John dan Kong dan 1
tempat untuk \0 dipenghujung perkataan.
char nama [10] =” John Kong”; Tanda ” ”digunakan untuk setiap rentetan(string)
printf (“%s”, nama); 0 1 2 3 4 5 6 78 9
} J o h n K o n g \0
Output:
John Kong
50