Anda di halaman 1dari 83

Modul Praktikum Algoritma dan Pemrograman 2

NASKAH TUTORIAL

ALGORITMA DAN PEMROGRAMAN

ARMANSYAH

PROGRAM STUDI ILMU KOMPUTER


FAKULTAS SAINS DAN TEKNOLOGI
UNIVERSITAS ISLAM NEGERI SUMATERA UTARA MEDAN
MEDAN
2018

Designed by Armansyah, M.Kom Page1


KATA PENGANTAR

Puji syukur kepada Allah atas limpahan rahmatNya kepada punulis, hingga
akhirnya penulis dapat merampungkan tugas mengembangkan bahan ajar
mahasiswa dalam bentuk modul ajar atau naskah tutorial. Modul ini dirancang untuk
membantu mahasiswa dalam memahami konsep dan praktis algoritma
pemrograman komputer secara umum, dan secara khusus pemrograman C dengan
menggunakan IDE Turbo C++.
Modul ini disusun dari dasar hingga akhir sesuai dengan silabus yang
dirancang untuk memperkaya referensi mahasiswa dalam memahami konsep dan
praktis algortma pemrograman dengan C. Tentu saja keberadaan modul akan
menjadi sangat bermanfaat jika mahasiswa membaca dan menerapkannya secara
mandiri diluar perkuliahan. Harapan penulis dengan dirancangkannya modul ini
adalah tercapainya kompetensi pengetahuan dan praktis pemrograman komputer
dengan C oleh mahasiswa, karenanya praktek mandiri harus lebih diperbanyak untuk
memenuhi capaian pembelajaran.
Penulis juga berterimakasih kepada Dekan Fakultas Sains dan Teknologi UIN
Sumatera Utara Medan, secara khusus ketua Program Studi Ilmu Komputer atas tugas
yang diberikan, serta rekan dosen yang tidak disebutkan satu-persatu,--sehingga
penulis bersemangat dalam melakukan tugas penulisan modul ini. Tentu saja ucapan
terimakasih tidak lupa penulis sampaikan kepada istri karena telah begitu banyak
membantu dan menemai malam-malam penulisan modul ini. Kepada seluruh
mahasiswa dan pembaca, terimakasih apresiasinya atas menggunakan modul ini.
Rancangan modul ini mungkin terlalu sederhana dan banyak kekurangan baik
dari sisi konten, struktur penulisan hingga modelnya. Pengembangan dan revisi akan
terus diupayakan untuk meningkatkan kualitas dan mutunya dimasa mendatang.
Akhirnya kepada pembaca penulis mohon maaf atas segala kekurangan, dan kepada
Allah penulis mohon ampun. Demikian pengantar ini, penulis sampaikan
alhamdulillahirabbil’alamiin. Wassalamu’alaikum warahmatullahi wabarakaatuh.

Medan, Maret 2018


Penulis
Modul Praktikum Algoritma dan Pemrograman 2

MODUL 1
PENGANTAR BAHASA C

1.1 KOMPETENSI PRODI. ILMU KOMPUTER


1) Mampu merancang suatu aplikasi sistem informasi menggunakan bahasa
pemrograman tertentu
2) Mampu menjadi sistem analisis teknologi informasi
3) Mampu menerapkan komponen sistem komputer dan basisdata untuk
merancang sistem terdistribusi
4) Mampu menjadi administrator jaringan komputer, konsultan bidang teknologi
informasi
5) Mampu menerapkan teknologi informasi dan metode komputasi yang sesuai
dengan perkembangan
6) Mampu menerapkan praktik penelitian dalam berbagai bidang dan
melanjutkan jenjang pendidikan yang lebih tinggi

1.2 TUJUAN PRAKTIKUM


Setelah mengikuti praktikum pada modul 1 ini, mahasiswa diharapkan mampu
dalam beberapa kompetensi pokok diantaranya :
1. Mampu menjelaskan konsep dasar bahasa C dan komponen-kompenen yang
identik dengan bahasa C
2. Mampu menjelaskan struktur bahasa C dan mendeskripsikan berbagai
komponen yang terkandung di dalamnya
3. Mampu menggunakan editor Turbo C untuk menulis program berbahasa C
4. Mampu menulis program bahasa C dengan berbagai editor C,secara khusus
dengan editor Turbo C

1.3 TEORI SINGKATA


A. Sejarah Singkat Bahasa C
C adalah bahasa tingkat tinggi dengan tujuan umum yang pada awalnya
dikembangkan oleh Dennis M. Ritchie untuk mengembangkan sistem operasi UNIX di
Bell Labs. Bahasa C merupakan penerus dari bahasa B yang diperkenalkan pada
tahun 1970an. Bahasa C pada awal pertama kalinya diimplementasikan pada
komputer DEC PDP-11 pada tahun 1972, dan pada tahun 1988 bahasa C ini
diformalkan oleh American National Standart Institute (ANSI).
Pada tahun 1978, Brian Kernighan dan Dennis Ritchie menghasilkan deskripsi
C pertama yang tersedia untuk publik, yang sekarang dikenal sebagai standar K & R.
Sistem operasi UNIX, kompiler C, dan pada dasarnya semua program aplikasi UNIX
telah ditulis dalam C. C kini telah menjadi bahasa profesional yang digunakan secara
luas karena berbagai alasan, diantaranya :
 Mudah untuk dipelajari

Designed by Armansyah, M.Kom Page3


 Bahasanya yang terstruktur
 Program yang dihasilkan efisien
 Dapat menangani aktivitas tingkat rendah
 C dapat dikompilasi pada berbagai platform sistem operasi

B. Perangkat Lunak Editor


Program C dapat bervariasi dari 3 baris hingga jutaan baris dan harus ditulis ke
dalam satu atau lebih file teks dengan ekstensi ".c"; misalnya, hello.c. Penggunaan
bahasa C memerlukan dua perangkat lunak editor dan kompiler.

1) Editor C
Perangkat lunak editor digunakan untuk menulis kode program, sementara
kompiler digunakan untuk mengkompilasi kode program yang ditulis oleh perancang
program. Perangkat lunak editor bahasa C yang paling ringan adalah Turbo C++.
Selain dukungannya terhadap bahasa C, editor ini juga mendukung kompilasi bahasa
C++. Selanjutnya Turbo C++ ini akan kita sebut dengan Turbo C. Turbo C merupakan
perangkat lunak editor bahasa C yang gratis dan dapat didownload secara bebas
melalui url https://archive.codeplex.com/?p=turboc.

2) Emulator
Editor Turbo C yang berjalan di lingkungan windows 7 dan versi diatasnya
memerlukan dukungan perangkat lunak emulator. Emulator yang umum digunakan
oleh penggiat teknologi informasi (TI) adalah DosBox. Emulator DosBox umum
digunakan untuk membantu menjalankan aplikasi berarsitektur rendah (Misal : MS-
Dos) pada komputer yang memiliki arsitektur 32 dan 64 bit atau pada komputer
arsitektur tinggi.
DosBox juga perupakan aplikasi yang free, yang juga penggunaanya dapat
menggunakan sistem donasi. Aplikasi ini dapat di download di internet di situs resmi
pengembangnya di https://www.dosbox.com/download.php?main=1.

C. Struktur Bahasa C
Struktur merupakan formula, atau rumus yang harus digunakan. Dimana
struktur bahasa C merupakan landasan bagi perancang program untu menulis kode
program. Setiap bahasa program memiliki struktur masing-masing yang dikenali oleh
compiler program tersebut. Struktur bahasa C terdiri dari beberapa komponen
diantaranya :
 Preposessor,yang selalu diikuti oleh file header dengan ekstensi .h.
preposessor ditulis dengan format #include dan diikuti file headernya.
Contohnya #include <stdio.h> atau #include “stdio.h”
 Fungsi utama, yang dibuka dan ditutup dengan tanda kurung bulat ( )
untuk menyertakan argumen jika dibutuhkan.
Modul Praktikum Algoritma dan Pemrograman 2

 Tubuh program, yang merupakan bagian inti program untuk menulis


kode sumber program. Seperti misalnya,int main ().
 Nilai balik fungsi, bagian ini tidak musti disertakan, bergantung kepada
sifat fungsi utama yang digunakan. Jika fungsi utama menggunakan tipe
fungsi maka nilai balik fungsi harus disertakan di akhir program dengan
format return nilai;, contoh : return 0;.Dimanareturn 0;
adalah nilai balik dari fungsi int main () yang digunakan pada fungsi
utama.
 Ekspresi / Statement, yang merupakan kode perintah program. Pada
bagian inilah kode program ditulis sesuai dengan tujuan perancangan
program. Pada bagian ini algoritma diterapkan untuk menentukan
tindakan apa yang harus dikerjakan oleh komputer melalui perintah
program. Ekspresi / statement program ditulis ditubuh fungsi utama
diantara tanda kurung pembuka { dan kurung penutup }.
 Komentar, bagian ini bukan bagian yang harus disertakan. Karena
komentar biasa digunakan untuk menjelaskan makna dari suatu blok
program. Komentar, tidak akan dibaca oleh kompilator, sehingga
keberadaanya tidak musti disertakan. Ada kalanya komentar penting
disertakan untuk memudahkan pengembang jika suatu waktu ingin
merevisi program. Komentar dapat berupa komentar paragraf yang ditulis
seperti/* teks komentar */, atau komentar tunggal yang ditulis seperti
// teks komentar.

Dengan melihatkomponen-komponen yang terkandung pada struktur bahasa


C diatas, dapat dilihat struktur bahasa Cseperti pada kotak berikut :

#include <stdio.h>

int main() {
/* my first program in C */
printf("Hello, World! \n");

return 0;
}

Dapat kita amati pada struktur diatas, kode printf(“Hello, World!


\n”);merupakan kode program, yang ditulis diantara fungsi utama int main ()
{ }.

Designed by Armansyah, M.Kom Page5


1.4 KEGIATAN PRAKTIKUM
A. Menyiapkan Perangkat Lunak
Setelah memahami konsep dasar yang diuraikan pada subtopik teori singkat
diatas, selanjutnya siapkanlah perangkat lunak editor dan emulator yang dibutuhkan
untuk diinstalasikan kedalam komputer.

1) Instalasi DosBox 0.74


a) Pilih Perangkat Lunak DOSBox0.74-win32-installer klik kanan dan tekan
Run As Administrator, lalu tekan Yes untuk melanjutkan penginstalasian.
Perhatikan gambar berikut :

b) Kemudian, Klik Next, dan Next kembali.


c) Langkah selanjutnya monitorakan menunjukkan lokasi penyimpanan
DosBox 0.74. Secara default sistem akan menunjukkan pada lokasi
C:\Program Files\DOSBox-0.74 .KlikInstall untuk melanjutkan hingga
muncul tombol Close. Pada posisi ini, instalasi DosBox telah berhasil.
KlikClose untuk menutup jendala penginstalasian DosBox 0.74.

2) Instalasi Turbo C
a) Pilih dan ekstrak Turbo C ++ 3.2.20 berikut seperti yang ditunjukkan pada
gambar berikut :
Modul Praktikum Algoritma dan Pemrograman 2

b) Buka folder Turbo C++ 3.2.2.0 tersebut dan klik ganda fileSetupatau boleh
juga dengan klik gandafile berekstestensi.msi. Selanjutnya akan tampil
jendela Welcome to the installShield Wizard for Turbo C++
3.2.2.0. KlikNext untuk melanjutkan.

Designed by Armansyah, M.Kom Page7


c) Pada jendela selanjutnya akan ditampilkan lembar persetujuan. Pada
jendela ini perangkat lunak meminta user untuk menyetujui ketentuan-
ketentuan yang harus dipatuhi jika benar-benar yakin akan
menggunakannya. Pilih I accept the terms in the license agreement jika
benar ingin melanjutkan instalasi. Lalu Klik tombol Next, dan pada jendela
selanjutnya Klik tombol Install.Tunggu beberapa saat, perangkat lunak
sedang melakukan proses instalasi hingga muncul jendela konfirmasi.
Pada jendela konfirmasi, KlikYes
d) Proses instalasi selesai, jendela menampilkan pernyataan InstallShield
Wizard Completed. Centang pilihan Lunch Program Lalu KlikFinish,
maka jendela utama Turbo C++ akan tampil seperti pada gambar berikut :

Jika proses instalasi program (editor) Turbo C++ 3.2.2.0 selesai dilakukan,
editor tersebut secara default akan tersimpan pada direktori root C:\ dengan nama
folder TURBOC3 seperti yang ditunjukkan pada gambar 1.6 berikut :
Modul Praktikum Algoritma dan Pemrograman 2

3) Menulis Program
1) Buka editor Turbo C, lalu Klik menu File – New.
2) Simpan program dengan menekan File – Save As.. Ganti NONAME00.CPP
dengan MODUL.c lalu KlikOK
3) Kemudian ketik kode program berikut :

Contoh program 1.0 modul.c


#include <stdio.h>

int main() {
clrscr();
printf("Selamat Belajar Pemrograman C\n");

getch();
return 0;
}

4) Kompilasilah program tersebut, pilih menu Compile – Compileatau dengan


shortcutALT + F9.

Designed by Armansyah, M.Kom Page9


5) Jalankan program, Klik menu Run – Run (CTRL+F9).
6) Hasil progam seperti pada gambar berikut :

1.5 LATIHAN
Latihan (1)
1. Buka program baru, File – New
2. Ganti file NONAME00.CPP terlebih dahulu dengan nama test11.c
3. Selanjutnya tulis program berikut :

Latihan program 1.1 test11.c


#include <stdio.h>

int main() {
clrscr();
printf("Selamat\nBelajar\n\"Pemrograman C\"\n");
printf("Mahasiswa\nIlmu Komputer\'UINSU\'");

getch();
return 0;
}

4. Kompilasilah program, Compile – Compile (ALT + F9)


5. Jalankan program dengan Run – Run (CTRL + F9)
Modul Praktikum Algoritma dan Pemrograman 2

6. Tuliskanlah hasil program tersebut pada kotak dibawah ini. Berikan pula
paragraf kesimpulannya

Latihan (2)
1. Buka program baru, pilih File – New
2. Simpan program,KlikFile – Save As.. lalu ganti NONAME00.CPP dengan
test12.c , KlikOK
3. Selanjutnya tulis program berikut :

Latihan program 1.2 test12.c


