Anda di halaman 1dari 36

DASAR -DASAR PEMROGRAMAN

WELKI SITUMORANG
222406062
KOMB’22

PROGRAM STUDI D-3 TEKNIK INFORMATIKA


FAKULTAS VOKASI
UNIVERSITAS SUMATERA UTARA
MEDAN
2023
KATA PENGANTAR

Puji dan syukur penulis panjatkan kepada Tuhan Yang Maha Esa, dengan
Berkat-Nya penulis dapat menyelesaikan penyusunan makalah ini dengan judul Dasar-
dasar Pemrograman.
Terima kasih penulis sampaikan kepada setiap pihak yang sudah mendukung
selama berlangsungnya pembuatan makalah ini. Terkhusus lagi penulis sampaikan
terima kasih kepada Bapak James Piter Marbun, Drs., M.Kom. selaku dosen pengajar
dan asisten laboratorium, Egi Ribeka Br Singarimbun, yang telah membimbing
penulis. sekaligus juga berharap semoga makalah ini bisa bermanfaat bagi setiap
pembaca.
Penulis menyadari bahwa makalah ini belum sempurna. Oleh karena itu
penulis mengharapkan kritik dan saran yang membangun.

Medan, 4 Januari 2023

Penulis

i
DAFTAR ISI

Halaman

KATA PENGANTAR i
DAFTAR ISI ii

BAB 1 PENDAHULUAN
1.1 Latar Belakang 1
1.2 Rumusan Masalah 2
1.3 Tujuan 2

BAB 2 PENGENALAN BAHASA C


2.1 Bahasa C Sebagai Bahasa Pemrograman 3
2.2 Program Komputer 3
2.3 Kompilator 3
2.4 Bahasa Pemrograman 4
2.5 Alasan Penggunaan Bahasa C 4

BAB 3 OPERATOR DAN TIPE DATA


3.1 Operator dalam Pemrograman 6
3.1.1 Operator Aritmatika 6
3.1.2 Operator Increment dan Decrement 6
3.1.3 Operator Perbandingan/Relasional 7
3.1.4 Operator Logika/Boolean 8
3.2 Tipe Data dalam Pemrograman 8
3.2.1 Integer 8
3.2.2 Floatingpoint 9
3.2.3 Character(char) 9
3.2.4 Boolean (bool) 9
3.2.5 Array 9
3.2.6 String 10

BAB 4 PERCABANGAN
4.1 Pengantar Mengenai Percabangan 11
4.2 Berbagai Percabangan dalam Bahasa C 11
4.2.1 If Statement 11
4.2.2 If Else 12
4.2.3 If Else If 13
4.2.4 Nested If 14
4.2.5 Switch Case 15

ii
BAB 5 PERULANGAN/LOOPING
5.1 Pengenalan Looping 17
5.2 Struktur Perulangan 18
5.2.1 Struktur For 18
5.2.2 Struktur While 21
5.2.3 Struktur Do-while 22
5.3 Break dan Continue 23

BAB 6 FUNCTION/FUNGSI
6.1 Pengertian Fungsi 24
6.2 Jenis Fungsi 24
6.2.1 Fungsi Tanpa Nilai Balik (Void Function) 24
6.2.2 Fungsi Dengan Nilai Balik 24
6.2.3 Fungsi Dengan Parameter 25
6.3 Tujuan Function 25
6.4 Ruang Lingkup Variabel 26
6.4.1 Variabel Lokal 26
6.4.2 Variabel Global 26
6.4.3 Variabel Register 26
6.4.4 Variabel Statik 27

BAB 7 ARRAY
7.1 Pengantar Array 28
7.2 Bentuk-bentuk Array 29
7.2.1 Array Satu Dimensi 29
7.2.2 Array Dua Dimensi 29
7.2.3 Array Multidimensi 29
7.3 Keunggulan dan Kelemahan Array 30

BAB 8 PENUTUP
8.1 Kesimpulan 31
8.2 Saran 31

iii
1

BAB 1
PENDAHULUAN

1.1 Latar Belakang


Bahasa Pemrograman (programming language) adalah sebuah instruksi standar
untuk memerintah komputer agar menjalankan fungsi tertentu. Bahasa pemrograman
ini merupakan suatu himpunan dari aturan sintaks dan semantik yang dipakai untuk
mendefinisikan program komputer. Bahasa ini memungkinkan seorang programmer
dapat menentukan secara persis data mana yang akan diolah oleh komputer, bagaimana
data ini akan disimpan/diteruskan, dan jenis langkah apa secara persis yang akan
diambil dalam berbagai situasi.
Bahasa pemrogaman itu sendiri sudah ditemukan pada tahun setelah
diketemukannya mesin komputer, mulai generasi yang paling pertama kali yaitu kode
mesin, sampai sampai generasi sekarang yang banyak digunakan sebagai bahasa
pemrograman dalam pembuatan berbagai aplikasi, dalam konteksnya adalah setiap
bahasa pemrograman mempunyai yang namanya kode, kode tersebut akan mendasari
berbagai pemrosesan tiap step/langkah beradasarkan tipe data yang diinputkan oleh
programmer, contohnya dalam bahasa pemrograman pascal adalah penggunaan tipe
data integer untuk bilangan angka yang nantinya akan diproses dan penggunaan tipe
data string untuk data-data yang terdiri dari susunan huruf dan nantinya tidak akan
diproses dalam perhitungan algoritma dan akan dimunculkan (dicetak/write) pada
akhir sequence.
Pada dasarnya bahasa pemrograman adalah hal yang sangat lumrah dikalangan
para programmer dan para pengambil keputusan/decision maker, sebagai seorang
engineer kita dituntut untuk menyelesaikan masalah secara runtut dan sistematis,
dengan menggunakan pola pikir yang dimiliki tersebut, kita akan dengan optimal
mempertimbangkan segala sesuatu yang mempengaruhi/faktor dari nilai baik tidaknya
atau positif negatifnya suatu keputusan yang kita ambil, pembahasan dalam makalah
ini akan mengerucut pada pengenalan bahasa pemrograman meliputi berbagai bahasa
pemrograman berdasarkan generasi, jenis, penggunaan, dan kelebihan ataupun
kekurangan dari tiap jenis bahasa pemrograman yang kami definisikan.
2

Fungsi bahasa pemrograman yaitu memerintah komputer untuk mengolah data


