Anda di halaman 1dari 57

LAPORAN PRAKTIKUM

ALGORITMA PEMPROGRAMAN-2

CINDYA PUTRI HIDYAT SIREGAR


NIM: 0701213101

PROGRAM STUDI ILMU KOMPUTER


FAKULTAS SAINS DAN TEKNOLOGI
UNIVERSITAS ISLAM NEGERI SUMATERA UTARA MEDAN
TA: 2022

1
KATA PENGANTAR

Assalamualaikum warahmatullahi wabarakatuh,


Puji syukur saya panjatkan ke hadirat Allah subhanahu wata’ala karena berkat
rahmatnya dan karunianya saya dapat meyelesaikan laporan praktikum ini yang
membahas tentang Algoritma dan Pemprograman Dasar, tanpa pertolongan-nya
mungkin saya tidak akan sanngup menyelesaikan tugas laporan praktikum ini.

Laporan ini disusun untuk memenuhi tugas mata kuliah Algoritma dan
Pemprograman Dasar. Tak lupa pula saya ucapkan terima kasih kepada dosen
pengampuh saya yaitu Bapak YUSUF RAMADHAN NASUTION M.KOM yang
telah membimbing saya dalam mata pelajaran tersebut.

Laporan praktikum ini masih jauh dari kata sempurna, oleh karena itu saya
mengharap kritik dan saran yang bersifat membangun demi kesempurnaan ini.Semoga
laporan praktikum ini dapat berguna dan bermanfaat bagi pembaca.

Medan, 02 Juli 2022

Cindya Putri Hidayat Siregar

2
DAFTAR ISI
KATA PENGANTAR...............................................................................2
DAFTAR ISI.............................................................................................3
DAFTAR GAMBAR.................................................................................5
DAFTAR TABEL.....................................................................................7
MODUL 1 Pemprograman Bahasa C......................................................8
A. Sejarah Bahasa C....................................................................8
B. Kelebihan Bahasa C................................................................8
C. Kekurangan Bahasa C............................................................8
LEMBAR PENGESAHAN.......................................................................10
MODUL 2 Konstanta................................................................................11
A. Definisi Konstanta...................................................................11
B. Struktur Dasar Bahasa C.......................................................11
LEMBAR PENGESAHAN.......................................................................14
MODUL 3 Operator..................................................................................15
A. Definisi Operator Penugasan.................................................15
B. Operator Aritmatika...............................................................15
C. Operator Hubungan (Perbandingan)....................................15
LEMBAR PENGESAHAN.......................................................................17
MODUL 4 Input Dan Output...................................................................18
A. Scanf()......................................................................................18
B. gets().........................................................................................19
C. getchar()...................................................................................20
D. Getch() dan getche()................................................................20
LEMBAR PENGESAHAN.......................................................................22
MODUL 5 Penyeleksian Kondisi..............................................................23
A. Kegunaan Penyeleksian Kondisi............................................23
LEMBAR PENGESAHAN.......................................................................30
MODUL 6 Perulangan..............................................................................31
A. Penjelasan................................................................................31

3
B. Struktur Perulangan “WHILE”............................................31
C. Struktur Perulangan “FOR”.................................................33
D. Goto Dan Label.......................................................................34
LEMBAR PENGESAHAN.......................................................................37
MODUL 7 Format Dasar Penulisan Array Dalam Bahasa C...................38
A. Format Pendefinisian Array Dalam Bahsa C.......................38
LEMBAR PENGESAHAN.......................................................................41
MODUL 8 Array 2 Dimensi Bahasa C......................................................42
A. Pengertian................................................................................42
LEMBAR PENGESAHAN.......................................................................45
MODUL 9 Membaca String Dengan Scanf Dan Gets...............................46
A. Pembahasan.............................................................................46
B. Membaca String dengan gets.................................................47
LEMBAR PENGESAHAN.......................................................................48
MODUL 10 Cara Mengubah Isi String Dengan Fungsi Strcpy................49
A. Penjelasan................................................................................49
B. Cara penggunaan function strcpy.........................................49
LEMBAR PENGESAHAN.......................................................................52
MODUL 11 Perulangan Bersarang (Nested Loop)...................................53
A. Definisi Perulangan Bersarang..................................................53
B.Contoh Kode Program Perulangan Bersarang (Nested Loop)53
LEMBAR PENGESAHAN.......................................................................57

DAFTAR GAMBAR