#include <stdio.h>
int main()
{
char huruf = 'A';
char kata[20] = "Computer Science";
float bilangan_float = 10.234;
double bilangan_double = 20.123456;
int bilangan = 150;
printf("Ini adalah huruf%c\n", huruf);
printf("Ini adalah string%s\n" , kata);
printf("Ini tipe data float%f\n", bilangan float);
printf("Ini bilangan tipe double%lf\n",
bilangan_double);
printf("Ini bilangan tipe data integer%d\n" ,
bilangan);
printf("Bilangan bertipe oktal%o\n", bilangan);
printf("Bilangan bertipe hexadesimal%x \n",
bilangan);
return 0;
}

Designed by Armansyah, M.Kom Page11


4. Kompilasi dan jalankan program diatas. Perbaikilah jika muncul pesan error,
cek kembali kode program yang kamu tulis. Eksplorasi berbagai sumber
tentang variabel jika terjadi kesalahan program. Catat kesimpulan program
yang dihasil ke dalam kota yang tersedia.
Modul Praktikum Algoritma dan Pemrograman 2

MODUL 2
VARIABEL DAN TIPEDATA

2.1 KOMPETENSI PRODI. ILMU KOMPUTER


1) Mampu merancang suatu aplikasi sistem informasi menggunakan bahasa
pemrograman tertentu
2) Mampu menjadi sistem analisis teknologi informasi
3) Mampu menerapkan komponen sistem komputer dan basisdata untuk
merancang sistem terdistribusi
4) Mampu menjadi administrator jaringan komputer, konsultan bidang teknologi
informasi, dan tenaga pengajar bidang teknologi informasi
5) Mampu menerapkan teknologi informasi dan metode komputasi yang sesuai
dengan perkembangan
6) Mampu menerapkan praktik penelitian dalam berbagai bidang dan
melanjutkan jenjang pendidikan yang lebih tinggi

2.2 TUJUAN PRAKTIKUM


Setelah mengikuti praktikum pada modul 2 ini, mahasiswa diharapkan mampu
dalam beberapa kompetensi pokok diantaranya :
1. Mampu menjelasakan konsep dasar variabel dan tipedata dalam bahasa C
2. Mahir menggunakan variabel dan tipedata untuk merancang program
sederhana dengan bahasa C
3. Mahir dalammendeklarasikan variabel dan tipedate C pada suatu
permasalahan program
4. Mampu mengidentifikasi penggunaan variabel dan tipedata pada berbagai
studi kasus pemrograman C

2.3 TEORI SINGKAT


A. Variabel
Variabel tidak lain adalah nama yang diberikan ke area penyimpanan yang dapat
dimanipulasi oleh program. Setiap variabel dalam C memiliki tipe tertentu, yang
menentukan ukuran dan tata letak memori variabel, kisaran nilai yang dapat
disimpan di dalam memori tersebut, dan serangkaian operasi yang dapat diterapkan
ke variabel. Nilai suatu variabe bersifat tidak tetap (tidak permanen), selalu berubah
suatu waktu sepanjang penggunaanya. Ketika variabel tersebut diterapkan pada
waktu dan proses berikutnya, nilai variabel menjadi berubah.
Nama Variabel ditulis dengan format yang benar agar dapat dibaca oleh
kompiler. Ada beberapa aturan yang baku dalam penulisan variabe seperti :
1. Variabel ditulis menggunakan karakter diawal, penggunaan angka diawal
kata tidak akan dibaca oleh kompiler

Designed by Armansyah, M.Kom Page13


2. Huruf kapital dan huruf kecil dibedakan, sehingga direkomendasikan
menggunakan huruf kapital saja atau huruf kecil saja
3. Jik terdiri dari dua suku kata, gunakan garis bawah (underscore) diantara
keduanya atau tidak menggunakannya juga dibenarkan
4. Tidak dibenarkan menggunakan spasi (jarak) pada variabel yang terdiri
dua suku kata atau lebih
5. Boleh menggunakan angka, tetapi sebaiknya letakkan angka karakter
pertama
6. Tidak dibenarkan menggunakan simbol-simbol khusus, seperti +, -, /, &, ,
%, #, @, =, ^, !, ~, dan simbol-simbol khusus lainnya
7. Penulisan variabel diikuti oleh tipe data yang dimiliki oleh C
8. Tidak dibolehkan menggunakan variabel dengan istilah-istilah yang sudah
dikenali sebagai keyword milik C.

Dengan mengikuti aturan penulisan variabel diatas, maka perhatikan contoh


penulisan variabel yang benarpada tabel berikut :

NAMA VARIABEL KEABASAHAN


Segi_tiga Benar
Segitiga Benar
Segi_3 Benar
Segi tiga Salah
3segi Salah
SEGITIGA Benar
Segitiga Benar
Kode932 Benar
$kode, atau %kode Salah

Penulisan variabel selalu diikuti oleh tipeda, karena variabel merupakan


komponen yang mendasari kompiler melakukan suatu tindakan pembacaan dan
pemrosesan. Apakah tindakan yang tidak mengandung perhitungan atau juster
mengantung perhitungan matematika. Penulisan variabel tipedata mengacu pada
format standar yang diberlakukan pada bahasa pemrograman C. Format penulisan
variabel dan tipedata dalam C mengikuti struktur berikut :

Struktur tipedata nama_variabel;

int bilangan;
contoh float luas;
double total_gaji;
Modul Praktikum Algoritma dan Pemrograman 2

Atau boleh juga dengan, misalnya memberikan nilai terhadap variabel. Dengan
menggunakan struktur berikut :

Struktur tipedata nama_variabel = nilai;

int bilangan = 67;


Contoh float luas = 5.89;
double total_gaji=15000;

B. Tipe Data
Tipe data dalam c mengacu pada sistem ekstensif (format, sifat, ukuran, bentuk)
yang digunakan untuk mendeklarasikan variabel atau fungsi dari berbagai jenis. Jenis
Tipe data suatu variabel menentukan berapa banyak ruang yang ditempati dalam
penyimpanan dan bagaimana pola bit yang disimpan diinterpretasikan. Setiap tipe
data memiliki ukuran daya (kemampuan) menyimpan suatu data yang berbeda.
Jenis tipedata pada C dapat diklasifikasikan menjadi beberapa tipe data yaitu :
1) Tipe Dasar ; Yang merupakan tipe aritmatika dan diklasifikasikan lebih lanjut
menjadi: (a) tipe bilangan bulat integer dan (b) tipe floating-point.
2) Tipe Enumerated; Yang juga merupakan jenis aritmatika yang dapat menetapkan
nilai integer diskrit tertentu di seluruh program.
3) Tipe Void ; Yakni jenis tipe yang mengindikasikan bahwa tidak memiliki nilai.
4) Tipe bentukan atau disebut juga tipe turunan yang diantaranya terdiri dari : (a)
Tipe Pointer, (b) Tipe Array, (c) Tipe struktur, (d) Tipe Union (Gabungan) dan (e)
Tipe Fungsi.

Tipedata bilangan bulat integer digunakan untuk operasi-operasi bilangan


yang tidak memiliki pecahan berkoma. Secara lengkap, tipedata bilangan bulat
standar ditampilkan pada tabel berikut ini :

TIPEDATA UKURAN MEMORI VALUE RANGE


char 1 byte -128 - 127 atau 0 - 255
unsigned char 1 byte 0 - 255
signed char 1 byte -128 - 127
-32,768 - 32,767 atau
int 2 atau 4 bytes -2,147,483,648 - 2,147,483,647
0 - 65,535 atau
unsigned int 2 atau 4 bytes
0 - 4,294,967,295
short 2 bytes -32,768 - 32,767
unsigned
2 bytes 0 - 65,535
short
long 4 bytes -2,147,483,648 - 2,147,483,647
unsigned long 4 bytes 0 - 4,294,967,295

Designed by Armansyah, M.Kom Page15


Sedangkan untuk tipe bilangan pecahan(floating point) digunakan untuk
operasi-operasi bilangan yang memiliki pecahan titik mengambang. Secara lengkap
tipe data jenis ini disajikan dalam tabel berikut ini :

TIPE UKURAN MEMORI JANGKAUAN PRESISI


float 4 byte 1.2E-38 to 3.4E+38 6 decimal places
double 8 byte 2.3E-308 to 1.7E+308 15 decimal places
long double 10 byte 3.4E-4932 to 1.1E+4932 19 decimal places

C. Tipedata Konstan
Tipedata konstan merupakan tipe data milik suatu variabel yang nilainya tetap
dan tidak dapat diubah oleh program selama proses program berlangsung.
Pendeklarasian tipedata konstan pada bahasa C dapat dilakukan dengan dua format
dasar, yaitu dengan menggunakan format penulisan yang umum, dan melalui
preprocessor. Adapun struktur penulisannya mengacu kepada struktur format
berikut :

Struktur umum : const typedata variabel = nilai_konstanta;

Atau : #define identifier nilai

Berdasarkan format penulisan variabel bertipe konstanta diatas, dapat diambil


contoh seperti berikut :

Dengan struktur umum : const floatfii = 3.14;


const char kode = „A‟;

atau #define fii 3.14


#define name “Aisyah”

D. Format Penentu
Format penentu atau format specifiers merupakan format pendukung suatu tipe
data. Setiap tipe data memiliki format yang berbeda dan nilai yang berbeda pula.
Format ini harus disertakanbila mana variabel yang dideklarasikan pada blok
pendeklarasian digunakan kembali (dipanggil) pada suatu baris. Jika tidak
disertakan, maka ini bisa menimbulkan error atau tidak menampilkan hasil.
Penggunaan formatspecifier didahulu dengan simbul persen % dan dilanjutkan
dengan karakter formatnya. Adapun jenis-jenis format ini ditampilkan pada tabel
berikut :
Modul Praktikum Algoritma dan Pemrograman 2

FORMAT SPECIFIER DIGUNAKAN UNTUK TIPEDATA


%d Integer
%f Float
%c Karacter
%s String
%u Unsigned Integer
%ld Long Intetger
%lf Double
%Lf Long Double

Disamping format yang ditampilkan pada tabel diatas, masih terdapat format
lain sesuai dengan jenis tipenya. Beberapa tipe ada pula yang memiliki lebih dari satu
format lain namun dapat diterapkan untuk tipe yang sama.

E. Karakter
Bahasa C mendukung pencetakan data karakter khusus untuk mengganti fungsi-
fungsi tertentu, seperti tabulasi, enter, mundur, maju, dan lain sebagainya yang
ditangani dengan format standar. Adapun format yang dimaksud dapat dilihat pada
tabel berikut :

KARAKTER
PENGGUNAAN
KHUSUS
\a Untuk bunyi bell (alert)
\b Mundur satu spasi (backspace)
\f Pindah halaman (form feed)
\n Pindah baris baru (new line)
Menuju ke kolom pertama, baris yang sama
\r
(carriagereturn)
\v Tabulasi vertikal
\t Tabulasi horizontal
\0 Nilai kosong (null)
\' Kutip tunggal
\" Kutip ganda
\\ Karakter garis miring (backslash)

2.4 KEGIATAN PRAKTIKUM


A. Menggunakan Variabel dan Tipedata
1. Bukalah Program Turbo C++, lalu ketik kode program dibawah ini :

Test program 2.0test20.c


#include <stdio.h>

int main() {

Designed by Armansyah, M.Kom Page17


int a= 67;
float b=67;
char c='A';

clrscr();
printf("Nilai a dalam integer adalah %d\n", a);
printf("Nilai b dalam float adalah %f\n", b);
printf("Nilai c dalam char adalah %c\n", c);

getch();
return 0;
}

2. Simpan program, KlikFile – Save As..ganti NONAME00.CPP dengan test20.c


3. Selanjutnya kompilasi program, KlikCompile – Compile (ALT + F9)
Perhatikan hasil kompilasi program test20.c tersebut, jika kolom error
menampilkan jumlah tertentu, ceklah kembali kode program kamu atau mintalah
bantuan teman disebelah. Jika mereka belum juga selesai, mintalah bantuan dari
pembimbing atau instruktur.
4. Jika kompilasi berhasil sukses, jalankan program, KlikRun – Run (CTRL + F9)
keluar program kurang lebih akan seperti pada gambar berikut :

2.5 LATIHAN
Untuk meningkatkan pemahaman Bahasa C, secara khusus penggunaan variabel
dan tipedatanya, kerjakan latihan-latihan berikut. Ikuti langkah demi langkah
panduan yang diberikan.

Latihan (1)
1) Buka program baru, pilih menu File – New
2) Simpan terlebih dahulu file program untuk menghindari hal-hal yang tak
diinginkan. Pilih File – Save (F2) – ganti NONAME00.CPP menjadi var21.c,
Ok atau Enter untuk memulai menulis kode program.
3) Selanjutnya tulis kode program berikut

Latihan program 2.1var21.c


#include <stdio.h>
#include <string.h>
Modul Praktikum Algoritma dan Pemrograman 2

int main() {
char nama1[7] ="Aisyah";
char nama2[10] ="Ramadhani";
float nilai_akhir;

clrscr();
strcat(nama1 ,nama2);
printf("Nama kamu adalah %s\n", nama1);
printf("Input value here : ");
scanf("%f", &nilai_akhir);
printf("Ok, %s, nilai anda adalah %4.2f\n",
nama1,nilai_akhir);

getch();
return 0;
}

4. Compile program terebut, pilih menu Compile – Compile jika sukses,


lanjutkan dengan mengeksekusinya, pilih menu Run – Run. Perhatikan hasil
program, tuliskan hasil keluarannya pada kotak yang tersedia, tambahkan
beberapa komentar yang menurut kamu perlu untuk menjadi perhatian.

Latihan (2)
1. Buka program baru, klik menu File – New
2. Simpan terlebih dahulu file program untuk menghindari hal-hal yang tak
diinginkan. Pilih File – Save (F2) – ganti nama file menjadi var22.c. Klik Ok
atau Enter untuk memulai menulis kode program.
3. Selanjutnya tulis program berikut Latihan program 2.2 var22.c

Latihan program 2.2var22.c


#include <stdio.h>
#include <string.h>

Designed by Armansyah, M.Kom Page19