sesuai dengan alur berpikir yang kita inginkan. Keluaran dari bahasa pemrograman
tersebut berupa program/aplikasi. Contohnya adalah program yang digunakan oleh
kasir di mal-mal atau swalayan, penggunaan lampu lalu lintas di jalan raya, dll. Dari
pemerintah pusat sampai tingkat pemerintah desa, perusahaan-perusahaan,
supermarket, minimarket, perguruan tinggi, SLTA, SLTP, bahkan SD hampir
semuanya mengenal komputer. Saat ini, yang mempunyai lingkungan yang semakin
luas dan banyak diminati, juga dapat digunakan untuk menghasilkan uang adalah dunia
pemrograman komputer. Dalam dunia pemrograman komputer, dikenal algoritma dan
banyak bahasa pemrograman, seperti C, C++, Pascal, Basic, Java, dan lain-lain. Oleh
karena itulah, yang akan dibahas dalam makalah ini adalah tentang pemrograman,
seperti Algoritma dan Flowchart, Bahasa C, dan Decision.

1.2 Rumusan Masalah


Berikut rumusan masalah yang dibahasa dalam makalah ini.
1. Apa pengertian bahasa pemrograman?
2. Apa yang dimaksud dengan bahasa c sebagai salah satu bahasa pemrograman?
3. Apa saja fungsi dan perintah yang ada di dalam bahasa c?
4. Bagaimana cara membuat program sederhana menggunakan bahasa c?
5. Apa saja tipe data dalam bahasa c?

1.3 Tujuan
Adapun tujuan dari penulisan makalah ini.
• Untuk mengetahui definisi bahasa pemrograman.
• Untuk mengetahui definisi bahasa c sebagai sebagai salah satu bahasa
pemrograman.
• Untuk mengetahui berbagai fungsi dan perintah yang ada dalam bahasa c.
• Untuk mengetahui dan memahami cara membuat program sederhana dengan
menggunakan bahasa c.
• Untuk mengetahui berbagai tipe data dalam bahasa
3

BAB 2
PENGENALAN BAHASA C

2.1 Bahasa C Sebagai Bahasa Pemrograman


C merupakan bahasa pemrograman yang berkekuatan tinggi (powerful) dan
fleksibel yang telah banyak digunakan oleh para programmer profesional untuk
mengembangkan program-program yang sangat bervariasi dalam berbagai bidang.
Namun sebelum Anda mempelajari lebih jauh mengenai bahasa C beserta
implementasinya, sebaiknya Anda mengetahui terlebih dahulu komponen dan
pengetahuan dasar tentang ilmu pemrograman komputer.

2.2 Program Komputer


Program komputer tidak lain adalah suatu perangkat lunak (software) yang
digunakan untuk keperluan-keperluan aplikatif tertentu di berbagai bidang, baik di
lingkungan perusahaan, pendidikan ataupun yang lainnya. Perangkat lunak tersebut
sebenarnya merupakan suatu runtunan kode-kode program yang ditulis dengan salah
satu bahasa pemrograman tertentu dan telah dikompilasi melalui kompilator yang
sesuai dengan bahasa pemrograman tersebut. Dengan demikian, untuk membuat
sebuah perangkat lunak atau yang lazim dikenal dengan sebutan ‘program’, kita tentu
harus memiliki keahlian dan menguasai salah satu bahasa pemrograman tertentu.

2.3 Kompilator
Kompilator (compiler) dapat diartikan sebagai suatu penerjemah, artinya
kumpulan kode program yang ditulis dalam suatu bahasa pemrograman tertentu akan
diterjemahkan oleh kompilator ke dalam bahasa assembly; yang selanjutnya akan
diterjemahkan lagi menjadi kode objek sehingga perintah-perintahnya akan dikenali
oleh komputer (dalam hal ini mesin). Dengan demikian komputer akan dapat merespon
permintaan kita dengan melakukan sesuatu sesuai dengan apa yang kita perintahkan.
4

Tidak semua bahasa pemrograman dapat dikompilasi di dalam satu kompilator


tertentu, artinya sebuah kompilator hanya akan mengenali bahasa-bahasa tertentu saja
sesuai dengan yang telah dibuat oleh pencipta kompilator tersebut. Sebagai contoh,
Anda tidak dapat melakukan kompilasi program yang ditulis dalam bahasa C di dalam
kompilator Pascal, begitu pun sebaliknya. Namun sebagai pengetahuan bagi Anda
bahwa untuk semua kompilator C++, selain digunakan untuk mengompilasi program
yang ditulis dalam bahasa C++, kompilator tersebut juga dapat digunakan untuk
melakukan kompilasi terhadap kode-kode program yang ditulis dalam bahasa C.

2.4 Bahasa Pemrograman


Bahasa pemrograman adalah suatu kumpulan kata (perintah) yang siap
digunakan untuk menulis suatu kode program sehingga kode-kode program yang kita
tulis tersebut akan dapat dikenali oleh kompilator yang sesuai. Kata-kata tersebut
dalam dunia pemrograman sering dikenal dengan istilah keyword (terkadang disebut
reserved word). Untuk mempelajari salah satu bahasa pemrograman tertentu, tentunya
kita tidak hanya menghafal semua keyword (kata kunci) yang ada di dalamnya, namun
kita juga perlu untuk memahami fungsi dan aturan penggunaannya.
Sekarang ini banyak sekali bahasa pemrograman yang dapat digunakan untuk
mengembangkan suatu perangkat lunak, diantaranya bahasa C, C++, Pascal, Java dan
banyak lagi lainnya. Bahkan untuk pembuatan pemrograman visual pun, telah banyak
tersedia perangkat lunak seperti C++ Builder, Delphi, JBuilder, Visual C++ dan yang
lainnya.

2.5 Alasan Penggunaan Bahasa C


Seperti yang telah dikatakan sebelumnya bahwa sekarang banyak sekali
terdapat bahasa permograman tingkat tinggi (high level language) seperti Pascal,
BASIC, COBOL dan lainnya. Walaupun demikian, sebagian besar dari para
programmer profesional masih tetap memilih bahasa C sebagai bahasa yang lebih
unggul, berikut ini alasan-alasannya.
1. Bahasa C merupakan bahasa yang powerful dan fleksibel yang telah terbukti dapat
menyelesaikan program-program besar seperti pembuatan sistem operasi,
5

pengolah kata, pengolahan gambar (seperti pembuatan game) dan juga pembuatan
kompilator untuk bahasa pemrograman baru.
2. Bahasa C merupakan bahasa yang portabel sehingga dapat dijalankan di beberapa
sistem operasi yang berbeda. Sebagai contoh program yang kita tulis dalam sistem
operasi Windows dapat kita kompilasi di dalam sistem operasi Linux dengan
sedikit ataupun tanpa perubahan sama sekali.
3. Bahasa C merupakan bahasa yang sudah populer dan banyak digunakan oleh para
programmer berpengalaman sehingga kemungkinan besar library (pustaka) dan
aksesoris program lainnya yang diperlukan dalam pemrograman telah banyak
disediakan oleh pihak luar/lain dan dapat diperoleh dengan mudah.
4. Bahasa C merupakan bahasa yang bersifat modular, yaitu yang tersusun atas rutin-
rutin tertentu yang dinamakan dengan fungsi (function) dan fungsi-fungsi tersebut
dapat digunakan kembali untuk pembuatan program-program lainnya tanpa harus
menulis ulang implementasinya.
5. Bahasa C merupakan bahasa tingkat menengah (middle level language) sehingga
mudah untuk melakukan interfacing (pembuatan program antar muka) ke
perangkat keras (hardware).
6