4
Gambar 1.1.................................................................................................9
Gambar 1.2.................................................................................................9
Gambar 2.1.................................................................................................13
Gambar 2.2.................................................................................................13
Gambar 3.1.................................................................................................16
Gambar 3.2.................................................................................................16
Gambar 4.1.................................................................................................19
Gambar 4.2.................................................................................................19
Gambar 4.3.................................................................................................20
Gambar 4.4.................................................................................................20
Gambar 4.5.................................................................................................21
Gambar 4.6.................................................................................................21
Gambar 5.1.................................................................................................23
Gambar 5.2.................................................................................................23
Gambar 5.3.................................................................................................25
Gambar 5.4.................................................................................................25
Gambar 5.5.................................................................................................26
Gambar 5.6.................................................................................................27
Gambar 5.7.................................................................................................27
Gambar 5.8.................................................................................................28
Gambar 5.9.................................................................................................29
Gambar 6.1.................................................................................................31
Gambar 6.2.................................................................................................32
Gambar 6.3.................................................................................................32
Gambar 6.4.................................................................................................33
Gambar 6.5.................................................................................................34
Gambar 6.6.................................................................................................34
Gambar 6.7.................................................................................................35
Gambar 6.8.................................................................................................36
Gambar 7.1.................................................................................................38

5
Gambar 7.2.................................................................................................39
Gambar 7.3.................................................................................................39
Gambar 7.4.................................................................................................39
Gambar 7.5.................................................................................................40
Gambar 7.6.................................................................................................40
Gambar 8.1.................................................................................................43
Gambar 8.2.................................................................................................43
Gambar 8.3.................................................................................................44
Gambar 8.4.................................................................................................44
Gambar 9.1.................................................................................................46
Gambar 9.2.................................................................................................46
Gambar 9.3.................................................................................................47
Gambar 9.4.................................................................................................47
Gambar 10.1...............................................................................................49
Gambar 10.2...............................................................................................49
Gambar 11.1...............................................................................................54
Gambar 11.2...............................................................................................54
Gambar 11.3...............................................................................................55
Gambar 11.4...............................................................................................56

DAFTAR TABEL

6
Tabel 3.1155
Tabel 4.2 19

7
MODUL 1
PEMPROGRAMAN BAHASA C

A. Sejarah Bahasa C
Bahasa C merupakan perkembangan dari bahasa BCPL yang dikembangkan
oleh Martin Richards pada tahun 1967. Selanjutnya bahasa ini memberikan ide kepada
Ken Thompson yang kemudian mengembangkan bahasa yang disebut bahasa B pada
tahun 1970. Perkembangan selanjutnya dari bahasa B adalah bahasa C oleh Dennis
Ricthie sekitar tahun 1970-an di Bell Telephone Laboratories Inc. (sekarang adalah
AT&T Bell Laboratories). Bahasa C pertama kali digunakan di computer Digital
Equipment Corporation PDP-11 yang menggunakan system operasi UNIX. Hingga saat
ini penggunaan bahasa C telah merata di seluruh dunia. Hampir semua perguruan tinggi
di dunia menjadikan bahasa C sebagai salah satu mata kuliah wajib.

B. Kelebihan Bahasa C
• Bahasa C tersedia hampir di semua jenis computer.
• Kode bahasa C sifatnya adalah portable dan fleksibel untuk semua jenis computer.
• Bahasa C hanya menyediakan sedikit kata-kata kunci, hanya terdapat 32 kata kunci.
• Proses executable program bahasa C lebih cepat
• Dukungan pustaka yang banyak.
• C adalah bahasa yang terstruktur.
• Bahasa C termasuk bahasa tingkat menengah.

C. Kekurangan Bahasa C
• Banyaknya Operator serta fleksibilitas penulisan program kadang-kadang
membingungkan pemakai.
• Bagi pemula pada umumnya akan kesulitan menggunakan pointer.

8
Percobaan 1
 Program

Gambar 1.1
 Output

Gambar 1.2

9
LEMBAR PENGESAHAN

Judul : Pemprograman Bahasa C


Nama : Cindya Putri Hidayat Siregar
NIM : 0701213101
Program Studi : Ilmu Komputer

Medan, 02 Juli 2022

Menyetujui,

Koordinator Asisten Asisten

Muhammad Fauzi Khalid Hidayatullah

Mengetahui,

Dosen Penanggung Jawab

10
Yusuf Ramadhan Nasution, M.Kom

MODUL 2
KONSTANTA

A. Definisi Konstanta
Konstanta merupakan suatu nilai yang tidak dapat diubah selama proses program
berlangsung. Konstanta nilainya selalu tetap. Konstanta harus didefinisikan terlebih
dahulu di awal program. Konstanta dapat bernilai integer, pecahan, karakter dan string.
Contoh konstanta : 50; 13; 3.14; 4.50005; ‘A’; ‘Bahasa C’. Selain itu, bahasa C juga
menyediakan beberapa karakter khusus yang disebut karakter escape, antara lain :
 \a : untuk bunyi bell (alert)
 \b : mundur satu spasi (backspace)
 \f : ganti halaman (form feed)
 \n : ganti baris baru (new line)
 \r : ke kolom pertama, baris yang sama (carriage return)
 \v : tabulasi vertical
 \0: nilai kosong (null)
 \’ : karakter petik tunggal
 \” : karakter petik ganda
 \\ : karakter garis miring