int main() {
int bilangan;
unsigned char kar;

clrscr();
printf("Input karakter : "); scanf("%c", &kar);

bilangan = kar;
printf("Huruf %c direpresentasikan dengan bilangan
%d di komputer \n", kar,bilangan);

getch();
return 0;
}

4. Kompilasilah program diatas, Klik menu Compile – Compile - OK


5. Jalankan program, klik menu Run – Run. Selanjutnya tulis hasil keluaran pada
kotak yang tersedia. Tambahkan beberapa informasinya sesuai dengan
bahasamu namun gunakan bahasa yang baik.

Latihan (3)
1. Buka program baru kembali, jangan lupa untuk menyimpan program terlebih
dahulu
2. Simpan program dengan nama var23.c
3. Tulis (ketik) program berikut

Latihan program 2.3 var23.c


#include <stdio.h>
#include <string.h>

int main() {
const float persen = 0.025;
const double penghasilan =2950000;
Modul Praktikum Algoritma dan Pemrograman 2

float zakat;

clrscr();
zakat = penghasilan * persen;
printf("Total zakat penghasilan keluarga Rakhmat
adalah %lf perbulan \n", zakat);
printf("\nTotal zakat setelah dibulatkan %4.2lf per
bulan", zakat);
getch();
return 0;
}

4. Kompilasilah program diatas, lalu eksekusi (Run). Selanjutnya tulis


kesimpulannya pada kotak tersedia.

2.5 TUGAS MANDIRI


Untuk meningkatkan pemahaman praktik penggunaan variabel dan tipedata
C,kerjakanlahstudi kasus berikut. Sampaikan hasil program kepada pembimbing atau
instruktur di lab. Silahkan diskusikan hal-hal yang mungkin tidak dipahami kepada
teman sekalas, atau dapat mengeksplorasi temuan melalui internet, atau diskusikan
kepada pembimbing.
1. Buatlah program untuk menampilkan biodata mahasiswa yang terdiri dari
nim, nama, nilai tugas, nilai kuis, nilai partisipasi, nilai ujian tengah semester,
nilai ujian akhir semerter, dan tampilkan berapa nilai akhir mahasiswa
tersebut jika menggunakan formulasi yang sesuai dengan kampus kamu
2. Buatlah program untuk menampilkan kode ASCII berdasarkan nama
panggilan kamu
3. Tulis program berikut(program tugas21.c, dan tugas22.c), kompilasi dan
eksekusilah. Identifikasilah permasalahan yang terjadi. Tuliskan kesimpulan
program tersebut dalam bentuk paper laporan praktikum.

Designed by Armansyah, M.Kom Page21


Program tugas21.c
#include<stdio.h>

void pengenalan_fungsi();

int main()
{
int x = 22, y = 44;

clrscr();
printf("\nNilai : x = %d dany = %d", h, k);
getch();

return 0;
}

void pengenalan_fungsi()
{
int a = 50, b = 80;
printf("\nNilai : a = %d dan b = %d", a, b);
}

Program tugas22.c
#include<stdio.h>
void t pengenalan_fungsi();
int x = 22, y = 44;
int i = 50, j = 80;

int main()
{
clrscr();
printf("Semua variabel diakses dari fungsi utama");
printf("\nNilai: x=%d, y=%d, i=%d, j=%d", x,y,i,j);

getch();
return 0;
}

void pengenalan_fungsi()
{
printf("\nSemua variabel diakses dari \"
pengenalan_fungsi\"");
printf("\nNilai: x=%d, y=%d, i=%d, j=%d", X, y, I,J);
}
Modul Praktikum Algoritma dan Pemrograman 2

MODUL 3
OPERATOR C

3.1 KOMPETENSI PRODI. ILMU KOMPUTER


1) Mampu merancang suatu aplikasi sistem informasi menggunakan bahasa
pemrograman tertentu
2) Mampu menjadi sistem analisis teknologi informasi
3) Mampu menerapkan komponen sistem komputer dan basisdata untuk
merancang sistem terdistribusi
4) Mampu menjadi administrator jaringan komputer, konsultan bidang teknologi
informasi
5) Mampu menerapkan teknologi informasi dan metode komputasi yang sesuai
dengan perkembangan
6) Mampu menerapkan praktik penelitian dalam berbagai bidang dan
melanjutkan jenjang pendidikan yang lebih tinggi

3.2 TUJUAN PRAKTIKUM


Setelah mengikuti praktikum pada modul 3 ini, mahasiswa diharapkan mampu
dalam beberapa kompetensi pokok diantaranya :
1. Mampu menjelaskan konsep dasar operator dalam pemrograman
2. Mampu menguraikan klasifikasi operator bahasa C dan menjelaskan fungsinya
pada penulisan program
3. Mampu mengidentifikasi kebutuhan operator C dalam permasalahan program
4. Mahir menggunakan operator aritmatika, penugasan, relasi, logika dan
operator lainnya dalam program berbahasa C, dan bahasa turunannya.

3.3 TEORI SINGKAT


Operator merupakan simbol-simbol yang digunakan untuk menjalankan operasi-
operasi matematis, operasi logika dan operasi-operasi lainnya. Operator membantu
menghubungkan antara satu variabel dengan variabel lain, atau mengoperasikan
variabel tunggal. Ada berbagai macam operator dalam pemrograman. Pada
pemrograman C, terdapat beberapa jenis operator, seperti operator aritmatika,
operator penugasan, relasi, logika, bitwise, operator kondisional (ternary), operator
penambahan dan pengurangan, dan operator spesial.

A. Operator Aritmatika
Merupakan operator yang digunakan untuk operasi matematis, seperti
penambahan, pengurangan, perkalian dan lain sebagainya. Perhatikan klasifikasinya
pada tabel berikut :

Designed by Armansyah, M.Kom Page23


OPERATOR OPERASI CONTOH
+ Penambahan X + Y
- Pengurangan X – y
* Perkalian X * Y
/ Pembagian X / Y
% Sisa bagi (Modulus) X % Y

B. Operator Relasi
Merupakan operator yang digunakan untuk membandingkan nilai yang dimiliki
oleh dua variabel yang berbeda. Berikut ini adalah beberapa operator relasi dalam
bahasa C, yang diuraikan pada tabel dibawah ini :

OPERATOR CONTOH KETERANGAN


> A > B A lebih besar dari B
< A < B A lebih kecil dari B
>= A>=B A lebih besar atau sama dengan B
<= A<=B A lebih kecil atau sama dengan B
== A==B A sama dengan B
!= A!=B A tidak sama dengan B

C. Operator Penugasan
Merupakan operator yang digunakan untuk memberikan nilai atau tindakan
operasi kepada suatu variabel. Misal, 5 adalah nilai yang diberikan kepada variabel x.
Maka x = 5. Dalam bahasa C, operator penugasan terdiri dari operator penugasan
sederhana, dan penugasan majemuk (gabungan). Penjelasan jenis operator
penugasan, dapat dilihat pada tabel berikut :

OPERATOR CONTOH KETERANGAN


Operator penugasan sederhana
= x=5 Memberikan nilai 5 kepada variable x
Operator penugasan gabungan
+= x+=5 Melakukan operasi x = x +5
-= x-=5 Melakukan operasi x = x -5
*= x*=5 Melakukan operasi x = x *5
/= x/=5 Melakukan operasi x = x /5
%= x%=5 Melakukan operasi x = x %5
&= x&=5 Melakukan operasi x = x &5
^= x^=5 Melakukan operasi x = x ^5
Modul Praktikum Algoritma dan Pemrograman 2

D. Operator Logika
Merupakan operator yang digunakan untuk menjalankan operasi logika pada
ekspresi perintah yang diberikan. Operator logika selalu menghasilnya keluaran
benar (true)atau salah(false). Operator logika dapat berupa operator yang dijelaskan
pada tabel dibawah ini :

OPERATOR ARTI CONTOH KETERANGAN


&& AND (a>1) && (b<1) Akan bernilai benar jika kondisi
(a>1) dan (b<10) adalah benar
|| OR (a>=1) || (b>=1) Akan bernilai benar jika salah
satunya bernilai benar
! NOT ! ((a>1) && (b<1)) Jika ! ((a>1) && (b<1)) bernilai
benar, maka operator ! akan
membalikkan nilai menjadi
salah (false)

E. Operator Bit wise


Merupakan operator yang digunakan untuk menjalankan operasi bit. Nilai
desimal diubah menjadi nilai biner yang merupakan urutan bit. Operator Bit Wise
pada Bahasa C terdisi dari operasi & (AND), | (OR), ~ (NOT), ^ (XOR), << (Shift kiri),
dan >> (Shift kanan).

X Y X|Y X&Y X^Y


0 0 0 0 0
0 1 1 0 1
1 0 1 0 1
1 1 1 1 0

F. Operator Kondisional (Ternary)


Merupakan operator yang berfungsi membalikkan satu nilai jika kondisi bernilai
benar, dan membalikkan nilai yang lain ketika kondisi bernilai salah. Operator ini
dilambangkan dalam bentuk simbol tanda Tanya (?). Penggunaan operator ini
menggunakan sintaks dasarberikut :

(kondisi ? nilai_jika_kondisi_benar : nilai_jika_kondisi_salah);

Contoh :

( x == 20 ? 2 : 3); Hasilnya : 3

Designed by Armansyah, M.Kom Page25


G. Operator Pencacah
Saya menyebut dengan istilah pencacah. Karena secara fungsional operator ini
berfungsi mencacah nilai variabel dari posisi kecil ke posisi terbesar atau sebaliknya.
Pencacahan nilai meningkat satu poin ke nilai selanjutnya atau turun satu point
berikutnya. Operator ini terdiri dari operator increment (penambahan 1 poin ke nilai
yang lebih tinggi), dan operator decrement (pengurangan 1 poin ke nilai yang lebih
kecil). Perhatikan penjelasan pada table berikut :

OPERATOR SIMBOL CONTOH KETERANGAN


Increment ++x Nilai ditambahkan sebelum diberikan
(penambahan) untuk variabel x
++
x++ Nilai ditambahkan setelah nilai diberikan
kepada variabel x
Decrement --x Nilai dikurangkan sebelum diberikan
(pengurangan) kepada x
--
x-- Nilai dikurangkan setelah nilai diberikan
kepada variabel x

Misal, x = 5. Jika dioperasikan terhadapoperator increment dan decrement, maka


nilai akan menjadi seperti berikut :
 x++ atau ++x akan menghasilkan 5 6 7 8 910.
 Sebaliknya x dioperasikan dengan x-- atau –-x, maka akan menghasilkan 5 4 3
21

H. Operator Khusus
Merupakan operator yang digunakan pada Bahasa C untuk menunjukkan alamat
dari posisi file dari suatu variabel. Operator ini terdiri dari beberapa operator seperti
yang dijelaskan pada tabel berikut :

OPERATOR CONTOH KETERANGAN


* *x Digunakan untuk menunjukkan posisi variabel x
& &x Digunakan untuk menemukan alamat dari
variabel x
Sizeof() Sizeof(int) Untuk melihat ukuran file dari tipedata integer

I. Fungsi Printf() dan Scanf()


Fungsi printf()dan scanf() merupakan fungsi bawaan yang disimpan pada
pustaka Bahasa C. Kedua fungsi tersebut telah dideklarasikan pada file header
stdio.h. Karenaya, penggunaan fungsi tersebut harus menyertakan file header stdio.h
terebut. Fungsi printf() berfungsi untuk melakukan cetak data (nilai) bertipe
karakter, string, bilangan bulat, bilangan pecahan, oktal, dan nilai heksadesimal ke
perangkat keluaran standar, seperti monitor. Penggunaan fungsi printf()harus
menyertakan format penentu (format specifier) seperti%d untuk integer, %c untuk
Modul Praktikum Algoritma dan Pemrograman 2

karakter dan format lain yang sesuai dengan jenis tipe datanya. Format specifier
telah diuraikan pada modul 2 minggu lalu.
Sementara fungsi scanf()merupakan fungsi yang digunakan untuk membaca nilai
yang diinput oleh pengguna. Mekanisme kerja fungsi ini adalah pengguna menginput
nilai, selanjutnya fungsi scanf() akan membaca nilai yang diinput tersebut untuk
ditempatkan pada memori untuk suatu variabel. Jika nilai yang diinput tidak sesuai
dengan tipe data yang dikenalkan pada bagian deklarasi, kompilasi akan memberikan
pesan error ketika proses kompilasi dilakukan. Fungsi scanf() ini selalu
berkonsolidasi dengan fungsi prinf().Contoh fungsi printf() dan scanf() dapa dilihat
pada gambar berikut :

printf(“number of x %d”, number);


scanf(“%c”, &character);

3.4 KEGIATAN PRAKTIKUM


Setelah membaca teori singkat tentang berbagai macam operator yang dimiliki
bahaca C diatas, mari kita terapkan beberapa operator pada contoh program
perhitungan sederhana berikut ini :

Contoh (1)
1. Jalankan Editor Program Turbo C, lalu buka program baru, klik File –New
2. Simpan program terlebih dahulu, klik File – Save As.., ganti NONAME00.CPP
menjadi opr30.c
3. Selanjutnya tulis program berikut pada editor turbo C.

Contoh program 3.0opr30.c


#include <stdio.h>

int main()
{
int x=60,y=30, tambah,kurang,kali,bagi,sisa_bagi;

clrscr();
tambah = x+y;
kurang = x-y;
kali = x*y;
bagi = x/y;
sisa_bagi = x%y;
printf("Penambahan dari a dan b adalah : %d\n",
tambah);
printf("Pengurangan dari a dan b adalah : %d\n",

Designed by Armansyah, M.Kom Page27


kurang);
printf("Perkalian antara a dan b adalah : %d\n",
kali);
printf("Pembagian antara a dan b adalah : %d\n",
bagi);
printf("Modulus dari a dan b adalah : %d\n",
sisa_bagi);
getch();

return 0;
}

4. Simpan perubahan program tersebut, klik File – Save (F2)


5. Kompilasilah program, klikCompile – Compile (ALT + F9).
6. Jika kompilasi berhasil sukses, jalankan program. KlikRun – Run (CTRL + F9).
Keluaran program kurang lebih akan seperti pada gambar berikut :

3.5 LATIHAN
Untuk meningkatkan kompetensi supaya tercapainya target pembelajaran, mari
kita terapkan beberapa latihan berikut, lakukan langkah demi langkah panduan yang
diberikan pada latihan program tersebut :

Latihan (1)
1) Buka program baru, pilih menu File – New
2) Simpan terlebih dahulu program untuk menghindari hal-hal yang tidak
diinginkan. KlikFile – Save (F2) – ganti NONAME00.CPP menjadi opr31.c, Ok
atau Enter untuk memulai menulis kode program.
3) Selanjutnya tulis kode program berikut

Latihan program 3.1opr31.c


#include <stdio.h>