BAB 3
OPERATOR DAN TIPE DATA

3.1 Operator Dalam Pemrograman


Sebelum masuk ke jenis-jenis operator di dalam bahasa C, terdapat
istilah operand dan operator . Operan adalah nilai asal yang dipakai dalam sebuah
proses operasi. Sedangkan Operator adalah instruksi yang diberikan untuk
mendapatkan hasil dari proses tersebut. Biasanya operator berupa karakter matematis
atau perintah singkat sederhana. Sebagai contoh pada operasi: 10 + 2. Angka 10 dan 2
disebut sebagai operan , sedangkan tanda tambah (karakter +) adalah operator.

3.1.1 Operator Aritmatika


Operator aritmatika adalah operator yang biasa kita temukan untuk operasi
matematika. Aritmatika sendiri merupakan cabang ilmu matematika yang membahas
perhitungan sederhana, seperti kali, bagi, tambah dan kurang. Selain keempat operasi
tersebut, bahasa C juga memiliki operasi modulodivision , atau operator % yang
dipakai untuk mencari sisa hasil bagi.

Tabel 3.1 Operator Aritmatika


Operator Penjelasan Contoh

+ Penambahan a=5+2

– Pengurangan a=5–2

* Perkalian a=5*2

/ Pembagian (real/pecahan) a = 5/2

% sisa hasil bagi (modulus) a = 5% 2

3.1.2 Operator Increment dan Decrement


Operator increment dan decrement adalah sebutan untuk operasi seperti a++,
dan a--. Ini sebenarnya penulisan singkat dari operasi a=a+1 serta a=a–1.
7

Increment digunakan untuk menambah variabel sebanyak 1 angka,


sedangkan decrement digunakan untuk mengurangi variabel sebanyak 1 angka.
Penulisannya menggunakan tanda tambah 2 kali untuk increment, dan tanda kurang 2
kali untuk decrement. Penempatan tanda tambah atau kurang ini boleh di awal
seperti ++a dan --a, atau di akhir variabel seperti a++ dan a--. Dengan demikian
terdapat 4 jenis increment dan decrement dalam bahasa C.

Tabel 3.2 Operator Increment dan Decrement


Operator Contoh Penjelasan

Pre-increment ++a Tambah a sebanyak 1 angka, lalu tampilkan hasilnya

Post-increment a++ Tampilkan nilai a, lalu tambah a sebanyak 1 angka

Pre-decrement --a Kurangi a sebanyak 1 angka, lalu tampilkan hasilnya

Post-decrement a-- Tampilkan nilai a, lalu kurangi a sebanyak 1 angka

3.1.3 Operator Perbandingan/Relasional


Operator perbandingan dipakai untuk membandingkan 2 buah nilai, apakah
nilai tersebut sama besar, lebih kecil, lebih besar, dll. Hasil dari operator perbandingan
ini adalah boolean True atau False, namun karena bahasa C tidak memiliki tipe data
boolean bawaan, maka hasilnya adalah integer 1 atau 0.

Tabel 3.3 Operator Relasional


Operator Penjelasan Contoh Hasil
== Sama dengan 5 == 5 1 (true)
!= Tidak sama dengan 5 != 5 0 (false)
> Lebih besar 5>6 0 (false)
< Lebih kecil 5<6 1 (true)
>= Lebih besar atau sama dengan5 >= 3 1 (true)
<= Lebih kecil atau sama dengan 5 <= 5 1 (true)
8

3.1.4 Operator Logika/Boolean


Operator logika dipakai untuk menghasilkan nilai boolean true atau false dari
dua kondisi atau lebih.

Tabel 3.4 Operator Logika/Boolean


OperatorNama Penjelasan Contoh

&& And Akan menghasilkan 1 jika kedua operand 1 1 && 0, hasilnya: 0

|| Or Akan menghasilkan 1 jika salah satu operand 11 || 0, hasilnya: 1

! Not Akan menghasilkan 1 jika operand 0 !0, hasilnya: 1

3.2 Tipe Data Dalam Pemrograman


Tipe data adalah klasifikasi yang digunakan untuk menentukan nilai dari suatu
variabel dalam tipe operasi matematika, hubungan relasional, maupun logika. Ketika
komputer menyimpan data untuk menjalankan program, data tersebut disimpan dalam
tipe data tertentu. Berupa format penyimpanan yang berisi tipe hingga rentang nilai.
Dalam pemrograman, semua tipe data tersebut diterapkan pada variabel tertentu tanpa
menyebabkan kesalahan.
Dengan kata lain, tipe data digunakan untuk membantu komputer menafsirkan
nilai dari suatu variabel dengan tepat dan menghindari error saat melakukan
programming. Kamu dapat melihat penggunaan tipe data dari suatu variabel. Seperti
misalnya tipe data string yang digunakan untuk mencatat informasi nama seseorang.
Atau tipe data integer yang digunakan untuk mencatat tanggal lahir.

3.2.1 Integer
Data integer adalah tipe data yang berisi kumpulan bilangan bulat, baik dalam
bentuk bilangan positif maupun negatif. Integer atau yang disingkat (int) merupakan
tipe data yang paling umum digunakan untuk menyimpan angka tanpa komponen
pecahan. Pada data integer (int), kamu akan menemukan data yang berisi bit
atau binary digit dengan panjang 16 bit atau sampai 2^16 atau 65.536. Jika bilangan
yang direferensikan lebih besar dari itu, maka kamu perlu menggunakan bit yang lebih
besar seperti 32 bit atau lebih.
9

3.2.2 floatingpoint
Berbeda dengan data integer yang berisi kumpulan data bilangan bulat, data
floatingpoint berisi bilangan desimal, baik dalam bentuk bilangan positif maupun
negatif. Istilah “floating” dalam tipe data ini merujuk kepada sifat bilangannya yang
dapat “dikembangkan” atau “dibulatkan” ke bilangan di dekatnya. Seperti bilangan 8,7
dapat dibulatkan menjadi 9. Ada beberapa jenis data floating yang dibedakan
berdasarkan banyaknya penggunaan total bit, dari 24 bit, 32 bit, 53 bit, hingga 128 bit.
Beberapa jenis tersebut adalah data floating presisi tunggal, floating presisi ganda,
dan floating presisi quadruple.