B. Struktur Dasar Bahasa C

Tipe Data
Tipe data merupakan bagian program yang paling penting karena tipe data
mempengaruhi setiap instruksi yang akan dilaksanakan oleh computer. Misalnya saja 5
dibagi 2 bisa saja menghasilkan hasil yang berbeda tergantung tipe datanya. Jika 5 dan 2
bertipe integer maka akan menghasilkan nilai 2, namun jika keduanya bertipe float
maka akan menghasilkan nilai 2.5000000. Pemilihan tipe data yang tepat akan membuat
proses operasi data menjadi lebih efisien dan efektif.

11
Dalam Bahasa C terdapat 5 tipe data dasar, yaitu:
1. Char : (ukuran:1 byte), (Range/jangkauan:-128 s/d 127), (format:%c), dan
(keterangan:karakter/string).
2. Int : (ukuran:2 byte), (Range/jangkaun: -32768 s/d 32767), (format:%i,%d),
dan (keterangan:Integer/bilangan bulat).
3. Float : (ukuran:4 byte), (Range/jangkauan: -3.4E-38 s/d 3.4E +38), (format:%f), dan
(keterangan:Float/bilangan pecahan).
4. Double : (ukuran:8 byte), (Range/jangkauan: -1.7E-308 s/d 1.7 + 308), (format:
%If), dan (keterangan:Pecahan presisi ganda).
5. Void : (ukuran:0 byte), (Range/jangkauan:-), (format:-), dan (keterangan:tidal bertipe).
A. Variable
Variabel adalah suatu pengenal (identifier) yang digunakan untuk mewakili suatu nilai
tertentu di dalam proses program. Berbeda dengan konstanta yang nilainya selalu tetap,
nilai dari suatu variable bisa diubah-ubah sesuai kebutuhan. Nama dari suatu variable
dapat ditentukan sendiri oleh pemrogram dengan aturan sebagai berikut:
1. Terdiri dari gabungan huruf dan angka dengan karakter pertama harus berupa huruf.
Bahasa C bersifat case-sensitive artinya huruf besar dan kecil dianggap berbeda. Jadi
antara nim, NIM dan Nim dianggap berbeda.
2. Tidak boleh mengandung spasi.
3. Tidak boleh mengandung symbol-simbol khusus, kecuali garis bawah
(underscore).Yang termasuk symbol khusus yang tidak diperbolehkan antara lain : $, ?,
%, #, !, &, * ,(, ), -, +, = dsb
4. Panjangnya bebas, tetapi hanya 32 karakter pertama yang terpakai.
• Contoh penamaan variabel yang benar : NIM, a, x, nama_mhs, f3098, f4, nilai, budi,
dsb.
• Contoh penamaan variable yang salah : %nilai_mahasiswa, 80mahasiswa,rata-rata,
ada spasi, penting!, dsb.

12
Percobaan 1
 Program

Gambar 2.1

 Output

13
Gambar 2.2

14
LEMBAR PENGESAHAN

Judul : Konstanta
Nama : Cindya Putri Hidayat Siregar
NIM : 0701213101
Program Studi : Ilmu Komputer

Medan, 02 Juli 2022

Menyetujui,

Koordinator Asisten Asisten

Muhammad Fauzi Khalid Hidayatullah

Mengetahui,

Dosen Penanggung Jawab

15
Yusuf Ramadhan Nasution, M.Kom

MODUL 3
OPERATOR

A. Definisi Operator Penugasan


Operator Penugasan (Assignment operator) dalam bahasa C berupa tanda sama
dengan (“=”). Contoh : nilai = 80;A = x * y; Artinya : variable “nilai” diisi dengan 80
dan variable “A” diisi dengan hasil perkalian antara x dan y.

B. Operator Aritmatika
Bahasa C menyediakan lima operator aritmatika, yaitu :
* : untuk perkalian
/ : untuk pembagian
Operator Arti Contoh
< Kurang dari x < y (apakah x kurang dari y)
<= Kurang dari sama dengan x <= y (apakah x kurang dari sama dengan y)
> Lebih dari x > y (apakah x lebih dari y)
>= Lebih dari sama dengan x >= y (apakah x lebih dari sama dengan y)
== Sama dengan x == y (apakah x sama dengan y)
!= Tidak sama dengan x != y (apakah x tidak sama dengan y)
% : untuk sisa pembagian (modulus)
+ : untuk pertambahan
- : untuk pengurangan
Catatan : operator % digunakan untuk mencari sisa pembagian antara dua bilangan.
Misalnya :
9%2=19%3=0
9%5=49%6=3

C. Operator Hubungan (Perbandingan)