int main()
{
int a,b, tambah, kurang, kali, bagi, sisa_bagi;
Modul Praktikum Algoritma dan Pemrograman 2

clrscr();
printf("Input bilangan a : "); scanf("%d", &a);
printf("Input bilangan b : "); scanf("%d", &b);
tambah = a+b;
kurang = a-b;
kali = a*b;
bagi = a/b;
sisa_bagi = a%b;
printf("Penambahan dari a dan b adalah : %d\n",
tambah);
printf("Pengurangan dari a dan b adalah : %d\n",
kurang);
printf("Perkalian dari a dan b adalah : %d\n",
kali);
printf("Pembagian dari a dan b adalah : %d\n",
bagi);
printf("Modulus dari a dan b adalah : %d\n",
sisa_bagi);
getch();

return 0;
}

5. Simpan perubahan program, klik File – Save (F2)


6. Kompilasi program terebut, klik menu Compile – Compile – OK (Enter)
7. Jalankan program klik Run – Run.
8. Perhatikan hasil program, tuliskan hasil keluarannya pada kotak yang
tersedia, tambahkan beberapa kesimpulan sesuai dengan analisamu.

Latihan (2)
1. Buka program baru kembali, klik menu File – New
2. Ganti file, KlikFile – Save (F2) – ganti NONAME00.CPPmenjadi opr32.c.
3. KlikOk atau Enter untuk memulai menulis kode program.
4. Selanjutnya tulis program berikut Latihan program 2.2 opr32.c

Designed by Armansyah, M.Kom Page29


Latihan Program 3.2 opr32.c
#include <stdio.h>

int main()
{
char nama[20], kursus[20];
float praktek, teori, total_nilai;

clrscr();
printf("Input Nama : "); scanf("%s", &nama);
printf("Input Kursus : "); scanf("%s", &kursus);
printf("Input Nilai praktek : "); scanf("%f",
&praktek);
printf("Input nilai teori : "); scanf("%f", &teori);
total_nilai = (praktek + teori)/2;
printf("Total nilai %s adalah %4.2f", nama,
total_nilai);
getch();
return 0;
}

5. Kompilasilah program diatas, klik menu Compile – Compile – OK


6. Jalankan program, klik menu Run – Run.
7. Selanjutnya tulis hasil keluaran pada kotak yang tersedia. Tambahkan
beberapa informasinya sesuai dengan bahasamu namun gunakan bahasa yang
baik.

Latihan (3)
1. Buka program baru, klik File – New
2. Simpan program, klik File – Save (F2), ganti NONAME00.CPP dengan opr33.c
3. Tulis (ketik) program berikut ke kotak editor
Modul Praktikum Algoritma dan Pemrograman 2

Latihan program 3.3 opr33.c


#include <stdio.h>

int main() {
int i, bilangan;

clrscr();
printf("Input bilangan : "); scanf(nomor);
if(bilangan>0 && bilangan<=bilangan) {
for(i=0; i<bilangan; i++) {
printf("Nilai i adalah %d\n", i);
}
}

getch();
return 0;
}

4. Simpan perubahan program, klik File – Save (F2)


5. Kompilasilah program diatas, klik Compile – Compile – OK
6. Jalankan program, klik menu Run – Run
7. Amatilah setiap keluaran program untuk meningkatkan pemahaman

Latihan (4)
1. Buka program baru kembali, klik menu File – New
2. Ganti file, KlikFile – Save (F2) – ganti NONAME00.CPPmenjadi opr34.c.
3. KlikOk atau Enter untuk memulai menulis kode program.
4. Selanjutnya tulis program berikut Latihan program 2.2 opr34.c

Designed by Armansyah, M.Kom Page31


Latihan program 3.3 opr34.c
#include <stdio.h>

int main()
{
int x = 5;
int Total = 13;
clrscr();
printf("Nilai Total = %d \n", Total += x );
printf("Nilai Total= %d \n", total -= x );
printf("Nilai Total = %d \n", Total *= x );
printf("Nilai Total= %d \n", total /= x );
printf("Nilai Total = %d \n", Total %= x );
getch();

return 0;
}

5. Simpan perubahan program, klik File – Save (F2)


6. Kompilasilah program diatas, klik Compile – Compile – OK
7. Analisa kesalahan yang terjadi, dan perbaiki, lalu kompilasi kembali untuk
melihat apakah program sudah benar (sukses)
8. Jalankan program, klik menu Run – Run

3.6 TUGAS MANDIRI


Kerjakanlah studi kasus berikut untuk meningkatkan pemahaman praktik
penggunaan operator C. Kerjakanlah program berikut, selanjutnya kumpulkan
kepada pembimbing dalam bentuk laporan praktikum. Adapun format laporan
mengacu pada format berikut :
1. Di-tik dengan dokumen word dan dicetak menggunakan kertas A4
2. Margin kiri dan atas 3 cm, kanan dan bawah 2.54 cm
3. Ukuran font 12 point Time New Roman, dengan judul cetak tebal (bold)
4. Spasi antar baris 1.15 atau 1.5, menggunakan nomor halamancenter
5. Setiap gambar atau tabel menggunakan nomor keterangan
6. Isi laporan terdiri dari :
a. Pendahuluan, yang berisi tentang : pengantar tulisan, tujuan penulisan,
metode penulisan (langkah-langkah penulisan), judul penulisan
b. Pembahasan, yang berisi tentang : landasan teori (yang berkaitan
dengan studi kasus program), penjelasan algoritma dan hasil program
c. Penutup, yang berisi tentang kesimpulan
Modul Praktikum Algoritma dan Pemrograman 2

d. Pustaka tentang landasan teori yang diambil, wajib menggunakan


buku, modul, ebook, atau boleh juga situs kepakaran (seperti situs
asosiasi pakar bidang yang terkait)
7. Adapun narasi program (algoritma program) :
a. Input bilangan tertentu (bebas)
b. Program menampilkan aplikasi perhitungan Luas Segitiga
i. Input alas, input tinggi
ii. Program akan menghitung
iii. Tampil luas segitiga
c. Program menampilkan aplikasi perhitungan Luas Volume Bola
i. Input jari-jari
ii. Program akan menghitung
iii. Tampil volume bola
d. Program menampilkan aplikasi perhitungan Luas Lingkaran
i. Input jari-jari
ii. Program akan mengitung
iii. Tampil luas lingkaran
e. Program berakhir

Tugas mandiri opr35.c


#include <stdio.h>

int main() {
int i=2, bilangan;
float sgtiga, alas, tinggi;
float volume, jejari, lingkaran;
/* Data berdasarkan wikipedia */
const float PHI =
3.14159265358979323846264338327950288419716939937510;

clrscr();
printf("Input bilangan : "); scanf("%d", &bilangan);

while(i!=bilangan) {
if (i>0) {
printf("\Input alas : ");
scanf("%f", &alas);
printf("Input tinggi : ");
scanf("%f", &tinggi);
sgtiga = 0.5 * alas * tinggi;
printf("Luas segitiga adalah %4.2f\n\n",
sgtiga);
}

Designed by Armansyah, M.Kom Page33


if(i==2 || i!=3)
{
printf("Input jari-jari : ");
scanf("%f", &jejari);
volume = (4.0 / 3.0) * PHI * (jejari *
jejari * jejari);
printf("Volume bola %4.2f\n\n", volume);
}
if(i<bilangan)
{
printf("Input jari-jari : ");
scanf("%f", &jejari);
lingkaran = PHI * jejari * jejari;
printf("Luas lingkaran adalah %4.2f\n\n",
lingkaran);
}
if(i==bilangan){
printf("Nilai adalah %d\nBerhenti
menghitung!\n",i);
}
}
getch();

return 0;
}
Modul Praktikum Algoritma dan Pemrograman 2

MODUL 4
STRUKTUR KEPUTUSAN

4.1 KOMPETENSI PRODI. ILMU KOMPUTER


1) Mampu merancang suatu aplikasi sistem informasi menggunakan bahasa
pemrograman tertentu
2) Mampu menjadi sistem analisis teknologi informasi
3) Mampu menerapkan komponen sistem komputer dan basisdata untuk
merancang sistem terdistribusi
4) Mampu menjadi administrator jaringan komputer, konsultan bidang teknologi
informasi, dan tenaga pengajar bidang teknologi informasi
5) Mampu menerapkan teknologi informasi dan metode komputasi yang sesuai
dengan perkembangan
6) Mampu menerapkan praktik penelitian dalam berbagai bidang dan
melanjutkan jenjang pendidikan yang lebih tinggi

4.2 TUJUAN PRAKTIKUM


Setelah mengikuti praktikum pada modul 4 ini, mahasiswa diharapkan mampu
dalam beberapa kompetensi pokok diantaranya :
1. Mampu menjelaskan konsep dasar struktur keputusan
2. Mampu mengidentifikasi penggunaan struktur keputusan pada suatu
permasalahan program berdasarkan kasus ketersediaan datanya
3. Mampu menggunakan struktur keputusan dengan IF statement
4. Mampu menggunakan struktur keputusan dengan switch statement

4.3 TEORI SINGKAT


Struktur keputusan, atau yang umum disebut dengan seleksi atau pemilihan, atau
ada juga yang menyebut dengan istilah percabangan, merupakan struktur dimana
penyeleksian satu ekspresi atau perintah (statement) berdasarkan kondisi tertentu.
Artinya suatu ekspresi hanya akan dijalankan jika memenuhi syarat pada pengujian
kondisi. Secara umum struktur ini dibagi dalam dua model, If Statement dan switch
statement.

A. IF Statement
Merupakan struktur pilihan yang terdiri dari ekspresi boolean yang diikuti oleh
satu atau lebih statement. Ekspresi boolean selalu bernilai benar atau salah sebagai
syarat terpilihnya suatu keputusan yang akan diambil. Statement yang dipilih harus
memenuhi persyaratan yang ditentukan berdasarkan kebutuhan. Sruktur keputusan
untuk model ini menggunakan struktur dasar sebagai berikut :

Designed by Armansyah, M.Kom Page35


if(boolean_expression) {
statement;
...
}

Struktur dasar keputusan diatas dapat diartikan dengan melihat bagan alur
berikut ini :

Dimana jika nilai suatu variabel memenuhi syarat pada conditionmaka statement
akan dikerjakan dan jika tidak memenuhi syarat, maka statement akan diabaikan.
Dengan kata lain, struktur If Statement merupakan struktur dengan opsi tunggal.
Sehingga jika kondisi variabel tidak terpenuhi pada nilai benar, maka statement
diabaikan.

B. Else .. Statement
Jika dilihat dari struktur dasarnya, struktur keputusan else..statement ini
merupakan struktur dengan dua pilihan yang menanti untuk dijalankan. Statement
akan dijalankan berdasarkan kondisinya. Perhatikan struktur dasar keputusan else ..
statement berikut ini :

if(boolean_expression) {
statement_one;
} else {
Statement_n;
}
Modul Praktikum Algoritma dan Pemrograman 2

Statement_one dijalankan hanya jika kondisi pada boolean_expression bernilai


benar, sebaliknya statemen tidak akan dijalankan jika kondisi pada
boolean_expression bernilai salah. Struktur dasar else..statement diatas, dapat
diamati melalui bagan alur berikut :

C. Else If Ladder
Struktur keputusan ini merupakan pengembangan dari struktur else …
statement. Dalambeberapa referensi struktur ini disebut juga dengan nama if
mejemuk. Dimana ada banyak opsi dengan syarat kondisi yang berbeda. Setiap opsi
statement yang akan dijalankan bergantung kepada syarak kondisinya masing-
masing. Untuk lebih mudah memahaminya, perhatikan bagan alur berikut :

Designed by Armansyah, M.Kom Page37


Mengacu kepada bagan alir diatas, struktur keputusan Else if ladder dapat
dituliskan seperti pada struktur dasar berikut :

if(condition_expression_One) {
statement1;
} else if (condition_expression_Two) {
statement2;
} else if (condition_expression_Three) {
statement3;
} else {
statement4;
}

Struktur keputusan else if ladder diatas, dapat diartikan seperti berikut :


1. Jika condition_expression_one bernilai benar, maka statement1 yang akan
dikerjakan, tetapi jika tidak memenuhi syarat kebenaran, kondisi dikatakan
salah, dan pengujian akan menuju ke else if (condition_expression_two)
2. Jika condition_expression_two bernilai benar, maka statement2 yang akan
dijalankan, tetapi jika condition_expression_two bernilai salah, maka pengujian
akan ke condition_expression_three.
3. Jika condition_expression_three bernilai benar, maka statement3 yang akan
dijalankan, tetapi jika condition_expression_three bernilai salah, maka statemen4
yang akan dikerjakan dan pengujian akan .

D. Nested If
Ada kalanya struktur keputusan mengandung struktur keputusan lain
didalamnya. Kasus seperti ini disebut dengan nested if. Dimana ada struktur if dalam
struktur if. Ini disebut juga dengan struktur if bersarang, dimana struktur if di
dalamnya merupakan anak dari struktur if yang berada pada posisi paling luar.
Struktur dasar struktur if bersarang dapat melihat struktur keputusan berikut :

if( boolean_expression 1) {
statemen_if_utama;
if(boolean_expression 2) {
statement_if_within_if;
}
}
Modul Praktikum Algoritma dan Pemrograman 2

E. Switch Statement
Struktur ini merupakan struktur keputusan dengan banyak opsi, dimana
keputusan untuk menjalankan ekspresi perintah didasarkan pada syarat pada
kondisi tertentu. Struktur ini hampir sama dengan struktur Else If Ladder.Hanya saja
else if ladder memiliki batasan opsi yang dapat ditangani.
Struktur dasar penulisan dengan switch (case) mengacu pada bagan alur else if
ladder diatas. Sehingga, sturktur penulisannya dapat melihat struktur berikut :

switch(expression){
case value-1:
block-1;
break;
case value-2:
block-2;
break;
case value-3:
block-3;
break;
case value-4:
block-4;
break;
default:
default-block;
break;
}

Mekanisme kerja struktur diatas dapat dilihat pada uraian berikut :