3.2.3 Character(Char)
Tipe data selanjutnya adalah Character (char), yaitu tipe data yang digunakan
untuk menyimpan satu huruf, angka, tanda baca, simbol, maupun spasi kosong. Tipe
data jenis (char) digunakan dalam berbagai bahasa pemrograman seperti C, C++, C#,
untuk menyimpan karakter dengan menampilkan kode numerik kecil sebagai
perwakilan masing-masing karakternya.

3.2.4 Boolean(bool)
Boolean merupakan tipe data yang mewakili nilai benar (true) tau salah (false)
dalam suatu variabel. Penggunaan jenis data ini dalam bilangan biner
direpresentasikan dengan 1 (true) dan 0 (false). Dengan begitu Boolean (bool) hanya
dapat menyimpan dua jenis nilai: benar atau salah. Tipe data Boolean termasuk ke
dalam tipe operasi logika dan menjadi dasar penentuan tindakan dalam pemrograman.
Penting bagi seorang programmer untuk mempelajari cara kerjanya.

3.2.5 Array
Array atau yang dikenal juga sebagai list, digunakan untuk menyimpan
sejumlah elemen dari urutan tertentu, dan biasanya berasal dari tipe yang sama.
Elemen atau nilai struktur data Array dapat diambil menggunakan indeks data integer
(-1, 0, 2, 3) dan seterusnya. Tiap total elemen Array mewakili panjang jenis data
tersebut.
10

3.2.6 String
String merupakan tipe data yang paling banyak digunakan untuk menyimpan
teks. String dapat menyertakan angka, simbol, maupun karakter lainnya dan tetap
dinilai sebagai teks. Untuk membedakan antara data String dengan kode pemrograman
yang digunakan, maka data diberi tanda kutip di awal dan akhiran.
11

BAB 4
PERCABANGAN

4.1 Pengantar Mengenai Percabangan


Percabangan merupakan cara komputer untuk mengambil keputusan.
Percabangan pasti ada pada setiap bahasa pemrograman, tak terkecuali dalam bahasa
C. Berbeda dengan pengambilan keputusan manusia, komputer tidak bisa mengambil
keputusan berdasarkan pilihan, seperti akan sarapan apa. Bukan karena komputer tidak
bisa makan (memang tidak). Namun karena komputer hanya tau dua hal saja, yaitu
benar dan salah, 0 dan 1, ya dan tidak. Oleh karena itu dalam penentuan keputusan,
komputer hanya akan menguji apakah kondisi sekarang benar (1) atau salah (0).
Bahkan jika ada dua bilangan 5 dan 2, komputer tidak bisa memberitahu bahwa 5 lebih
besar daripada 2 atau 2 lebih kecil. Sehingga perlu suatu perintah untuk komputer
mengetahuinya.

4.2 Berbagai Percabangan Dalam Bahasa C


4.2.1 If Statement
If juga disebut dengan controlflow atau conditional control structure karena
program di dalamnya hanya akan dieksekusi jika kondisi terpenuhi. Pada
percabangan if, code tidak akan menjalankan instruksi jika kondisi salah (tidak
terpenuhi). Dalam bahasa C, syntax dari percabangan ini adalah.

#include <stdio.h>
int main(){
int nilai;
printf("Inputkan nilai ujian kamu: ");
scanf("%d", &nilai);
if(nilai >= 75){
printf("Selamat, kamu lulus ujian\n");
printf("Pertahankan!!\n");
}
}
12

Program akan mencetak “Selamat, kamu lulus ujian” dan “Pertahankan!!”


hanya jika input masukan bernilai 75 atau lebih. Komputer akan menjalankan instruksi
antara { dan } jika kondisi terpenuhi. Tanpa tanda kurung kurawal, komputer akan
mengang instruksi gap baris pertama setelah if saja yang harus dijalankan jika kondisi
terpenuhi dan kedua tetap dijalankan meskipun kondisi salah (tidak terpenuhi). Misal

#include <stdio.h>