Operator Hubungan digunakan untuk membandingkan hubungan antara dua
buah operand (sebuah nilai atau variable. Operator hubungan dalam bahasa C :

16
Table 3.1

Percobaan 1
 Program

Gambar 3.1
 Output

17
Gambar 3.2

LEMBAR PENGESAHAN

Judul : Operator
Nama : Cindya Putri Hidayat Siregar
NIM : 0701213101
Program Studi : Ilmu Komputer

Medan, 02 Juli 2022

Menyetujui,

Koordinator Asisten Asisten

Muhammad Fauzi Khalid Hidayatullah

Mengetahui,

Dosen Penanggung Jawab

18
Yusuf Ramadhan Nasution, M.Kom

MODUL 4
INPUT DAN OUTPUT
Dalam bahasa C proses memasukkan suatu data bisa menggunakan beberapa fungsi
pustaka yang telah tersedia. Beberapa fungsi pustaka yang bisa digunakan adalah :

A. Scanf()
Fungsi pustaka scanf() digunakan untuk menginput data berupa data numerik, karakter
dan string secara terformat.
Hal-hal yang perlu diperhatikan dalam pemakaian fungsi scanf() :
0 Fungsi scanf() memakai penentu format
0 Fungsi scanf() memberi pergantian baris secara otomatis
0 Fungsi scanf() tidak memerlukan penentu lebar field 0Variabelnya harus
menggunakan operator alamat &
Kode penentu format:
%c = membaca sebuah karakter
%s = membaca sebuah string
%i, %j = membaca sebuah bilang bulat (integer)
%f, %e = membaca sebuah bilangan pecahan (real)
%o = membaca sebuah bilangan octal
%x = membaca sebuah bilangan heksdesimal
%u = membaca sebuah bilangan tak bertanda
Tabel 4.2

19
Percobaan 1
 Program

Gambar 4.1
 Output

Gambar 4.2

B. gets()

20
Fungsi gets() digunakan untuk memasukkan data bertipe karakter dan tidak dapat
digunakan untuk memasukkan data numerik. Harus diakhiri dengan penekanan tombol
enter , Cursor secara otomatis akan pindah baris dan Tidak memerlukan penentu format.

Percobaan 2
 Program

Gambar 4.3
 Output

Gambar 4.4

C. getchar()
• Fungsi getchar() digunakan untuk membaca data yang bertipe karakter
• Harus diakhiri dengan penekanan tombol enter
• Karakter yang dimasukkan terlihat pada layer
• Pergantian baris secara otomatis

21
D. Getch() dan getche()
• Fungsi getch() dan getche() digunakan untuk membaca data karakter.
• Karakter yang dimasukkan tidak perlu diakhiri dengan penekanan tombol enter.
• Tidak memberikan efek pergantian baris secara otomatis
• Jika menggunakan fungsi getch() karakter yang dimasukkan tidak akan ditampilkan
pada layer sehingga sering digunakan untuk meminta inputan berupa password.
• Sedangkan pada getche() karakter yang dimasukkan akan ditampilkan pada layer.

Percobaan 3
 Program

Gambar 4.5

22
 Output

Gambar 4.6

LEMBAR PENGESAHAN

Judul : Input Dan Output


Nama : Cindya Putri Hidayat Siregar
NIM : 0701213101
Program Studi : Ilmu Komputer

Medan, 02 Juli 2022

Menyetujui,

23
Koordinator Asisten Asisten

Muhammad Fauzi Khalid Hidayatullah

Mengetahui,

Dosen Penanggung Jawab

Yusuf Ramadhan Nasution, M.Kom

MODUL 5
PENYELEKSIAN KONDISI

A. Kegunaan Penyeleksian Kondisi


Penyeleksian kondisi digunakan untuk mengarahkan perjalanan suatu proses.
Penyeleksian kondisi dapat diibaratkan sebagai katup atau kran yang mengatur jalannya
air. Bila katup terbuka maka air akan mengalir dan sebaliknya bila katup tertutup air
tidak akan mengalir atau akan mengalir melalui tempat lain. Fungsi penyeleksian
kondisi penting artinya dalam penyusunan bahasa C, terutama untuk program yang
kompleks.
1. Struktur Kondisi “IF....”
Struktur if dibentuk dari pernyataan if dan sering digunakan untuk menyeleksi suatu
kondisi tunggal. Bila proses yang diseleksi terpenuhi atau bernilai benar, maka

24
pernyataan yang ada di dalam blok if akan diproses dan dikerjakan. Bentuk umum
struktur kondisi if adalah : if(kondisi) pernyataan;

Percobaan 1
 Program

Gambar 5.1
 Output

Gambar 5.2
2. Struktur Kondisi “IF ELSE....”
Dalam struktur kondisi if.....else minimal terdapat dua pernyataan. Jika kondisi yang
diperiksa bernilai benar atau terpenuhi maka pernyataan pertama yang dilaksanakan dan
jika kondisi yang diperiksa bernilai salah maka pernyataan yang kedua yang
dilaksanakan.
3. Struktur Kondisi “ELSE IF....”
Logika Else If disebut juga IF bertingkat, digunakan untuk menangani beberapa kondisi
yang berbeda dalam satu rutin pengecekan. Pada logika else If, statemen pad amasing-
masing IF akan dijalankan hanya jika kondisi didalam logika IF masing-masing bernilai
benar. Pada akhir Else IF bias ditambahkan Else saja untuk menangani jika semua
kondisi IF danElse IF diatasnya bernilai salah.
Cara penulisan :

25
If (kondisi 1)
{
Pernyataan
}
Else if (kondisi 2)
{
Pernyataan
}
Else (kondisi)
{
Pernyataan
}

Percobaan 2
 Program

26
Gambar 5.3
 Output

Gambar 5.4

4. Struktur Kondisi “SWITCH....CASE....DEFAULT…”


Struktur kondisi switch....case....default digunakan untuk penyeleksian kondisi dengan
kemungkinan yang terjadi cukup banyak. Struktur ini akan melaksanakan salah satu dari
beberapa pernyataan ‘case’ tergantung nilai kondisi yang ada di dalam switch.
Selanjutnya proses diteruskan hingga ditemukan pernyataan ‘break’. Jika tidak ada nilai
pada case yang sesuai dengan nilai kondisi, maka proses akan diteruskan kepada
pernyataan yang ada di bawah ‘default’.
Bentuk umum dari struktur kondisi ini adalah :

switch(kondisi)
{
case 1 : pernyataan-1;
break;
case 2 : pernyataan-2;
break;
.....
.....
case n : pernyataan-n;
break;
default : pernyataan-m

27
}

Percobaan 3
 Program 1

Gambar 5.5

 Program 2

28
Gambar 5.6
 Output

Gambar 5.7

Percobaan 4
 Program

29
Gambar 5.8

 Output

Gambar 5.9

30
LEMBAR PENGESAHAN

Judul : Penyeleksian Kondisi


Nama : Cindya Putri Hidayat Siregar
NIM : 0701213101
Program Studi : Ilmu Komputer

Medan, 02 Juli 2022

Menyetujui,

Koordinator Asisten Asisten

Khalid Hidayatullah
Muhammad Fauzi

Mengetahui,

31
Dosen Penanggung Jawab

Yusuf Ramadhan Nasution, M.Kom

MODUL 6
PERULANGAN

A. Penjelasan
Dalam bahasa C tersedia suatu fasilitas yang digunakan untuk melakukan proses
yang berulangulang sebanyak keinginan kita. Misalnya saja, bila kita ingin menginput
dan mencetak bilangan dari1 sampai 100 bahkan 1000, tentunya kita akan merasa
kesulitan. Namun dengan struktur perulangan proses, kita tidak perlu menuliskan
perintah sampai 100 atau 1000 kali, cukup dengan beberapa perintah saja. Struktur
perulangan dalam bahasa C mempunyai bentuk yang bermacam-macam.

B. Struktur Perulangan “WHILE”


PerulanganWHILE banyak digunakan pada program yang terstruktur. Perulangan
ini banyak digunakan bila jumlah perulangannya belum diketahui. Proses perulangan
akan terus berlanjut selama kondisinya bernilai benar (true) dan akan berhenti bila
kondisinya bernilai salah.

Percobaan 1
 Program

32
Gambar 6.1

 Output

Gambar 6.2
A. Struktur Perulangan “DO.....WHILE… ”
Pada dasarnya struktur perulangan do....while sama saja dengan
struktur while, hanya saja pada proses perulangan dengan while, seleksi berada di while
yang letaknya di atas sementara pada perulangan do....while, seleksi while berada di
bawah batas perulangan. Jadi dengan menggunakan struktur do…while sekurang-
kurangnya akan terjadi satu kali perulangan.

Percobaan 2
 Program

33
Gambar 6.3

 Output

Gambar 6.4

C. Struktur Perulangan “FOR”


Struktur perulangan for biasa digunakan untuk mengulang suatu proses yang telah
diketahui jumlah perulangannya. Dari segi penulisannya,struktur perulangan for
tampaknya lebih efisien karena susunannya lebih simpel dan sederhana. Bentuk umum
perulangan for adalah sebagai berikut :
for(inisialisasi;syarat; penambahan)
pernyataan;
/* Program perulangan menggunakan for */

34
Percobaan 3
 Program

Gambar 6.5

35
 Output

Gambar 6.6

D. Goto Dan Label


Goto " adalah sebuah statement yang mengarahkan pada sebuah statement label.
Nama Label diakhiri dengan ":“

Percobaan 4
 Program

36
Gambar 6.7

 Output

Gambar 6.8

37
LEMBAR PENGESAHAN

Judul : Perulangan
Nama : Cindya Putri Hidayat Siregar
NIM : 0701213101
Program Studi : Ilmu Komputer

Medan, 02 Juli 2022

Menyetujui,

Koordinator Asisten Asisten

Muhammad Fauzi Khalid Hidayatullah

Mengetahui,

Dosen Penanggung Jawab

38
Yusuf Ramadhan Nasution, M.Kom

MODUL 7
FORMAT DASAR PENULISAN ARRAY DALAM BAHASA C

A. Format Pendefinisian Array Dalam Bahsa C


tipe_data nama_variabel[jumlah_element] Element adalah sebutan untuk isi atau
anggota sebuah array.
Sebagai contoh, jika saya ingin membuat array dengan 100 element yang bisa diisi
dengan tipe data float, pendefinisiannya adalah sebagai berikut:
float bilangan[100]; Berikutnya, bagaimana cara mengakses dan mengisi element array
ini? Kita tinggal menuliskan nomor urut dari element yang akan akan diakses, nomor
urut ini dikenal juga dengan istilah index. Berikut contohnya:
bilangan[5] = 3.14; Yang harus perlu diperhatikan adalah, nomor urut atau index array
dimulai dari 0, bukan 1.Akibatnya jika kita ingin mengakses element pertama dari array
bilangan, penulisannya adalah bilangan[0]. Untuk bisa mengakses element ke-100 dari
array bilangan, penulisannya adalah bilangan[99].
Index array yang dimulai dari 0 ini hampir selalu menjadi ciri khas di seluruh bahasa
pemrograman modern, termasuk C++, PHP, dan JavaScript.

Percobaan 1
 Program

39
Gambar 7.1

 Output

Gambar 7.2
Di awal kode program, baris int bilangan[5] dipakai untuk membuat sebuah array
bernama bilangan dengan 5 element atau 5 anggota. Array bilangan ini di set sebagai
int, yang artinya setiap element array hanya bisa diisi dengan bilangan bulat (integer).
Setelah pendefinisian array bilangan,selanjutnya saya mengisi setiap element array
dengan angka. Kembali diingat bahwa index array dimulai dari 0,sehingga untuk
mengakses element pertama dari array bilangan, penulisannya adalah bilangan[0].
Dalam contoh diatas, pengisian nilai array diproses satu persatu. Namun kita juga bisa
mengisi element array langsung pada saat pendefinisiannya,seperti contoh berikut:

Percobaan 2
 Program

Gambar 7.3
 Output

40
Gambar 7.4
Kali ini,semua isi array diinput sekaligus pada saat pembuatan, yakni dengan perintah
int bilangan[5] = {8, 11, -15, 40, -115}.Tanda koma dipakai sebagai pemisah antara satu
nilai dengan nilai lain. Hasil kode program diatas akan sama persis seperti contoh kode
program pertama. Yang cukup unik, kita juga bisa mendefiniskan array tanpa harus
menulis jumlah elemen anggotanya, seperti contoh berikut:
Percobaan 3 :
 Program

Gambar 7.5
 Output

Gambar 7.6
Perhatikan cara pendefinisian array ini, yakni:
char kumpulan_huruf[] = {'a' , 'C' , ' x '};
Disini kita tidak menginput angka apapun sebagai penentu jumlah element. Jumlah
element akan digenerate secara otomatis dari banyaknya nilai yang diinput ke dalam
array tersebut. Dalam contoh ini terdapat 3 nilai sehingga array kumpulan_huruf akan
berisi 3 element. Pendefinisian array seperti ini hanya bisa dibuat jika nilai untuk
element array langsung ditulis pada saat pendefinisian. Kita tidak bisa menggunakan
cara diatas jika element array diisi secara terpisah, seperti contoh kode program pertama
sebelumnya.

41
LEMBAR PENGESAHAN

Judul : Format Dasar Penulisan Array Dalam Bahasa C


Nama : Cindya Putri Hidayat Siregar
NIM : 0701213101
Program Studi : Ilmu Komputer

Medan, 02 Juli 2022

Menyetujui,

Koordinator Asisten Asisten

Muhammad Fauzi Khalid Hidayatullah

Mengetahui,

Dosen Penanggung Jawab

42
Yusuf Ramadhan Nasution, M.Kom

MODUL 8
ARRAY 2 DIMENSI BAHASA C

A. Pengertian
Array dua dimensi adalah sebutan untuk array yang penomoran index-nya
menggunakan 2 buah angka.Analogi yang sering dipakai seperti titik koordinat dalam
diagram kartesius. Diagram kartesius merupakan diagram yang biasa kita pakai untuk
membuat grafik. Disini terdapat sumbu X dan sumbuY. Sebuah titik dalam diagram
kartesius ini harus disebut secara berpasangan,seperti (2,3) atau (-3, 1).
Contoh bentuk diagram kartesius

Analogi lain adalah matriks. Dalam matematika, matrik terdiri dari kolom dan baris.
Kembali, untuk menentukan nilai dari sebuah matriks, kita harus sebut secara
berpasangan seperti baris 1 kolom 2, atau baris 3 kolom 1. Konsep seperti inilah yang
menjadi dasar dari array 2 dimensi. Untuk membuat array 2 dimensi di dalam bahasa C,
kita membuat 2 kali tanda kurung siku setelah nama variabel, seperti contoh berikut:

43
int bilangan[2][2];
Baris diatas akan membuat array 2 dimensi dengan nama variabel: bilangan.
Variabel bilangan ini akan berisi 4 element (2 x 2). Atau jika diibaratkan sebagai
matriks, disini kita membuat matriks 2 x 2.
Untuk mengakses setiap element array, penulisan index juga harus ditulis 2 kali,
seperti contoh berikut:
bilangan[0][0] = 100;
bilangan[0][1] = 101;
bilangan[1][0] = 110;
bilangan[1][1] = 111;
Contoh Kode Program Array 2 Dimensi Bahasa C. Berikut contoh kode program
pertama dari pembuatan array 2 dimensi di dalam bahasa C:

Percobaan 1
 Program

Gambar 8.1
 Output

Gambar 8.2
Di awal kode program, kita membuat array bilangan dengan perintah int bilangan[2]
[2];. Artinya, array bilangan adalah sebuah array 2 dimensi dengan 4 element. Proses

44
pengisian setiap element array dilakukan setelahnya, kemudian ditampilkan dengan
perintah printf. Pengisian element array 2 dimensi juga bisa dilakukan pada saat array
itu di definisikan,seperti percobaan ke 2 berikut ini:

Percobaan 2

 Program

Gambar 8.3
 Output

Gambar 8.4

45
LEMBAR PENGESAHAN

Judul : Array 2 Dimensi Bahasa C


Nama : Cindya Putri Hidayat Siregar
NIM : 0701213101
Program Studi : Ilmu Komputer

Medan, 02 Juli 2022


Menyetujui,

Koordinator Asisten Asisten

Muhammad Fauzi Khalid Hidayatullah

Mengetahui,

46
Dosen Penanggung Jawab

Yusuf Ramadhan Nasution, M.Kom

MODUL 9
MEMBACA STRING DENGAN SCANF DAN GETS

A. Pembahasan
Di materi sebelumnya, kita pernah membahas tentang perintah scanf yang dipakai untuk
meminta input dari user. Cara yang sama juga bisa dipakai untuk tipe data string,seperti
contoh berikut:

Percobaan 1
 Program

Gambar 9.1
 Output

Gambar 9.2

47
Di baris 5 kita mendefinisikan sebuah variabel nama sebagai char nama[20]. Artinya,
variabel nama bisa menampung 19 karakter (ingat, 1 karakter lagi menjadi jatah untuk
null). Di baris 7, perintah scanf dipakai untuk menerima inputan dari user. Inputan ini
kemudian disimpan ke dalam variabel nama yang selanjutnya ditampilkan kembali
dengan perintah printf di baris 10. Meskipun nama “Andika” yang kita input tidak
persis 19 karakter, ini tidak menjadi masalah selama panjang inputan tetap kurang dari
19 karakter. Perhatikan juga bahwa di sini perintah scanf tidak butuh tanda ‘&’
sebagaimana tipe data dasar seperti int, float dan char. Tanda ‘&’ merujuk ke pointer
yang berisi alamat memory dari variabel tersebut. Namun karena variabel nama adalah
array of char, pointer ini tidak diperlukan.

B. Membaca String dengan gets


Gets adalah sebuah fungsi atau function di dalam bahasa C yang dipakai untuk
membaca inputan user. Penggunaannya lebih sederhana daripada scanf,seperti contoh
berikut:

Percobaan 2
 Program

Gambar 9.3
 Output

48
Gambar 9.4

LEMBAR PENGESAHAN

Judul : Membaca String Dengan Scanf Dan Gets


Nama : Cindya Putri Hidayat Siregar
NIM : 0701213101
Program Studi : Ilmu Komputer

Medan, 02 Juli 2022

Menyetujui,

Koordinator Asisten Asisten

49
Muhammad Fauzi Khalid Hidayatullah

Mengetahui,

Dosen Penanggung Jawab

Yusuf Ramadhan Nasution, M.Kom

MODUL 10
CARA MENGUBAH ISI STRING DENGAN FUNGSI STRCPY

A. Penjelasan
Error Pada Saat Mengubah Isi String : Dalam beberapa materi sebelumnya, kita secara
langsung mengisi string pada saat proses deklarasi atau menggunakan perintah scanf /
gets. Misalnya: char nama[20]= “Cindya Putri”. Tapi ketika isi string diisi setelah di
deklarasikan, akan terjadi error.

B. Cara penggunaan function strcpy


Perintah strcpy bisa dipakai untuk memcopy sebuah string ke dalam string lain, atau
sebuah string ke dalam variabel. Dalam bahasa C,strcpy adalah sebuah fungsi atau
function. Berikut contoh percobaan programnya:

Percobaan 1
 Program

50
Gambar 10.1
 Output

Gambar 10.2

LEMBAR PENGESAHAN

Judul : Cara Mengubah Isi String Dengan Fungsi Strcpy


Nama : Cindya Putri Hidayat Siregar
NIM : 0701213101
Program Studi : Ilmu Komputer

Medan, 02 Juli 2022

Menyetujui,

Koordinator Asisten Asisten

Muhammad Fauzi Khalid Hidayatullah

51
Mengetahui,

Dosen Penanggung Jawab

Yusuf Ramadhan Nasution, M.Kom

MODUL 11
PERULANGAN BERSARANG (NESTED LOOP)

A. Definisi Perulangan Bersarang


Perulangan bersarang adalah sebutan untuk perulangan di dalam perulangan. Konsep
seperti ini sering dipakai untuk memecahkan masalah programming yang cukup
kompleks. Semua jenis perulangan bisa dibuat dalam bentuk perulangan bersarang,
termasuk perulangan FOR,WHILE dan DO WHILE. Dalam bahasa inggris, perulangan
bersarang ini dikenal dengan sebutan nested loop.
Di dalam perulangan bersarang terdapat istilah outer loop dan inner loop. Sesuai dengan
namanya, outer loop adalah sebutan untuk perulangan luar, sedangkan inner loop
sebutan untuk perulangan dalam.
Tidak ada batasan seberapa banyak “kedalaman” dari sebuah perulangan bersarang.
Kita bisa saja membuat perulangan di dalam perulangan di dalam perulangan, dst. Tentu
saja semakin banyak perulangan yang “bersarang”, kode programnya juga akan makin
kompleks. Dalam membuat perulangan berasarang kita juga harus sangat teliti dalam
penggunaan tanda kurung kurawal “{ }” untuk menandakan awal dan akhir sebuah blok
kode program. Tidak jarang hasilnya jadi berantakan karena salah menulis posisi
penutup kurung kurawal.

B. Contoh Kode Program Perulangan Bersarang (Nested Loop)

52
Mari kita masuk ke contoh kode program dari perulangan bersarang dalam bahasa C.
Namun sebelum itu, kita
berangkat dari perulangan “normal” terlebih dahulu.
Latihan pertama, bisakah anda merancang kode program untuk membuat daftar
perkalian 3 dari 1 sampai 10?
Hasil akhir yang kita inginkan adalah seperti ini:
3*1=3
3*2=6
3*3=9
3 * 4 = 12
3 * 5 = 15
3 * 6 = 18
3 * 7 = 21
3 * 8 = 24
3 * 9 = 27
3 * 10 = 30
Tentu saja baris di atas bisa dihasilkan dengan membuat perintah printf sebanyak 10
kali, namun hal itu tidak
efisien.Hasil di atas harus dibuat menggunakan perulangan FOR.
berikut kode program yang kita gunakan:

Percobaan 1
 Program

53
Gambar 11.1

 Output

Gambar 11.2
Berikutnya, bagaimana dengan membuat kode program untuk menghasilkan daftar
perkalian yang sama seperti di atas, tapi kali ini bukan hanya perulangan 3 saja, tapi
dari 1 – 10. Maksudnya, kita ingin membuat kode
program yang menghasilkan 100 baris daftar perkalian,mulai dari:
1*1=1
1*2=2
1*3=3
....
....
Sampai dengan:
....
....
10 * 8 = 80
10 * 9 = 90
10 * 10 = 100
Ada beberapa cara untuk membuat daftar perkalian seperti ini, misalnya bisa
dengan membuat 10 kali perulangan FOR (1 perulangan untuk setiap angka).
Namun cara paling efisien adalah menggunakan perulangan
bersarang.
Berikut contoh kode program yang bisa dipakai:

54
Percobaan 2
 Program

Gambar 11.3
 Output

Gambar 11.4
Untuk membuat perulangan bersarang, kita butuh 2 buah variabel counter, yakni 1
untuk outer loop, dan 1 untuk inner loop. Dalam contoh ini saya menggunakan
variabel i dan j.
Perulangan i (outer loop) akan diulang sebanyak 10 kali, yakni dari i = 1 sampai i
<= 10. Di dalam setiap perulangan i ini, akan di proses perulangan j (inner loop).

55
Perulangan j juga akan di proses sebanyak 10 kali. Dengan demikian, perintah
printf di baris 7 akan dijalankan sebanyak 100 kali, yakni total dari i * j. Inilah
salah satu contoh penerapan perulangan bersarang dalam bahas

LEMBAR PENGESAHAN

Judul : Perulangan Bersarang (Nested Loop)


Nama : Cindya Putri Hidayat Siregar
NIM : 0701213101
Program Studi : Ilmu Komputer

Medan, 02 Juli 2022

Menyetujui,

Koordinator Asisten Asisten

56
Muhammad Fauzi Khalid Hidayatullah

Mengetahui,

Dosen Penanggung Jawab

Yusuf Ramadhan Nasution, M.Kom

57

Anda mungkin juga menyukai