1. Jika case value_1 bernilai benar, maka block_1 yang akan dikerjakan, tetapi
jika tidak memenuhi syarat, kondisi dikatakan tidak sesuai, dan pengujian
akan menuju ke case value_2.
2. Jika case value_2 bernilai benar, maka statement pada block_2 yang akan
dijalankan, tetapi jika case value_2 tidak sesuai, maka pengujian akan ke case
value_3.
3. Jika value_3 bernilai benar, maka statement pada block_3 yang akan
dijalankan, tetapi jika kondisi bernilai salah, maka pengujian akan dilanjutkan
pada case value_4.
4. Dan jika case value_4 bernilai benar, maka statement pada block_4 yang akan
dikerjakan, tetapi jika case value_4 bernilai logika salah, maka statemen
default yang akan dijalankan.

Designed by Armansyah, M.Kom Page39


4.4 KEGIATAN PRAKTIKUM
Setelah membaca teori singkat tentang berbagai struktur keputusan bahaca C
diatas, mari kita terapkan dalam contoh berikut berikut ini :

Contoh (1)
1. Jalankan Editor Program Turbo C++, lalu buka program baru, klik File –New
2. Simpan program terlebih dahulu, klik File – Save As.., ganti NONAME00.CPP
menjadi opt40.c
3. Selanjutnya tulis program berikut pada editor turbo C++

Contoh program 4.0opt40.c


#include <stdio.h>

int main()
{
clrscr();
if ( 5 < 10 )
printf( "Lima lebih besar dari 10" );
getch();
return 0;
}

4. Simpan perubahan program tersebut, klik File – Save (F2)


5. Selanjutnyakompilasi, klikCompile – Compile (ALT + F9).
6. Jalankan program, klikRun – Run (CTRL + F9).
Keluaran program kurang lebih akan seperti pada gambar berikut :

4.5 LATIHAN
Tingkatkan kompetensi pemrogramanmu dengan meperbanyak latihan.
Kerjakanlah latihan-latihan program berikut, analisa dan perbaiki setiap
permasalahan yang ada. Laporkan hasil praktikum dalam bentuk laporan. Untuk
mempermudah praktikum, ikuti langkah-langkah praktikum dengan seksama.

Latihan (1)
1) Buka program baru, pilih menu File – New
2) Ganti nama program, klikFile – Save As..gantiopt41.c, Ok atau Enter
3) Selanjutnya tulis kode program berikut
Modul Praktikum Algoritma dan Pemrograman 2

Latihan program 4.1opt41.c


#include <stdio.h>

int main()
{
int usia;

clrscr();
printf( "Input usia Anda : " );
scanf( "%d", &usia );
if ( usia < 100 ) {
printf ("Kamu gadis muda yang cantik!\n" );
}
else if ( usia == 100 ) {
printf( "Kamu sudah tua\n" );
}
else {
printf( "Kamu sudah terlalu tua\n" ); }
getch();

return 0;
}

4. Simpan perubahan, klik File – Save (F2)


5. Kompilasi program terebut, klik menu Compile – Compile – Ok
6. Jalanakan program,klik menu Run – Run. Perhatikan hasil program, tuliskan
hasil keluarannya pada kotak yang tersedia.

Latihan (2)
1. Buka program baru, klik menu File – New
2. Simpan program, klikFile – Save As.. – ganti nama file menjadi opt42.c.
3. Selanjutnya tulis program berikut :

Designed by Armansyah, M.Kom Page41


Latihan Program 4.2 opt42.c
#include <stdio.h>

int main () {
int a = 100;
int b = 200;

clrscr();
if( a == 100 ) {
if( b == 200 ) {
printf("Nilai a adalah 100 dan b adalah 200\n" );
}
}

printf("Nilai a adalah : %d\n", a );


printf("Nilai b adalah : %d\n", b );
getch();

return 0;
}

4. Simpan perubahan, klik File – Save (F2)


5. Kompilasi program terebut, klik menu Compile – Compile – Ok
6. Jalanakan program,klik menu Run – Run.
7. Perhatikan hasil program, tuliskan hasil keluarannya pada kotak yang
tersedia.
Modul Praktikum Algoritma dan Pemrograman 2

Latihan (3)
1. Buka program baru, klik menu File – New
2. Simpan program, klikFile – Save As.. – ganti nama file menjadi opt43.c.
3. Selanjutnya tulis program berikut :

Latihan program 4.3 opt43.c


#include<stdio.h>

int main(){
int nilai;
clrscr();
printf("Masukkan nilai antara 0-100 : ");
scanf("%d", &nilai);
if(nilai>= 80 && nilai<=100){
printf("NILAI KAMU : A\n");
} else if (nilai >= 70 && nilai <= 79){
printf("NILAI KAMU : B\n");
} else if (nilai >= 60 && nilai <= 69){
printf("NILAI KAMU : C\n");
} else if(nilai >= 50 && nilai <= 59) {
printf("NILAI KAMU : D\n");
}
else {
printf("NILAI KAMU : Gagal\n");
}
getch();
return(0);
}

4. Simpan perubahan, klik File – Save (F2)


5. Kompilasi program terebut, klik menu Compile – Compile – Ok
6. Jalanakan program,klik menu Run – Run.
7. Perhatikan hasil program, tuliskan hasil keluarannya pada kotak yang
tersedia.

Designed by Armansyah, M.Kom Page43


Latihan (4)
1. Buka program baru, klik menu File – New
2. Simpan program, klikFile – Save As.. – ganti nama file menjadi opt44.c.
3. Selanjutnya tulis program berikut :

Latihan program 4.4 opt44.c


#include<stdio.h>

void main() {
int i;;

clrscr();
printf("Masukkan nilai [1-3] : ");
scanf("%d", &i);

switch(i)
{
case 1:
printf("A");
break;
case 2:
printf("B");
break;
case 3:
printf("C");
break;
default:
printf("Kamu salah menekan kuncinya");
break;
}

getch();
}

4. Simpan perubahan, klik File – Save (F2)


5. Kompilasi program terebut, klik menu Compile – Compile – Ok
6. Jalanakan program,klik menu Run – Run.
Modul Praktikum Algoritma dan Pemrograman 2

4.5 TUGAS MANDIRI


Kerjakanlah studi kasus berikut untuk meningkatkan pemahaman praktik
penggunaan struktur keputusan dalam bahasa C. Silahkan diskusikan hal-hal yang
mungkin tidak dipahami kepada teman sekelas, senior, atau dapat mengeksplorasi
temuan melalui internet, atau diskusikan kepada pembimbing.Sampaikan hasil
program kepada pembimbing atau instruktur di labkom. dalam bentuk laporan
praktikum dengan ketentuan sebagai berikut :
1. Di-tik dengan dokumen word dan dicetak menggunakan kertas A4
2. Margin kiri dan atas 3 cm, kanan dan bawah 2.54 cm
3. Ukuran font 12 point Time New Roman, dengan judul cetak tebal (bold)
4. Spasi antar baris 1.15 atau 1.5, menggunakan nomor halaman center
5. Setiap gambar atau tabel menggunakan nomor keterangan
6. Isi laporan terdiri dari :
a. Pendahuluan, yang berisi tentang : pengantar tulisan, tujuan penulisan,
metode penulisan (langkah-langkah penulisan), judul penulisan
b. Pembahasan, yang berisi tentang : landasan teori (yang berkaitan
dengan studi kasus program), penjelasan algoritma dan hasil program
c. Penutup, yang berisi tentang kesimpulan
d. Pustaka tentang landasan teori yang diambil, wajib menggunakan
buku, modul, ebook, atau boleh juga situs kepakaran (seperti situs
asosiasi pakar bidang yang terkait)
7. Studi kasus program adalah sebagai berikut :

Tugas mandiri opt45.c


#include<stdio.h>

void main()
{
int a,b,c,pilihan;

clrscr();
while(pilihan!=3)
{
printf("\n 1. Tekan 1 untuk penjumlahan");
printf("\n 2. Tekan 2 untuk pengurangan");
printf("\n Masukkan pilihan kamu: ");
scanf("%d",&pilihan);
switch(pilihan)
{
case 1:
printf("Masukkan 2 bilangan: ");
scanf("%d%d",&a,&b);

Designed by Armansyah, M.Kom Page45


c=a+b;
printf("Hasilnya %d\n",b);
break;
case 2:
printf("Masukkan 2 bilangan: ");
scanf("%d%d",&a,&b);
c=a-b;
printf("Hasinya %d\n",a);
break;
default:
printf("Kamu salah menekan kuncinya");
printf("\n Tekan sembarang tombol untuk
melanjutkan");
}
}
getch();
}
Modul Praktikum Algoritma dan Pemrograman 2

MODUL 5
PERULANGAN

5.1 KOMPETENSI PRODI. ILMU KOMPUTER


1) Mampu merancang suatu aplikasi sistem informasi menggunakan bahasa
pemrograman tertentu
2) Mampu menjadi sistem analisis teknologi informasi
3) Mampu menerapkan komponen sistem komputer dan basisdata untuk
merancang sistem terdistribusi
4) Mampu menjadi administrator jaringan komputer, konsultan bidang teknologi
informasi
5) Mampu menerapkan teknologi informasi dan metode komputasi yang sesuai
dengan perkembangan
6) Mampu menerapkan praktik penelitian dalam berbagai bidang dan
melanjutkan jenjang pendidikan yang lebih tinggi

5.2 TUJUAN PRAKTIKUM


Setelah mengikuti praktikum pada modul 1 ini, mahasiswa diharapkan mampu
dalam beberapa kompetensi pokok diantaranya :
1. Mampu menjelaskan konsep dasar perulangan dan model-modelnya dalam
bahasa C
2. Mampumengidentifikasi penggunakan perulangan dalam studi kasus
pemrograman
3. Mampu menggunakan perulangan model for, while, dan do..while dalam
permasalah program dengan bahasa C dan turunannya

5.3 TEORI SINGKAT


Dalam pemrograman perulangan selalu dijumpai terutama pada aplikasi-
aplikasi game. Perulangan merupakan struktur algoritma dimana program dalam
melakukan iterasi terhadap suatu ekspresi / statemen berdasarkan kondisi tertentu.
Dalam implementasinya perulangan menerapkan prinsip struktur keputusan, dimana
perulangan hanya akan dilakukan jika memenuhi syarat yang ditentukan. Perulangan
dalam bahasa C dibagi dalam beberapa model yaitu perulangan for, while dan
do..while.

A. Perulangan FOR
Perulangan model ini merupakan perulangan dengan jumlah iterasi yang sudah
tetap berapa kali iterasi akan dilakukan. Struktur dasar perulanga Formengacu pada
struktur berikut :

Designed by Armansyah, M.Kom Page47


for (inisialisasi; syarat; pengubah)
statement;

B. Perulangan While
Perulangan while merupakan struktur algoritma dimana perulangan akan terus
dijalankan selaman kondisi bernilai benar. Perulangan yang dimaksud disini bisa saja
berupa perulangan terhadap proses menghitung, mencetak (menampilkan) atau
justeru melakukan iterasi lain didalam perulangan tersebut. Kondisi nilai benar dan
salah adalah kondisi yang menjadi syarat bagi variabel yang menjadi kontrol
keputusan. Struktur perulangan while mengacu pada struktur berikut ini :

Inisialisasi
while(syarat_kondisi)
{
statements;
ekspresi_increment;
}

C. Do..While
Perulangan ini merupakan perulangan hampir sama dengan perulangan while.
Dimana perulangan hanya akan dilakukan selama kondisi bernilai benar. Hanya saja
pada perulanga do..while ini ekspresi dilakukan minimal satu kali. Jika kondisi benar
maka ekspresi selanjutnya akan dilakukan. Dengan kata lain perulangan do..while
mengerjakan ekspresi satu kali terlebih dahulu, kemudian melakukan pengujian
untuk membuat keputusan apakah perulangan dilakukan atau tidak.Untuk
menggunakan perulangan ini mengikuti struktur dasar sebagai berikut :

do{
.....
.....
}
while(condition);

D. Perulangan Nested
Selain ketiga model perulangan diatas perulangan bersarang atau yang disebut
dengan nested loopingjuga sering digunakan dalam pemrogramana. Perulangan
bersarang dapat terjadi pada for, while maupun do..while. Misal perulangan ini
diterapkan pada perulangan for, maka bentuk umum yang dapat digunakan adalah
seperti struktur berikut ini :
Modul Praktikum Algoritma dan Pemrograman 2

for(inisialisasi; syarat; pengubah)


{
for(inisialisasi; syarat; pengubah)
{
statement ;
}
}

5.4 KEGIATAN PRAKTIKUM


Selanjutnya mari kita terapkan struktur perulangan berikut. Semakin sering
latihan ini diterapkan maka semakin baik. Sebelum masuk pada latihan kerjalah
contoh program yang diberikan berikut :

Contoh (1)
1. Jalankanlah editor Turbo C, lalu buka program baru, klik File – New
2. Simpan terlebih dahulu untuk menghindari hal-hal yang tidak diinginkan
3. Klik File – Save As..
4. Ganti NONAME00.CPP menjadi cth50.c
5. Selanjutnya ketika program seperti berikut

Contoh program 5.0 cth50.c


#include<stdio.h>

void main( )
{
int x;
for(x = 1; x <= 10; x++)
{
printf("%d\t", x);
}
}

6. Kompilasi program, klik menu Compile – Compile – OK


7. Jalankan program, klik menu Run – Run
Jika program berjalan sukses akan menampilkan keluaran seperti berikut

Contoh (2)
1. Buka program baru, klik File – New
2. Simpan program, File – Save As..
3. Ganti program dengan nama cth51.c
4. Tik program berikut :

Designed by Armansyah, M.Kom Page49


Contoh program 5.1cth51.c
#include <stdio.h>

int main () {
int a = 10;

clrscr();
while( a < 20 ) {
printf("Nilai a adalah : %d\n ", a);
a++;
}
getch();
return 0;
}

5. Kompilasilah program tersebut, klik Compile – Compile – OK


6. Jika sukses, jalankan program. Klik Run – Run
Jika program berhasil, akan menampilkan keluaran berikut

5.5 LATIHAN
Berikut ini diberikan beberapa latihan program, lakukanlah tahap demi tahap.
Ikuti panduan yang ada untuk mempermudah proses latihan.

Latihan (1)
1. Buka program baru, klik menu File – New
2. Simpan program dengan nama loop51.c, klik File – Save As..
3. Tik program berikut :

Contoh program 5.1loop51.c


#include <stdio.h>
int main()
{
int bilangan, i, jumlah = 0;

clrscr();
printf("Input bilangan : ");
Modul Praktikum Algoritma dan Pemrograman 2

scanf("%d", &bilangan);

for(i = 1; i <= bilangan; ++i)


{
jumlah += i;
}

printf("Jumlah = %d", jumlah);


getch();
return 0;
}