int main(){

int nilai;

printf("Inputkan nilai ujian kamu: ");

scanf("%d", &nilai);

if(nilai >= 75)

printf("Selamat, kamu lulus ujian\n");

printf("Pertahankan!!\n");

Jika komputer menerima input 70, komputer tetap akan mencetak “Pertahankan!!”,
berbeda dengan potongan program sebelumnya yang tidak akan mencetak apa-apa.

4.2.2 If else
Pada if else, komputer akan menjalankan blok pertama jika kondisi benar dan
jika kondisi salah, komputer akan menjalankan blok kedua.

#include <stdio.h>
Int main(){
int nilai;
printf("Inputkan nilai ujian kamu: ");
scanf("%d", &nilai);
if(nilai >= 75){
printf("Selamat, kamu lulus ujian\n");
printf("Pertahankan!!\n");
13

}
else{
printf("Kamu tidak lulus ujian\n");
printf("Belajar lebih giat!!\n");
}
}

Pada program tersebut, komputer akan mencetak “Selamat, kamu lulus ujian” dan
“Pertahankan!!” jika input bernilai 75 atau lebih dan komputer akan mencetak “Kamu
tidak lulus ujian” dan “Belajar lebih giat!!” jika input kurang (tidak lebih atau sama)
dari 75.

4.2.3 If else if
Percabangan ini merupakan percabangan yang memiliki lebih dari 2 blok.
Ketika kondisi pertama tidak terpenuhi, maka program akan menguji kondisi kedua,
jika masih tidak terpenuhi, program akan menguji kondisi-kondisi berikutnya sampai
bertemu else (jika ada). Misalkan dalam menginput nilai, bisa saja inputan tersebut
memiliki nilai lebih dari 100 atau kurang dari 0 yang mana seharusnya tidak ada.
Sehingga program lengkapnya menjadi,

#include <stdio.h>
Int main(){
int nilai;
printf("Inputkan nilai ujian kamu: ");
scanf("%d", &nilai);
if(nilai > 100 || nilai < 0)
printf("Nilai tidak valid\n");
elseif(nilai >= 75){
printf("Selamat, kamu lulus ujian\n");
printf("Pertahankan!!\n");
}
else{
printf("Kamu tidak lulus ujian\n");
printf("Belajar lebih giat!!\n");
}}
14

Misalkan input dari pengguna adalah 201, maka komputer akan mencetak
“Nilai tidak valid”. Meskipun 201 juga lebih besar dari 75 (kondisi kedua), namun
program akan mengabaikannya karena kondisi pertama sudah terpenuhi. Jenis
percabangan ini juga bisa digunakan untuk memberi grade nilai.

#include <stdio.h>
Int main(){
int nilai;
chargrade;
printf("Inputkan nilai ujian kamu: ");
scanf("%d", &nilai);
if(nilai > 100 || nilai < 0)
printf("Nilai tidak valid\n");
elseif(nilai >= 85)
grade = 'A';
elseif(nilai >= 75)
grade = 'B';
elseif(nilai >= 60)
grade = 'C';
elseif(nilai >= 50)
grade = 'D';
elsegrade = 'E';
printf("Grade kamu adalah %c\n", grade);
}

4.2.4 Nested If
Kita bisa saja membagi kondisi yang sudah benar. Misalkan dalam sebuah
perusahaan, target profit minimal adalah 1000 dalam satu bulan dengan
minimal client berjumlah 20 untuk mendapatkan bonus besar. Maka,

#include <stdio.h>
intmain(){
int profit = 1400, client = 15;
int bonus = 0;
if(profit >= 1000)
if(client>= 20)
bonus = 50;
15

else
bonus = 25;
else
printf("Bekerja lebih giat!!\n");
printf("Bonus bulan ini: %d\n",bonus);
}

Berdasarkan data, profit yang diperoleh adalah 1400 dengan 15 client, sehingga bonus
yang didapat adalah 25. Tidak terdapat kurung kurawal pada contoh
karena if/else merupakan satu paket (program menganggapnya sebagai satu instruksi).

4.2.5 SwitchCase
Percabangan ini merupakan bentuk lain dari percabangan if/else/if.
Percabangan ini memiliki struktur.

switch(variabel){
case<nilai_1>:
//instruksi
break;
case<nilai_2>:
//instruksi
break;
default:
//instruksi
}

Tentu saja blok case bisa tidak terbatas tergantung kebutuhan. Percabangan ini hanya
bisa digunakan jika variabel bernilai tertentu (tepat 1). Contoh.

#include <stdio.h>
intmain(){
intnum = 5;
switch(num){
case 1:
printf("Satu\n");
break;
16

case 2:
printf("Dua\n");
break;
case 3:
printf("Tiga\n");
break;
case 4:
printf("Empat\n");
break;
case 5:
printf("Lima\n");
break;
default:
cout<<"Bilangan bukan antara 1-5\n";
}
}

Komputer akan mencetak “Lima”. Kita juga bisa mengganti num dengan sebuah
ekspresi, misalkan num%5 + 1 dll. Jika instruksi ada yang sama, bisa juga dengan
menuliskan,
#include <stdio.h>
int main(){
int num = 5;
switch(num){
case1:
case2:
case3:
printf("Satu, dua atau tiga\n");
break;
case4:
case5:
case6:
printf("Empat, lima atau enam\n");
break;
default:
cout<<"Bilangan bukan antara 1-6\n";}}

Pada contoh tersebut, keluaran yang akan tercetak adalah “Empat, lima atau
enam\n”.
17

BAB 5
PERULANGAN/LOOPING

5.1 Pengenalan Looping


Dalam pembuatan program, terkadang kita harus melakukan pengulangan
suatu aksi, misalnya untuk melakukan perhitungan berulang dengan menggunakan
formula yang sama. Sebagai contoh, misalnya kita ingin membuat program yang dapat
menampilkan teks ‘Saya sedang belajar bahasa C’ sebanyak 10 kali, maka kita tidak
perlu untuk menuliskan 10 buah statemen melainkan kita hanya tinggal menempatkan
satu buah statemen ke dalam suatu struktur pengulangan. Dengan demikian program
kita akan lebih efesien.
Sebagai gambaran bagi Anda untuk dapat lebih menyerap konsep
pengulangan, coba Anda perhatikan terlebih dahulu contoh program di bawah ini.

#include <stdio.h>
int main(void) {
/* Mencetak teks ke layar sebanyak 10 kali */
printf(“Saya sedang belajar bahasa C”);
printf(“Saya sedang belajar bahasa C”);
printf(“Saya sedang belajar bahasa C”);
printf(“Saya sedang belajar bahasa C”);
printf(“Saya sedang belajar bahasa C”);
printf(“Saya sedang belajar bahasa C”);
printf(“Saya sedang belajar bahasa C”);
printf(“Saya sedang belajar bahasa C”);
printf(“Saya sedang belajar bahasa C”);
printf(“Saya sedang belajar bahasa C”);
return 0;
}

Program di atas akan menghasilkan keluaran “ Saya sedang belajar bahasa c”


sebanyak sepuluh kali. Apabila ditinjau dari hasilnya, program di atas memang
memberikan hasil seperti yang diinginkan, namun apakah penulisan program tersebut
18

dapat dikatakan efisien? Jawabnya tentu tidak. Penulisan program seperti yang
dilakukan di atas akan menyebabkan besarnya ukuran file kode program yang
dihasilkan dan merupakan suatu pemborosan waktu dan tenaga. Mungkin untuk
menuliskan 10 buah statemen di atas, kita masih dapat melakukannya dengan cepat
dan mudah, namun bagaimana apabila ternyata kita harus menuliskan statemen
tersebut sebanyak 100 kali atau bahkan 500 kali. Hal tersebut tentu akan merupakan
sebuah hal yang membosankan. Kasarnya, program di atas dapat kita katakan sebagai
program yang salah.
Dalam bahasa C, terdapat tiga buah struktur pengulangan yang akan digunakan
sebagai kontrol dalam melakukan pengulangan proses, yaitu struktur for, while dan
do-while. Setiap struktur yang ada masing-masing memiliki aturan tersendiri dan
digunakan dalam konteks yang berbeda. Kita harus bisa menentukan kapan sebaiknya
kita harus menggunakan struktur for, struktur while ataupun do-while. Untuk itu, pada
bagian ini kita akan membahas secara detail apa perbedaan dan penggunaan dari
masing-masing struktur tersebut. Hal ini juga bertujuan agar Anda dapat
mengimplementasikannya dengan benar ke dalam kasus-kasus program yang Anda
hadapi.

5.2 Struktur Perulangan


5.2.1 Struktur for
Struktur for ini digunakan untuk menuliskan jenis pengulangan yang
banyaknya sudah pasti atau telah diketahui sebelumnya. Oleh karena itu, di sini kita
harus melakukan inisialisai nilai untuk kondisi awal pengulangan dan juga harus
menuliskan kondisi untuk menghentikan proses pengulangan. Adapun bentuk umum
dari pendefinisian struktur for (untuk sebuah statemen) dalam bahasa C adalah sebagai
berikut.

for (start; condition; increment)


Statemen_yang_akan_diulang;

Sedangkan untuk dua statemen atau lebih.


19

for (start; condition; increment) {


Statemen_yang_akan_diulang1;
Statemen_yang_akan_diulang2; … }

Start digunakan sebagai proses inisialisasi variabel yang akan dijadikan sebagai
pencacah (counter) dari proses pengulangan, dengan kata lain ekspresi ini akan
dijadikan sebagai kondisi awal. Condition digunakan sebagai kondisi akhir, yaitu
kondisi dimana proses pengulangan harus dihentikan. Perlu untuk diketahui bahwa
pengulangan masih akan dilakukan selagi kondisi akhir bernilai benar. Increment
digunakan untuk menaikkan (increment) atau menurunkan (decrement) nilai variabel
yang digunakan sebagai pencacah. Apabila pengulangan yang kita lakukan bersifat
menaik, maka kita akan menggunakan statemen increment, sedangkan apabila
pengulangan yang akan kita lakukan bersifat menurun maka kita harus menggunakan
statemen decrement.
Berikut ini contoh untuk mengilustrasikan struktur pengulangan for yang telah
diterangkan di atas.

for (int j=0; j<10; j++) {


/* Statemen yang akan diulang */
...
}

Pada sintak di atas, mula-mula kita menginisialisasi variabel j dengan nilai 0,


kemudian karena ekspresi (0 < 10) bernilai benar maka program akan melakukan
statemen untuk pertama kalinya. Setelah itu variabel j akan dinaikkan nilainya sebesar
1 melalui statemen increment j++ sehingga nilai j sekarang menjadi 1. Sampai di sini
program akan mengecek ekspresi (j < 10). Oleh karena ekspresi (2 < 10) bernilai benar,
maka program akan melakukan statemen yang kedua kalinya. Begitu seterusnya
sampai nilai j bernilai 9. Namun pada saat variabel j telah bernilai 10 maka program
akan keluar dari proses pengulangan. Hal ini disebabkan oleh karena ekspresi (10 <
10)bernilai salah.
20

Untuk membuktikan hal tersebut, perhatikan contoh program di bawah ini


dimana kita akan menampilkan teks ‘Saya sedang belajar bahasa C’ sebanyak 10 kali.

#include <stdio.h>
int main(void) {
for (int j=0; j<10; j++) {
printf(“Saya sedang belajar bahasa C\n”);
}
return 0;
}

Hasil yang akan diberikan oleh program di atas adalah “Saya sedang belajar bahasa
C” sebanyak sepuluh kali. Pengulangan yang dilakukan pada program di atas bersifat
menaik sehingga kita menggunakan increment. Kita juga dapat melakukan
pengulangan tersebut secara menurun, yaitu dengan sintak di bawah ini.

#include <stdio.h>
int main(void) {
for (int j=10; j>0; j--) {
printf(“Saya sedang belajar bahasa C\n”);
}
return 0;
}

Pada sintak di atas, mula-mula variabel j bernilai 10 dan setiap pengulangan dilakukan
menyebabkan variabel tersebut dikurangi satu. Hal ini disebabkan karena statemen
decrement j-- di atas. Dalam program tersebut, pengulangan baru akan dihentikan
ketika variabel j bernilai 0. Apabila dijalankan program di atas akan memberikan hasil
yang sama dengan program sebelumnya.
21

5.2.2 Struktur While


Pada struktur pengulangan jenis ini kondisi akan diperiksa di bagian awal. Hal
ini tentu menyebabkan kemungkinan bahwa apabila ternyata kondisi yang kita
definisikan tidak terpenuhi (bernilai salah), maka proses pengulangan pun tidak akan
pernah dilakukan. Adapun bentuk umum dari struktur while adalah seperti yang
tampak di bawah ini.

while (ekspresi) {
Statemen_yang_akan_diulang1;
Statemen_yang_akan_diulang2;

}

Sama seperti pada struktur for, struktur pengulangan jenis ini juga memerlukan
suatu inisialisasi nilai pada variabel yang akan digunakan sebagai pencacah, yaitu
dengan menuliskannya di atas blok pengulangan. Selain itu kita juga harus melakukan
penambahan ataupun pengurangan terhadap nilai dari variabel pencacah di dalam blok
pengulangan tersebut. Hal ini bertujuan untuk menghentikan pengulangan sesuai
dengan kondisi yang didefinisikan. Sebagai contoh apabila kita ingin melakukan
pengulangan proses sebanyak 5 kali, maka kita akan menuliskannya sebagai berikut.

int j = 0; /* Melakukan inisialisasi terhadap variabel j dengan


nilai 0 */
while (j<5) {
/* Statemen yang akan diulang */
...
j++; /* Melakukan increment terhadap variabel j */
}

Contoh program lengkapnya sebagai berikut.

#include <stdio.h>
int main(void) {
int j = 1; /* Mendeklarasikan variabel j sebagai
pencacah pengulangan */
jumlah = 0; /* Mendeklarasikan variabel jumlah untuk
22

menampung jumlah */
while (j <= 5) {
jumlah += j;
j++;
}
printf(“Jumlah = %d”, jumlah);
return 0;
}

5.2.3 Struktur do-while


Berbeda dengan struktur while dimana kondisinya terletak di awal blok
pengulangan, pada struktur do-while kondisi diletakkan di akhir blok pengulangan.
Hal ini menyebabkan bahwa statemen yang terdapat di dalam blok pengulangan ini
pasti akan dieksekusi minimal satu kali, walaupun kondisinya bernilai salah sekalipun.
Maka dari itu struktur do-while ini banyak digunakan untuk kasus-kasus pengulangan
yang tidak memedulikan benar atau salahnya kondisi pada saat memulai proses
pengulangan. Adapun bentuk umum dari struktur pengulangan do-while adalah seperti
yang tertulis di bawah ini.

do {
Statemen_yang_akan_diulang;

} while (ekspresi); /* Ingat tanda semicolon (;) */

Berikut contoh program lengkapnya.

#include <stdio.h>

int main() {
int i = 1;
do {
printf("%i", i*4);
i++;
}
while( i <= 5);
return 0;
}
23

5.3 Break dan Continue


Break adalah perintah khusus yang digunakan untuk memaksa sebuah
perulangan berhenti sebelum waktunya. Perintah break ini bisa dipakai dalam semua
jenis perulangan, baik itu for, while, maupun do-while. Perintah continue mirip dengan
perintah break, hanya saja jika dalam printah break perulangan langsung berhenti.
Continue perulangan hanya melewati 1 kali proses iterasi saja. Pada perulangan while
dan do-while, statemen continue menyebabkan eksekusi menuju ke proses pengujian
kondisi perulangan. Sedangkan pada perulangan for, statemen continue menyebabkan
eksekusi program menjalankan operasi perubahan nilai pengendali perulangan pada
for lalu dilanjutkan dengan mengujinya sesuai syarat kondisi perulangan.
24

BAB 6
FUNCTION/FUNGSI

6.1 Pengertian Fungsi


Function adalah suatu bagian dari program yang dirancang untuk
melaksanakan tugas tertentu dan letaknya dipisahkan dari program yang
menggunakan. Elemen utama dari program bahasa C berupa fungsi-fungsi, dalam hal
ini program dari bahasa C dibentuk dari kumpulan fungsi pustaka(standar) dan fungsi
yang dibuat sendiri oleh pemrogram. Dalam pemrograman, fungsi sering digunakan
untuk membungkus program menjadi bagian-bagian kecil. Logika program yang ada
di dalam fungsi dapat kita gunakan kembali dengan memanggilnya. Sehingga tidak
perlu menulis ulang.

6.2 Jenis Fungsi


6.2.1 Fungsi Tanpa Nilai Balik (Void Function)
Pada umumnya fungsi tanpa nilai balik (return value) ini digunakan untuk
melakukan proses-proses yang tidak menghasilkan nilai, seperti melakukan
pengulangan, proses pengesetan nilai ataupun yang lainnya. Dalam bahasa C, fungsi
semacam ini tipe kembaliannya akan diisi dengan nilai void .

6.2.2 Fungsi dengan Nilai Balik


Berbeda dengan fungsi di atas yang hanya mengandung proses tanpa adanya
nilai kembalian, di sini kita akan membahas mengenai fungsi yang digunakan untuk
melakukan proses-proses yang berhubungan dengan nilai. Adapun cara
pendefinisiannya adalah dengan menuliskan tipe data dari nilai yang akan
dikembalikan di depan nama fungsi.
25

6.2.3 Fungsi dengan Parameter


Parameter adalah suatu variabel yang berfungsi untuk menampung nilai yang
akan dikirimkan ke dalam fungsi. Dengan adanya parameter, sebuah fungsi dapat
bersifat dinamis. Parameter itu sendiri terbagi menjadi dua macam, yaitu parameter
formal dan parameter aktual. Parameter formal adalah parameter yang terdapat pada
pendefinisian fungsi, sedangkan parameter aktual adalah parameter yang terdapat pada
saat pemanggilan fungsi.
Dalam dunia pemrograman dikenal tiga jenis parameter, yaitu parameter masukan,
keluaran dan masukan/keluaran, berikut penjelasannya:
1. Parameter Masukan
Parameter masukan adalah parameter yang digunakan untuk menampung nilai
data yang akan dijadikan sebagai masukan (input) ke dalam fungsi. Artinya, sebuah
fungsi dapat menghasilkan nilai yang berbeda tergantung dari nilai parameter yang
dimasukkan pada saat pemanggilan fungsi tersebut.
2. Parameter Keluaran
Kebalikan dari parameter masukan, parameter keluaran adalah parameter yang
digunakan untuk menampung nilai kembalian / nilai keluaran (output) dari suatu
proses. Umumnya parameter jenis ini digunakan di dalam fungsi yang tidak
mempunyai nilai balik. Untuk lebih memahaminya.
3. Parameter Masukan/Keluaran
Selain parameter masukan dan keluaran, terdapat parameter jenis lain, yaitu
parameter masukan/keluaran dimana parameter tersebut mempunyai dua buah
kegunaan.

6.3 Tujuan Function


Adanya Fungsi dapat bertujuan untuk dua hal yang pertama, memudahkan
dalam mengembangkan program. Karena suatu Program dapat dibagi menjadi
beberapa sub-sub program yang lebih kecil, yang mana dalam hal ini pengembangan
bagian program lebih difokuskan pada sub-sub yang memerlukan pengembangan saja.
Tidak perlu mencari dalam seluruh bagian program. Yang kedua, menghemat ukuran
program, karena beberapa perintah yang sama dan dijalankan beberapa kali dalam
26

program dapat dijadikan satu kali saja dalam suatu function, yang mana kemudian
function tersebut dapat dipanggil berulang kali.
6.4 Ruang Lingkup Variabel
Terdapat tiga macam bentuk variabel yang mempunyai ruang lingkup
berbeda, yaitu variabel lokal, variabel global, variabel register dan variabel static.

6.4.1 Variabel Lokal


Variabel lokal merupakan variabel yang namanya dan nilainya hanya
dikenal di suatu blok statement tertentu saja atau di dalam suatu fungsi. Variabel
lokal akan dihapus dari memori jika proses sudah meninggalkan blok statemen
letak variabel lokalnya. Sifat-sifat variabel lokal :
1. Secara otomatis akan diciptakan ketika fungsi dipanggil dan akan lenyap
ketika proses eksekusi terhadap fungsi berakhir.
2. Hanya dikenal oleh fungsi tempat variabel dideklarasikan.
3. Tidak ada inisialisasi secara otomatis (saat variabel diciptakan nilainya random).
4. Dideklarasikan dengan menambahkan kata“auto” (opsional).

6.4.2 Variabel Global


Variabel global (eksternal) adalah variabel yang dideklarasikan di luar fungsi.
Sifat-sifat variabel global.
1. Dikenal (dapat diakses) oleh semua fungsi.
2. Jika tidak diberi nilai awal secara otomatis berisi nilai nol.
3. Dideklarasikan dengan menambahkan kata “extern” (opsional).

6.4.3 Variabel Register


Variabel Register adalah variabel yang nilainya disimpan dalam register dan
bukan dalam memori RAM. Sifat-sifat variabel register.
1. Hanya dapat diterapkan pada variabel lokal yang bertipe int dan char.
2. Digunakan untuk mengendalikan proses perulangan (looping).
3. Proses perulangan akan lebih cepat karena variabel register memiliki kecepatan
yang lebih tinggi dibandingkan variabel biasa.
27

4. Dideklarasikan dengan menambahkan kata “register”.

6.4.4 Variabel Statik


Variabel statis adalah variabel yang nilainya tetap dan bisa berupa variable
lokal (internal) dan variabel global (eksternal). Sifat-sifat variabel statis.
1. Jika bersifat internal (lokal), maka variabel hanya dikenal oleh fungsi tempat
variabel dideklarasikan.
2. Jika bersifat eksternal (global), maka variabel dapat dipergunakan oleh semua
fungsi yang terletak pada program yang sama.
3. Nilai variabel statis tidak akan hilang walau eksekusi terhadap fungsi telah
berakhir.
4. Inisialisasi hanya perlu dilakukan sekali saja, yaitu pada saat fungsi dipanggil
pertama kali.
5. Jika tidak diberi nilai awal secara otomatis berisi nilai nol.
6. Dideklarasikan dengan menambahkan kata “static”.
28

BAB 7
ARRAY

7.1 Pengantar Array


Menurut definisinya, array (larik) adalah suatu variabel yang
merepresentasikan daftar (list) atau kumpulan data yang memiliki tipe data sama.
Setiap data yang terdapat dalam array tersebut menempati alamat memori yang
berbeda serta disebut dengan elemen array. Selanjutnya untuk mengakses nilai dari
suatu elemen array, kita akan menggunakan indeks dari array tersebut. Perlu sekali
untuk diperhatikan bahwa dalam bahasa C, indeks array selalu dimulai dari angka 0,
bukan 1. Hal ini berbeda dengan bahasa pemrograman lainnya (misalnya bahasa
Pascal) dimana indeks awal array dapat ditentukan sendiri sesuai dengan keinginan
kita.
Array atau larik sendiri di definisikan sebagai pemesanan alokasi memorya
berurutan. Definisi ini kurang tepat, karena terjadi kerancuan antara struktur data dan
representasinya. Memang benar array hampir selalu di implementasikan menggunakan
memory berurutan tapi tidak selalu demikian. Semua elemen array bertipe sama. Array
cocok untuk organisasi kumpulan data homogen yang ukuran atau jumlah elemen
maksimumnya telah diketahui dari awal. Homogen adalah bahwa setiap elemen dari
sebuah array tertentu haruslah mempunyai tipe data yang sama. Dari perngertian
struktur dan pengertian array di atas, maka dapat ditarik kesimpulan bahwa struktur
array adalah kumpulan elemen-elemen data yang digabungkan menjadi suatu kesatuan
yang memiliki tipe homogen (sama). Karakteristik Array adalah mempunyai batasan
dari pemesanan alokasi memori (bersifat statis), mempunyai tipe data sama (bersifat
homogen), dapat diakses secara acak.
Pada dasarnya penggunaan array sangat luas tidak hanya digunakan pada
bahasa pemrogaman. Contoh penggunaan array sebagai berikut.
1. Array digunakan untuk suatu data base seperti tabel.
2. Array digunakan untuk operasi matematika seperti vektor.
3. Array digunakan dalam bentuk struktur data lain, contohnya list.
29

7.2 Bentuk-bentuk Array


7.2.1 Array Satu Dimensi
Array satu dimensi yaitu kumpulan elemen-elemen identik yang hanya terdiri
dari satu baris atau hanya satu kolom saja alamat penyimpanan data (indeks). Elemen-
elemen tersebut memiliki tipe data yang sama, tetapi isi dari elemen tersebut boleh
berbeda. Bentuk umum dari array satu dimensi antara lain.

Tipe_data namaArray[n] = {elemen0, elemen1, elemen2,…..,n};

Dengan n adalah jumlah elemen.

7.2.2 Array Dua Dimensi


Array dua dimensi sering digambarkan sebagai sebuah matriks, merupakan
perluasan dari array satu dimensi. Jika array satu dimensi hanya terdiri dari sebuah
baris dan beberapa kolom elemen, maka array dua dimensi terdiri dari beberapa baris
dan beberapa kolom elemen bertipe sama sehingga dapat digambarkan sebagai berikut.

Tipe_data namaArray [m][n] = {{a,b,…z},{1,2,…,n-1}};

Pendeklarasian array dua dimensi hampir sama dengan pendeklarasian array satu
dimensi, kecuali bahwa array dua dimensi terdapat dua jumlah elemen yang terdapat
dikurung kurung siku dan keduanya boleh tidak sama. Elemen array dua dimensi
diakses dengan menuliskan kedua indeks elemennya dalam kurung.

7.2.3 Array Multidimensi


Array ini seperti array dimensi dua tetapi dapat memiliki ukuran yang lebih
besar. Sebenarnya array dimensi banyak ini tidak terlalu sering digunakan, tetapi
sewaktu-waktu kalau dimensi yang dibutuhkan banyak, maka array ini sangat
memegang peranan yang penting. Bentuk umum pendeklarasian array multidimensi.

Tipe_data namaArray[ukuran1][ukuran2]…[ukuranN];
30

7.3 Keunggulan dan Kelemahan Array


Keunggulan array adalah sebagai berikut :
1. Array sangat cocok untuk pengaksesan acak. Sembarang elemen di array dapat
diacu secara langsung tanpa melalui elemen-elemen lain.
2. Jika berada di suatu lokasi elemen, maka sangat mudah menelusuri ke elemen-
elemen tetangga, baik elemen pendahulu atau elemen peberus.
3. Jika elemen-elemen array adalah nilai-nilai independen dan seluruhnya harus
terjaga, maka penggunaan penyimpanannya sangat efisien.
Kelemahan array adalah bahwa array mempunyai fleksibilitas rendah,
sehingga tidak cocok untuk berbagai aplikasi karena array mempunyai batasan sebagai
berikut.
1. Array harus bertipe homogen, kita tidak dapat mempunyai array dimana satu
elemen adalah karakter, elemen yang lain adalah bilangan atau tipe lain.
2. Kebanyakan bahasa pemrogaman mengimplementasikan array statik yang sulit
diubah ukurannya di waktu eksekusi. Bila penambahan dan pengurangan terjadi
terus-menerus, maka representasi statis.
1. Tidak efisien dalam penggunaan memory
2. Menyiakan banyak waktu komputasi
3. Pada suatu aplikasi, representasi statis tidak dimungkinkan
3. Bila penambahan dan pengurangan terjadi terus-menerus, maka representasi statis
(array).
1. Tidak efisien dalam penggunaan memory
2. Menyiakan banyak waktu komputasi
3. Pada suatu aplikasi, representasi statis tidak dimungkinkan
31

BAB 8
PENUTUP

8.1 Kesimpulan
Bahasa C adalah bahasa yang standar artinya suatu program yang ditulis
dengan versi bahasa C tertentu akan dapat di kompilasi dengan versi bahasa C yang
lain dengan sedikit modifikasi. Kode bahasa C sifatnya adalah portable dan didukung
dengan pustaka yang banyak. Selain itu bahasa pemrograman C memilki karakteristik
lain seperti hemat ekspresi, alur kontrol, menggunakan struktur data modern, dan kaya
dengan operator. C bisa disebut bahasa pemrograman tingkat menengah (middle level
programming language). Namun dalam perspektif mudahnya dipahami manusia, C
bisa digolongkan dalam bahasa tingkat tinggi, namun C juga menyediakan
kemampuan yang ada pada bahasa tingkat rendah, misalnya operasi bit, operasi byte,
pengaksesan memori, dan sebagainya.

8.2 Saran
Saran yang bisa penulis berikan, yaitu perlu adanya pengembangan bahasa C
lebih lanjut dari segi sintaks, supaya sintaks yang digunakan semakin sederhana dan
mudah dimengerti terutama bagi pemrogram pemula, serta pengembangan fungsional
bahasa C, supaya bisa menjalankan lebih banyak produk lagi.
32

DAFTAR PUSTAKA

https://www.duniailkom.com/tutorial-belajar-c-jenis-jenis-operator-dalam-bahasa-c/
https://www.dewaweb.com/blog/tipe-data-pemrograman/
https://www.academia.edu/45684754/Makalah_Dasar_Dasar_Pemrograman
https://www.academia.edu/31542584/Cara_Mudah_I_Made_Joni_Budi_Raharjo

Anda mungkin juga menyukai