4. Simpan perubahan terlebih dahulu, klik File – Save (F2)


5. Kompilasilah program, klik menu Compile – Compile – OK
6. Jika program sukses, jalankan. Klik Run –Run
7. Tuliskan keluaran yang ditampilkan pada kotak berikut, dan tambahkan
sedikit kesimpulan

Latihan (2)
1. Buka program baru, klik menu File – New
2. Simpan program dengan nama loop52.c, klik File – Save As..
3. Tik program berikut :

Contoh program 5.2loop52.c


//Program Faktorial
#include <stdio.h>
int main()
{
int bilangan;
long long faktorial;

clrscr();
printf("Input bilangan bulat positif : ");
scanf("%d",&bilangan);

faktorial = 1;

while (bilangan > 0)


{

Designed by Armansyah, M.Kom Page51


faktorial *= bilangan;
--bilangan;
}

printf("Hasil faktorial adalah = %lld", faktorial);


getch();
return 0;
}

4. Simpan perubahan terlebih dahulu, klik File – Save (F2)


5. Kompilasilah program, klik menu Compile – Compile – OK
6. Jika program sukses, jalankan. Klik Run –Run
7. Tuliskan keluaran yang ditampilkan pada kotak berikut, dan tambahkan
sedikit kesimpulan

Latihan (3)
1. Buka program baru, klik menu File – New
2. Simpan program dengan nama loop53.c, klik File – Save As..
3. Tik program berikut :

Contoh program 5.3loop53.c


// Program penjumlahan

#include <stdio.h>
int main()
{
double bilangan, jumlah = 0;

clrscr();
do
{
printf("Masukkan sebuang bilang : ");
scanf("%lf", &bilangan);
jumlah += bilangan;
}
while(bilangan != 0.0);

printf("jumlah = %.2lf",jumlah);
getch();
Modul Praktikum Algoritma dan Pemrograman 2

return 0;
}

4. Simpan perubahan terlebih dahulu, klik File – Save (F2)


5. Kompilasilah program, klik menu Compile – Compile – OK
6. Jika program sukses, jalankan. Klik Run –Run
7. Tuliskan keluaran yang ditampilkan pada kotak berikut, dan tambahkan
sedikit kesimpulan

Latihan (4)
1. Buka program baru, klik menu File – New
2. Simpan program dengan nama loop54.c, klik File – Save As..
3. Tik program berikut :

Contoh program 5.4loop54.c


// Program segitiga dengan Nested For

#include <stdio.h>
int main(){
int a,b;
clrscr();
for(a=1; a<10; a++) {
for(b=1; b<a; b++){
printf("%d ", b);
}
printf("\n");
}
getch();
return 0;
}

4. Simpan perubahan terlebih dahulu, klik File – Save (F2)


5. Kompilasilah program, klik menu Compile – Compile – OK
6. Jika program sukses, jalankan. Klik Run –Run
7. Tuliskan keluaran yang ditampilkan pada kotak berikut, dan tambahkan
sedikit kesimpulan

Designed by Armansyah, M.Kom Page53


5.6 TUGAS MANDIRI
Untuk meningkatkan kompetensi berikut, selesaikanlah studi kasus berikut.
Analisalah kode sumber berikut untuk menemukan hasil yang sesungguhnya. Adapun
narasi programnya sebagai berikut :
1. (Analisa kode program untuk menemukan keluarannya)
2. (Kompilasi program : Alt + F9)
3. Jalankan program untuk melihat hasilnya : Ctrl + F9
4. Keluaran tampil di monitor

Kumpulkan studi kasus ini dalam bentuk paper makalah yang ketentuannya sebagai
berikut :
1. Tiklah dengan aplikasi dokumen Word
2. Atur kertas dengan ukuran A4
3. Margin : Kiri dan atas 3 cm, kanan dan bawah 2.54 cm
4. Ukuran font 12 point diantara Calibri, Cambria, Time New Roman
5. Kode program menggunakan font Courier New dengan ukuran 10-11 point
6. Setiap judul harus Bold
7. Gambar dan tabel ditampilkan dengan nomor keterangan
8. Makalah terdiri dari :
a. Halaman sampul
b. Kata pengantar
c. Daftar isi
d. Daftar Gambar
e. Daftar tabel (jika ada)
f. Bab 1 Pendahuluan (sub judul : 1.1, 1.2, 1.3, dan seterusnya)
g. Bab 2 Pembahan (sub judul : 2.1, 2.2, 2.3, dan seterusnya)
h. Bab 3 Kesimpulan (sub judul : 3.1, 3.2, 3.3, dan seterusnya)
i. Daftar pustaka harus buku, ebook, ataupun modul. blog tidak
dibenarkan
9. Program sudah berhasil dikirim ke email pembimbing dalam format .C atau
.txt, kode sumber sebagai berikut :

1. #include <stdio.h>
2. int main(){
3. int i,j;
4.
5. clrscr();
Modul Praktikum Algoritma dan Pemrograman 2

6. for (i= 15; i > 0; i -= 2) {


7. for (j = 0; j < 15 - i / 2; j++)
8. printf(" ");
9.
10. for (j = 0; j - i; j)
11. printf("*");
12.
13.
14. }
15. for (i = 2; i < 16; i += 2) {
16. for (j = 0; j < 15 - i / 2; j++)
17. printf(" ");
18.
19. for (j = 0; j + i; j++)
20. printf("*");
21.
22.
23. }
24. getch();
25. return 0;
26. }

Designed by Armansyah, M.Kom Page55


MODUL 6
ARRAY

6.1 KOMPETENSI PRODI. ILMU KOMPUTER


1) Mampu merancang suatu aplikasi sistem informasi menggunakan bahasa
pemrograman tertentu
2) Mampu menjadi sistem analisis teknologi informasi
3) Mampu menerapkan komponen sistem komputer dan basisdata untuk
merancang sistem terdistribusi
4) Mampu menjadi administrator jaringan komputer, konsultan bidang teknologi
informasi
5) Mampu menerapkan teknologi informasi dan metode komputasi yang sesuai
dengan perkembangan
6) Mampu menerapkan praktik penelitian dalam berbagai bidang dan
melanjutkan jenjang pendidikan yang lebih tinggi

6.2 TUJUAN PRAKTIKUM


Setelah mengikuti praktikum pada modul 1 ini, mahasiswa diharapkan mampu
dalam beberapa kompetensi pokok diantaranya :
1. Mampu menjelaskan konsep dasar struktur data array
2. Mampu menjelaskan struktur array dalam algoritma maupun program
berbahasa C
3. Mampu menggunakan array multidimensi, minimal array berdimensi dua
4. Mampu mengidentifikasi penggunaan array dalam studi kasus pemrograman
untuk menyelesaikan permasalahan program

6.3 TEORI SINGKAT


Array merupakan sekumpulan elemen data yang memiliki tipedata dan nama
variabel yang sama. Misal, beberapa data yang nilainya Aisyah, Faisal, Abdullah,
Hasan,dan Fadhilah, kelima data tersebut tentunya disimpan didalam variabel.
Variabel yang tepat untuk kelima data tersebut adalah data_nama. Dalam hal ini
variabel disebut dengan array. Dimana kelima data tersebut memiliki nama variabel
yang sama. Kelima data tersebut diakses oleh bilangan positif yang selalu diawali
dengan nilai terkecil sebagai elemen pertama. Bilangan positif disini dikenal dengan
istilah indeks atau subscript. Perhatikan gambar :

Elemen

Nama_array Elemen
Modul Praktikum Algoritma dan Pemrograman 2

Dari gambar diatas dapat diamati, kelima data tersebut tersusun secara berdekatan.
Karakteristik ini merupakan identifikasi array. VariabelIndeks array selalu bertipe
bilangan bulat (integer), dan pada pemrograman C indeks pertama diawali dengan
nilai 0 (nol). Sehingga jika mengacu struktur array, gambar tersebut menjelaskan
bahwa sebagai berikut :
1. data_nama sebagai array (nama array)
2. Aisyah, Faisal, Abdullah, Hasan, dan Fadhilah adalah elemen data array
3. 0, 1, 2, 3, 4, merupakan indeks array yang berfungsi untuk mengakses setiap
elemen.

A. Pendeklarasian Array
Untuk menggunakan Array dalam bahasa C dapat menggunakan struktur sebagai
berikut :

type_data nama_array [ukuran_data];

contoh int bilangan [5]; atau


char nama[5];

pendeklarasian array dapat juga langsung menginisialisasikan nilai array tersebut


bersamaan dengan pendeklarasian seperti misalnya :

int bilanga [5] = {90, 76, 88, 67, 83}; atau

char nama[5] = {“Aisyah”, “Faisal”, “Abdullah”,


“Hasan”,”Fadhilah”};

Contoh diatas memiliki arti seperti berikut :

bilangan[0]=90;
bilangan[1]=76;
bilangan[2]=88;
bilangan[3]=67;
bilangan[4]=83;

sehingga jika mengacu pada data array diatas, untuk mengakses elemen nilai 88,
maka dapat dipanggil dengan struktur bilangan[2];. Indeks0, 1, 2, 3, 4 diwakili
oleh sebuah variabel bertipe bilangan bulat. Umpama variabel diberikan dengan
nama i, maka untuk mengakses kelima elemen tersebut dipanggil dengan struktur
bilangan [i];

Designed by Armansyah, M.Kom Page57


B. Array Dua Dimensi
Array dua dimensi merupakan array multidimensi yang merepresentasikan
sebuah matriks atau tabel. Array multidimensi terdiri dari indeks yang mewakili
baris, dan indeks yang mewakili kolom. Indeks yang sebelah kiri adalah ukuran
banyaknya baris dalam array sedangkan indeks sebelah kanan merupakan ukuran
banyaknya kolom dalam array. Sementara untuk array dimensi tiga atau lebih, indeks
selanjutnya adalah indeks yang merepresentasikan kolom dan baris dimensi
kebelakang atau yang lainnya. Array dua dimensi menggunakan struktur berikut :

tipe_data nama_array[baris][kolom];

untuk array tiga dimensi atau multi dimensi yang lain, dapat menggunakan struktur
berikut :

tipe_data nama_array[baris][kolom][kolom_2];

Inisialisasi nilai array juga dapat diberikan pada array dua dimensi pada saat
pendeklarasian array. Dengan menggunakan contoh berikut, array dapat
dideklarasikan seperti :

int bilangan[3][4] = {
{0, 1, 2, 3},
{4, 5, 6, 7},
{8, 9, 10, 11}
};

6.4 KEGIATAN PRAKTIKUM


Setelah membaca teori singkat diatas berikut akan diberikan contoh array untuk
memudahkan dalam memahami penggunaan struktur array sebagai berikut.

Contoh (1)
1. Jalankan program editor Turbo C
2. Bukan program baru, klik File – New
3. Simpan program, klik menu File – Save As..
4. Tulis program berikut

Contoh program 6.0 arr60.c


1. #include <stdio.h>
2.
3. int main () {
4.
5. int ArrBilangan[10];
6. int i;
Modul Praktikum Algoritma dan Pemrograman 2

7.
8. clrscr();
9. for ( i = 0; i < 10; i++ ) {
10. ArrBilangan[i] = i + 100;
11. }
12.
13. for (i = 0; i < 10; i++ ) {
14. printf("Elemen ke [%d] = %d\n",i,
ArrBilangan[i] );
15. }
16. getch();
17. return 0;
18. }

5. Simpan perubahan program, klik File – Save [F2)


6. Jalankan program, jika berhasil program akan menampilkan keluaran seperti
berikut :

Contoh (2)
1. Jalankan program editor Turbo C
2. Bukan program baru, klik File – New
3. Simpan program, klik menu File – Save As..
4. Tulis program berikut

Contoh program 6.1 arr61.c


1. #include <stdio.h>
2.
3. int main () {
4.
5. char abjat[2][5] ;
6. int i,j;
7.
8. clrscr();
9. for ( i = 0; i <2; i++ ) {
10. for(j=0; j<5; j++) {
11. printf("Huruf ke [%d ][%d] : ", i,j);
12. scanf("%s", &abjat[i][j]);

Designed by Armansyah, M.Kom Page59


13. }
14. }
15. printf("\n");
16. for ( i = 0; i < 2; i++ ) {
17. for(j=0; j<5; j++) {
18. printf("%c ", abjat[i][j]);
19. } printf("\n");
20. }
21.
22. getch();
23. return 0;
24. }

5. Simpan perubahan program, klik File – Save [F2)


6. Jalankan program, jika berhasil program akan menampilkan keluaran seperti
berikut :

6.5 LATIHAN
Kerjakanlah latihan-latihan berikut untuk meningkatkan kemampuan
pemrograman, terutama dalam penggunaan struktur array dalam bahasa C. Ikuti
langkah-langkah yang diberikan untuk memudahkan praktikum.

Latihan (1)
1. Buka program baru, File – New
2. Simpan program, File – Save As..dengan nama arr61.c
3. Tulis program di editor Turbo C,

Latihan Program 6.1 arr61.c


1. #include <stdio.h>
2. int main()
3. {
4. int rerata = 0;
5. int jumlah =0;
6. int i=0;
Modul Praktikum Algoritma dan Pemrograman 2

7.
8. int bilangan[5];
9.
10. clrscr();
11. for (i=0; i<5;i++)
12. {
13. printf("Masukkan bilangan %d \n", (i+1));
14. scanf("%d", &bilangan[i]);
15. }
16.
17. for (i=0; i<5;i++)
18. {
19. jumlah = jumlah+bilangan[i];
20. }
21.
22. rerata = jumlah/5;
23. printf("Rerata dari nilai yang di input adalah :
%d", rerata);
24.
25. getch();
26. return 0;
27. }

4. Simpan perubahan terlebih dahulu, File – Save (F2)


5. Kompilasi program, Compile – Compile – OK
6. Jalankan program, Run – Run
7. Tulis hasil program pada kotak dibawah, dan tambahkan sedikit kesimpulan

Latihan (2)
1. Buka program baru, File – New
2. Simpan program, File – Save As..dengan nama arr62.c
3. Tulis program di editor Turbo C,

Latihan Program 6.2 arr62.c


1. #include <stdio.h>
2. #include <math.h>
3. #define SIZE 7
4.
5. int main() {

Designed by Armansyah, M.Kom Page61


6. int marks[] = {74, 43, 58, 60, 90, 64, 70};
7. int sum = 0;
8. int sumSq = 0;
9. double mean, stdDev;
10. int i;
11.
12. clrscr();
13. for (i = 0; i < SIZE; ++i) {
14. sum += marks[i];
15. sumSq += marks[i] * marks[i];
16. }
17. mean = (double)sum/SIZE;
18. printf("Mean is %.2lf\n", mean);
19.
20. stdDev = sqrt((double)sumSq/SIZE - mean*mean);
21. printf("Std dev is %.2lf\n", stdDev);
22. getch();
23. return 0;
24. }

4. Simpan perubahan terlebih dahulu, File – Save (F2)


5. Kompilasi program, Compile – Compile – OK
6. Jalankan program, Run – Run
7. Tulis hasil program pada kotak dibawah, dan tambahkan sedikit kesimpulan

Latihan (3)
1. Buka program baru, File – New
2. Simpan program, File – Save As..dengan nama arr63.c
3. Tulis program di editor Turbo C,

Latihan Program 6.3arr63.c


1. #include<stdio.h>
2.
3. int main()
4. {
5. char s1[50];
6.
7. clrscr();
8. printf("Masukkan beberapa huruf : ");
Modul Praktikum Algoritma dan Pemrograman 2

9. gets(s1);
10. printf("\nInput string Anda adalah :
%s",strrev(s1));
11. getch();
12. return(0);
13. }

4. Simpan perubahan terlebih dahulu, File – Save (F2)


5. Kompilasi program, Compile – Compile – OK
6. Jalankan program, Run – Run
7. Tulis hasil program pada kotak dibawah, dan tambahkan sedikit kesimpulan

Designed by Armansyah, M.Kom Page63


MODUL 7
FUNGSI

7.1 KOMPETENSI PRODI. ILMU KOMPUTER


1) Mampu merancang suatu aplikasi sistem informasi menggunakan bahasa
pemrograman tertentu
2) Mampu menjadi sistem analisis teknologi informasi
3) Mampu menerapkan komponen sistem komputer dan basisdata untuk
merancang sistem terdistribusi
4) Mampu menjadi administrator jaringan komputer, konsultan bidang teknologi
informasi
5) Mampu menerapkan teknologi informasi dan metode komputasi yang sesuai
dengan perkembangan
6) Mampu menerapkan praktik penelitian dalam berbagai bidang dan
melanjutkan jenjang pendidikan yang lebih tinggi

7.2 TUJUAN PRAKTIKUM


Setelah mengikuti praktikum pada modul 1 ini, mahasiswa diharapkan mampu
dalam beberapa kompetensi pokok diantaranya :
1. Mampu menjelaskan konsep dasar fungsi dan kegunaanya dalam program
2. Mampu menjelaskan struktur fungsi
3. Mampu menggunakan fungsi dalam menyelesaikan permasalahan program
berbahasa C

7.3 TEORI SINGKAT


Fungsi merupakan blok program yang memiliki keterkaitan dengan blok
program yang lain, terutama blok program utama (fungsi utama : main() ). Fungsi
berisi pernyataan-pernyataan yang memiliki tugas tertentu. Dengan fungsi,
programmer dapat membagi program dalam beberapa fungsi yang terpisah dengan
fungsi utamanya. Dengan adanya fungsi penulisan program menjadi mudah terutama
jika program memiliki banyak baris kode.

A. Pendeklarasian Fungsi
Fungsi dapat ditulis diawal maupun setelah fungsi utama. Pada umumnya para
perancang menuliskan fungsi diawal fungsi utama. Penulisan fungsi yang dilakukan
setelah fungsi utama, harus menyertakan prototype fungsi. Adapun penggunaan
fungsi mengacu pada struktur program berikut ini :

tipe_fungsinama_fungsi( parameter ) {
Tubuh fungsi;
}
Modul Praktikum Algoritma dan Pemrograman 2

Dimana :
- Tipe_fungsi, merupakan tipedata fungsi. Tipe fungsi mengharuskan memiliki
nilai balik fungsi. Tipe data fungsi bergantung kepada tujuan dan hasil yang
ingin dicapai. Fungsi boleh saja tidak memiliki nilai balik fungsi, seperti tipe
void yang tidak memiliki nilai balik fungsi.
- Nama_fungsi, merupakan nama yang diberikan kepada fungsi tersebut.
Biasanya nama fungsi mewakili tugas yang akan dikerjakan oleh fungsi
- Parameter, merupakan identifier, variabel dan atau tipe data yang digunakan
oleh variabel-variabel yang berada di tubuh fungsi, yang disebut dengan
variabel lokal.
- Tubuh fungsi, bagian ini adalah bagian inti fungsi, yang berisi pernyataan-
pernyataan yang ditujukan untuk dilakukan oleh fungs.

Contoh penggunaan fungsi bertipe integer :

int maksimum(int bilangan1, int bilangan2) {

/* deklarasi variabel lokal */


int hasil;

if (bilangan1 > bilangan2)


hasil = bilangan1;
else
hasil = bilangan2;

return hasil;
}

B. Prototipe Fungsi
Dalam bahasa C, suatu fungsi harus dinyatakan sebelum dapat dipanggil. Ini dapat
dicapai dengan menempatkan definisi fungsi sebelum digunakan, atau
mendeklarasikan apa yang disebut dengan prototipe fungsi.
Prototipe fungsi memberitahu kompilator antarmuka fungsi, yaitu, tipe-kembali,
nama fungsi, dan daftar jenis parameter (jumlah dan jenis parameter). Penggunaan
prototipe fungsi memungkinkan perancang program dapat meletakkan fungsi
dimana saja, baik diawal program maupun jauh dibawah program utama (fungsi
utama). Prototipe fungsi dideklarasikan setelah preporcessor dengan format sebagai
berikut :

Tipe_fungsi nama_fungsi(tipe1 parameter1, tipe2 parameter2,...);

Berikut ini disajikan struktur fungsi yang dapat diamati pada gambar berikut :

Designed by Armansyah, M.Kom Page65


Dari gambar struktur fungsi diatas dapat diidentifikasi prototipe fungsi berada
dibawah preprocessor seperti int multiply(int a, int
b);sedangkandimana tubuh fungsi dituliskan dibawah fungsi utama. Fungsi
tambahan terdapat pada blok int multiply(int a, int b) { . . . . .
. }.

C. Pemanggilan Fungsi
Pemanggilan fungsi dilakukan untuk melihat hasil yang dilakukan oleh fungsi,
yang diletakkan pada tubuh fungsi utama atau main ().Pemanggilan fungsi dapat
dilakukan dengan dua cara :
1) Pemanggilan dengan nilai fungsi (call by value)
Pemanggilan fungsi dengan metodecall by valuememiliki karakteristik sebagai
berikut :
- Dalam panggilan dengan metode nilai, nilai variabel dilewatkan ke fungsi
sebagai parameter.
- Nilai parameter aktual tidak dapat dimodifikasi oleh parameter formal.
- Memori yang berbeda dialokasikan untuk parameter aktual dan formal,
karena, nilai parameter aktual disalin ke parameter formal.
2) Pemanggilan dengan referensi fungsi (call by reference)
Pemanggilan fungsi dengan metode call by reference memiliki karakteristik
sebagai berikut :
- Dalam panggilan dengan metode referensi, alamat variabel dilewatkan ke
fungsi sebagai parameter.
- Nilai parameter aktual dapat dimodifikasi dengan parameter formal.
- Memori yang sama digunakan untuk parameter aktual dan formal karena
hanya alamat yang digunakan oleh kedua parameter.

D. Rekursif
Rekursi adalah proses pengulangan ekspresi dengan cara yang sama di dalam
fungsi yang sama. Beberapa referensi menyebut perulangan fungsi ini dengan istilah
fungsi yang memanggil nama fungsi itu sendiri.
Modul Praktikum Algoritma dan Pemrograman 2

Rekursi sering digunakan untuk mengerjalan proses perulangan menghitung


faktorial dan deret fibonansi. Fungsi rekursi mengacu pada struktur program berikut
ini :

void recursion() {
recursion();
}

int main() {
recursion();
}

7.4 KEGIATAN PRAKTIKUM


Untuk memudahkan pemahaman fungsi, perhatikanlah beberapa contoh berikut
sebelum melakukan latihan praktikum.

Contoh (1)
1. Jalankan program editor Turbo C, selanjutnya buat program baru, File –New
2. Simpan program terlebih dahulu dengan nama cthfg70.c, File – Save As..
3. Kemudian tik-lah program berikut, perhatika kode sumbernya agar proses
kompilasi tidak menampilkan error

Contoh program 7.0 cthfg70.c


1. //Fungsi dengan metode call by value
2. #include<stdio.h>
3.
4. int hitung(int x);
5.
6. int main()
7. {
8. int x = 10;
9.
10. clrscr();
11. x = calc(x);
12. printf("Nilai x adalah %d", x);
13. getch();
14. return 0;
15. }
16.
17. int hitung(int x)
18. {
19. x = x + 10 ;
20. return x;
21. }

4. Simpan perubahan program untuk menghindari hal-hal yang tak diinginkan,


klik File - Save (F2)

Designed by Armansyah, M.Kom Page67


5. Kompilasilah program, klik Compile – Compile (Alt + F9) – OK
6. Jalankan program, klik Run – Run (Ctlr + F9)
7. Jika program berhasil akan menampilkan keluaran sebagai berikut :

Contoh (2)
1. Buat program baru, File – New
2. Simpan program dengan nama cthfg71.c, File – Save As..
3. Kemudian tik-lah program berikut,

Contoh program 7.1 cthfg71.c


1. //Fungsi dengan metode Call by reference
2. #include<stdio.h>
3.
4. void hitung(int *p);
5.
6. int main()
7. {
8. int x = 10;
9.
10. clrscr();
11. hitung(&x);
12. printf("Nilai x adalah %d", x);
13. getch();
14. return(0);
15. }
16.
17. void hitung(int *p)
18. {
19. *p = *p + 10;
20. }

4. Simpan perubahan program klik File - Save (F2)


5. Kompilasilah program, klik Compile – Compile (Alt + F9) – OK
6. Jalankan program, klik Run – Run (Ctlr + F9)
7. Jika program berhasil akan menampilkan keluaran sebagai berikut :
Modul Praktikum Algoritma dan Pemrograman 2

7.5 LATIHAN
Kerjakanlah latihan-latihan berikut untuk meningkatkan kemampuan
programming yang kamu miliki. Semakin sering berlatih semakin baik kompetensi.
Ikuti langkah-langkah latihan untuk mempermudah proses praktikum.

Latihan (1)
1. Buat program baru, File – New
2. Simpan program, File – Save As..
3. Ketik program dengan nama fungsi71.c

Latihan program fungsi71.c


1. #include <stdio.h>
2.
3. int maksimal(int bilangan1, int bilangan2);
4.
5. int main () {
6. int a = 100;
7. int b = 200;
8. int maks;
9.
10. clrscr();
11. maks = maksimal(a, b);
12.
13. printf("Nilai maksimalnya adalah : %d\n", ret );
14.
15. getch();
16. return 0;
17. }
18.
19. int maksimal(int bilangan1, int bilangan2) {
20.
21. int hasil;
22.
23. if (bilangan1 > bilangan2)
24. result = bilangan1;
25. else
26. hasil = bilangan2;
27.
28. return hasil;
29. }

4. Simpan perubahan program, File – Save (F2)


5. Kompilasi program, Compile – Compile – OK (Alt + F9)
6. Jalankan program, Run - Run (Ctrl + F9)
7. Tuliskan keluaran pada kotak dibawah, dan tambahkan sedikit kesimpulan
program

Designed by Armansyah, M.Kom Page69


Latihan (2)
1. Buat program baru, File – New
2. Simpan program, File – Save As..
3. Ketik program dengan nama fungsi72.c

Latihan program fungsi72.c


1. #include <stdio.h>
2. const int PI = 3.14159265;
3.
4. float getArea(float radius);
5.
6. int main() {
7. float radius1 = 1.1, area1, area2;
8.
9. clrscr();
10. area1 = getArea(radius1);
11. printf("Area 1 adalah %.2f\n", area1);
12.
13. area2 = getArea(2.2);
14. printf("Area 2 adalah %.2f\n", area2);
15.
16. printf("Area 3 adalah %.2f\n", getArea(3.3));
17. getch();
18. return 0;
19. }
20.
21. float getArea(float radius) {
22. return radius * radius * PI;
23. }

4. Simpan perubahan program, File – Save (F2)


5. Kompilasi program, Compile – Compile – OK (Alt + F9)
6. Jalankan program, Run - Run (Ctrl + F9)
7. Tuliskan keluaran pada kotak dibawah, dan tambahkan sedikit kesimpulan
program
Modul Praktikum Algoritma dan Pemrograman 2

Latihan (3)
1. Buat program baru, File – New
2. Simpan program, File – Save As..
3. Ketik program dengan nama fungsi73.c

Latihan program fungsi73.c


1. #include <stdio.h>
2.
3. int ganjil(int);
4.
5. int main() {
6. clrscr();
7. printf(" %d\n", ganjil(5));
8. printf(" %d\n", ganjil(6));
9. printf(" %d\n", ganjil(-5));
10.
11. getch();
12. return 0;
13. }
14.
15. int ganjil(int bilangan) {
16. if (bilangan % 2 == 1) {
17. return 1;
18. } else {
19. return 0;
20. }
21. }

4. Simpan perubahan program, File – Save (F2)


5. Kompilasi program, Compile – Compile – OK (Alt + F9)
6. Jalankan program, Run - Run (Ctrl + F9)
7. Tuliskan keluaran pada kotak dibawah, dan tambahkan sedikit kesimpulan
program

Designed by Armansyah, M.Kom Page71


Latihan (4)
1. Buat program baru, File – New
2. Simpan program, File – Save As..
3. Ketik program dengan nama fungsi74.c

Latihan program fungsi74c


1. #include <stdio.h>
2.
3. void inc(int array[], int size);
4. void print(int array[], int size);
5.
6. int main() {
7. int a1[] = {8, 4, 5, 3, 2};
8.
9. clrscr();
10. // Array, sebelum ditambah
11. print(a1, 5);
12.
13. //Array, setelah ditambah
14. inc(a1, 5);
15. print(a1, 5);
16. getch();
17. return 0;
18. }
19.
20. // Fungsi tambah array
21. void inc(int array[], int size) {
22. int i;
23. for (i = 0; i < size; ++i) {
24. array[i]++;
25. }
26. }
27.
28. //Fungsi cetak Array
29. void print(int array[], int size) {
30. int i;
31. printf("{");
32. for (i = 0; i < size; ++i) {
33. printf("%d", array[i]);
34. if (i < size - 1) {
35. printf(",");
36. }
37. }
38. printf("}\n");
39. }

4. Simpan perubahan program, File – Save (F2)


5. Kompilasi program, Compile – Compile – OK (Alt + F9)
6. Jalankan program, Run - Run (Ctrl + F9)
Modul Praktikum Algoritma dan Pemrograman 2

7. Tuliskan keluaran pada kotak dibawah, dan tambahkan sedikit kesimpulan


program

Latihan (5)
1. Buat program baru, File – New
2. Simpan program, File – Save As..
3. Ketik program dengan nama fungsi75.c

Latihan program 7.5 fungsi75.c


1. // Fungsi Rekursif
2. #include <stdio.h>
3.
4. unsigned long long int factorial(unsigned int i) {
5.
6. if(i <= 1) {
7. return 1;
8. }
9. return i * factorial(i - 1);
10. }
11.
12. int main() {
13. int i;
14.
15. clrscr();
16. printf("Masukkan bilang bulat >4 : ");
scanf("%d",&i);
17. printf("Nilai faktorial %d adalah %ld\n", i,
factorial(i));
18. getch();
19. return 0;
20. }

4. Simpan perubahan program, File – Save (F2)


5. Kompilasi program, Compile – Compile – OK (Alt + F9)
6. Jalankan program, Run - Run (Ctrl + F9)

Designed by Armansyah, M.Kom Page73


Latihan (6)
1. Buat program baru, File – New
2. Simpan program, File – Save As..
3. Ketik program dengan nama fungsi76.c

Latihan program 7.6fungsi76.c


1. // Deret fibonacci
2. #include <stdio.h>
3.
4. int fibonacci(int i) {
5.
6. if(i == 0) {
7. return 0;
8. }
9.
10. if(i == 1) {
11. return 1;
12. }
13. return fibonacci(i-1) + fibonacci(i-2);
14. }
15.
16. int main() {
17. int i;
18.
19. clrscr();
20.
21. for (i = 0; i < 10; i++) {
22. printf("%d ", fibonacci(i));
23. }
24. getch();
25. return 0;
26. }

4. Simpan perubahan program, File – Save (F2)


5. Kompilasi program, Compile – Compile – OK (Alt + F9)
6. Jalankan program, Run - Run (Ctrl + F9)
7. Tulis keluar program pada kotak, buat sedikit kesimpulan antar program 75
dan 76
Modul Praktikum Algoritma dan Pemrograman 2

MODUL 8
STRUCTURE

8.1 KOMPETENSI PRODI. ILMU KOMPUTER


1) Mampu merancang suatu aplikasi sistem informasi menggunakan bahasa
pemrograman tertentu
2) Mampu menjadi sistem analisis teknologi informasi
3) Mampu menerapkan komponen sistem komputer dan basisdata untuk
merancang sistem terdistribusi
4) Mampu menjadi administrator jaringan komputer, konsultan bidang teknologi
informasi
5) Mampu menerapkan teknologi informasi dan metode komputasi yang sesuai
dengan perkembangan
6) Mampu menerapkan praktik penelitian dalam berbagai bidang dan
melanjutkan jenjang pendidikan yang lebih tinggi

8.2 TUJUAN PRAKTIKUM


Setelah mengikuti praktikum pada modul 1 ini, mahasiswa diharapkan mampu
dalam beberapa kompetensi pokok diantaranya :
1. Mampu menjelaskan konsep dasar structure, serta fungsinya dalam program
2. Mampu menjelaskan elemen-elemen dalam struktur structure
3. Mampu menggunakan structure dalam studi kasus pemrograman struktur
data
4. Mampu menyelesaikan suatu permasalahan program menggunakan structure

8.3 TEORI SINGKAT


A. Konsep Dasar
Structure adalah tipedata bentukan yang ditentukan oleh pengguna, yang
memungkinkan untuk menggabungkan data dari berbagai tipe data bersama-sama.
Structure membantu membangun tipe data kompleks yang lebih bermakna.
Konsep structuremirip dengan Array, tetapi memiliki perbedaan yang mencolok
dari kemampuannya menampung data. Dimana array hanya mampu menyimpan data
dari tipe yang sama saja (tunggal), sedangkan structure dapat menyimpan jenis data
yang berbeda dan lebih bermakna.
Structure dapat diterapkan dengan menggunakan struktur program seperti
berikut ini :

Designed by Armansyah, M.Kom Page75


Struct {

variabel1 tipe1;
variabel2tipe2;
...
Variabel_n tipe_n;
} [variabel_gabungan];

Contoh :

Struct {
char judul[50];
char penulis[50];
char pelajaran[100];
int kode_buku;
} data_buku;

Mengacu pada contoh diatas, ini dapat diartikan dengan judul, penulis, pelajaran, dan
kode_buku adalah variabel-variabel yang dimiliki oleh struktur data data_buku
dengan tipe struct.

B. Mengakses Data Structure


Untuk mengakses elemen-elemen didalam structadalah dengan menyebutkan
nama struct dan dikoneksikan ke variabel-variabel didalamnya dengan
menggunakan simbol titik. Adapun struktur untuk mengakses elemen struct adalah

tipe_structure.nama_variabel;

contoh data_buku.judul;

8.4 KEGIATAN PRAKTIKUM


Untuk lebih memudahkan pemahaman dan menggunakan structure
perhatikanlah contoh penggunaan struct ini.

Contoh (1)
1. Buka program baru, File – New
2. Simpan programuntuk menghindari hal-hal yang tak diinginkan. Klik File –
Save As..ganti nama NONAME00.CPP dengan cthstr80.c
3. Selanjutnya tulis program pada editor
Modul Praktikum Algoritma dan Pemrograman 2

Contoh program cthstr80.c


1. // Program Structure
2. #include<stdio.h>
3. #include<string.h>
4.
5. struct mahasiswa
6. {
7. char nama[25];
8. int usia;
9. //F for female and M for male
10. char jenis_kelamin;
11. };
12.
13. int main()
14. {
15. struct mahasiswa data;
16.
17. clrscr();
18. data.usia = 18;
19.
20. // Fungsi string
21. strcpy(data.nama, "Ramadhan");
22. printf("Nama mahasiswa 1: %s\n", data.nama);
23. printf("Usia mahasiswa 1: %d\n", data.usia);
24. getch();
25. return 0;
26. }

4. Simpan perubahan program, File – Save (F2)


5. Kompilasi program, Compile – Compile – OK (Alt + F9)
6. Jalankan program, Run - Run (Ctrl + F9)
7. Jika program berhasil, akan manampilkan keluaran seperti berikut :

8.5 LATIHAN
Untuk meningkatkan pemahaman tentang tipe structurei ini, kerjakanlah latihan-
latihan berikut. Perhatikan langkah demi langkah agar proses penyelesaian latihan
menjadi lebih mudah. Catat setiap keluaran pada kotak yang tersedia dengan
mebubuhkan sedikit kesimpulan berdasarkan analisan masing-masing.

Latihan(1)
1. Buka program baru, klik File – New
2. Simpan program dengan nama struct80.c, klik File – Save As..
3. Ketik program berikut sampai selesai

Designed by Armansyah, M.Kom Page77


Latihan program 8.0 struct80.c
1. #include <stdio.h>
2. #include <string.h>
3.
4. struct mahasiswa
5. {
6. int kd_mhs;
7. char nama[20];
8. float persentase;
9. };
10.
11. int main()
12. {
13. struct mahasiswa record = {0};
//Menginisialisasi dengan nilai 0
14.
15. clrscr();
16. record.kd_mhs=1;
17. strcpy(record.nama, "Abdullah");
18. record.persentase = 86.5;
19.
20. printf(" Kode mahasiswa : %d \n",
record.kd_mhs);
21. printf(" Nama Mahasiswa : %s \n",
record.nama);
22. printf(" Persentasenya : %f \n",
record.persentase);
23. getch();
24. return 0;
25. }

4. Simpan perubahan program, File – Save (F2)


5. Kompilasi program, Compile – Compile – OK (Alt + F9)
6. Jalankan program, Run - Run (Ctrl + F9)
7. Tuliskan keluaran pada kotak dibawah, dan tambahkan sedikit kesimpulan
program
Modul Praktikum Algoritma dan Pemrograman 2

Latihan (2)
1. Buka program baru, File – New
2. Simpan program, klik File – Save As..ganti nama, struct82.c ,
3. Tulis program pada editor sampai selesai

Latihan program 8.2 struct82.c


1. #include <stdio.h>
2. #include <string.h>
3.
4. struct mahasiswa
5. {
6. int kd_mhs;
7. char nama[20];
8. float persentase;
9. } record;
10.
11. int main()
12. {
13. struct mahasiswa record = {0}; //Menginisialisasi
dengan nilai 0
14.
15. clrscr();
16. record.kd_mhs=1;
17. strcpy(record.nama, "Abdullah");
18. record.persentase = 86.5;
19.
20. printf(" Kode mahasiswa : %d \n", record.kd_mhs);
21. printf(" Nama Mahasiswa : %s \n", record.nama);
22. printf("Persentasenya : %f \n", record.persentase);
23.
24. getch();
25. return 0;
26. }

4. Simpan perubahan program, File – Save (F2)


5. Kompilasilah program, Compile – Compile (Alt + F9) – OK
6. Jalankan program, Run – Run (Ctrl + F9)
7. Tuliskan keluaran program pada kotak, dan tambahkan sedikit kesimpulan

Designed by Armansyah, M.Kom Page79


Latihan (3)
1. Buka program baru, File – New
2. Simpan program, klik File – Save As..ganti nama, struct83.c ,
3. Tulis program pada editor sampai selesai

Latihan Program 8.3 struct83.c


1. #include <stdio.h>
2. #include <string.h>
3.
4. struct mahasiswa
5. {
6. int no_mhs;
7. char nama[30];
8. float persentase;
9. };
10.
11. int main()
12. {
13. int i;
14. struct mahasiswa record[3];
15.
16. clrscr();
17. // Data pertama
18. record[0].no_mhs=1;
19. strcpy(record[0].nama, "Abdullah");
20. record[0].persentase = 86.5;

21.
22. // Data kedua
23. record[1].no_mhs=2;
24. strcpy(record[1].nama, "Hasan");
25. record[1].persentase = 90.5;
26.
27. // Data ketiga
28. record[2].no_mhs=3;
29. strcpy(record[2].nama, "Fatimah");
30. record[2].persentase = 81.5;
31.
32. for(i=0; i<3; i++)
33. {
34. printf(" Data mahasiswa : %d \n", i+1);
35. printf(" Nomor Mahasiswa : %d \n",
record[i].no_mhs);
36. printf(" Nama Mahasiswa : %s \n",
record[i].nama);
37. printf(" Persentasenya : %lf\n",
record[i].persentase);
38. printf("\n");
39. }
40. getch();
Modul Praktikum Algoritma dan Pemrograman 2

41. return 0;
42. }

4. Simpan perubahan program, File – Save (F2)


5. Kompilasilah program, Compile – Compile (Alt + F9) – OK
6. Jalankan program, Run – Run (Ctrl + F9)
7. Tuliskan keluaran program pada kotak, dan tambahkan sedikit kesimpulan

Latihan (4)
1. Buka program baru, File – New
2. Simpan program, klik File – Save As..ganti nama, struct84.c ,
3. Tulis program pada editor sampai selesai

Latihan Program 8.3 struct84.c


1. #include <stdio.h>
2.
3. int main(void) {
4. struct mahasiswa {
5. char nama_depan[64];
6. char nama_belakang[64];
7. char no_id[64];
8. int nilai;
9. };
10.
11. struct mahasiswa ArrMhs[3];
12.
13. int i;
14.
15. clrscr();
16.
17. for (i = 0; i < 3; i++) {
18. printf("Masukkan detail data mahasiswa #%d\n",
(i+1));
19.
20. printf("Masukkan Nama Depan: ");
21. scanf("%s", ArrMhs[i].nama_depan);
22.
23. printf("Nama Belakang: ");
24. scanf("%s", ArrMhs[i].nama_belakang);
25.
26. printf("Masukkan no_id: ");
27. scanf("%s", ArrMhs[i].no_id);
28.
29. printf("Masukkan nilai: ");
30. scanf("%d", &ArrMhs[i].nilai);
31. printf("\n");
32. }
33.
34.

Designed by Armansyah, M.Kom Page81


35. for (i = 0; i < 3; i++) {
36. printf("\nData #%d Detail:\n", (i+1));
37. printf("Nama Depan : %s\n",
ArrMhs[i].nama_depan);
38. printf("Nama_belakang: %s\n",
ArrMhs[i].nama_belakang);
39. printf("No_id: %s\n", ArrMhs[i].no_id);
40. printf("Nilai: %d\n", ArrMhs[i].nilai);
41. }
42. getch();
43. return 0;
44. }

4. Simpan perubahan program, File – Save (F2)


5. Kompilasilah program, Compile – Compile (Alt + F9) – OK
6. Jalankan program, Run – Run (Ctrl + F9)
7. Tuliskan keluaran program pada kotak, dan tambahkan sedikit kesimpulan
Modul Praktikum Algoritma dan Pemrograman 2

DAFTAR PUSTAKA

[1]. Horton, Ivor, Beginning in C Fifth Edition, Apress


[2] Deitel, Paul, Harvey, Deitel, 2008, C How to Program 6th Edition, Pearson Prentice
Hall, USA
[3] Oualline, Steve, 1997, Practical C Programming 3rd Edition,O’Rielly
[4] https://www.cprogramming.com
[5] https://www.programiz.com/c-programming
[6] http://www.cplusplus.com/doc/tutorial/
[7] https://www.dyclassroom.com/c/c-structures-and-arrays
[8] https://www.ntu.edu.sg/home/ehchua/programming/cpp/c1_Basics.html#zz-7.1
[9] https://www.studytonight.com/c/user-defined-functions-in-c.php
[10] https://fresh2refresh.com/c-programming/c-function/
[11] https://www.tutorialspoint.com/cprogramming/c_functions.htm
[12]http://www.materidosen.com/2017/06/array-multidimensi-dimensi-c-
lengkap.html
[13] https://owlcation.com/stem/How-to-work-with-Multidimensional-Array-in-C-
Programming

Designed by Armansyah, M.Kom Page83

Anda mungkin juga menyukai