MODUL PEMROGRAMAN BAHASA C

===

MODUL-TC-01

Pe n g e n a la n Ba h a sa C

1. Tujuan

Mengenal, mempelajari dan memahami dasar-dasar pemrograman bahasa-C.

2. Teori Dasar

Bahasa -C dikembangkan pada Laboratorium Bell (USA) sekitar tahun 1972, yang diciptakan oleh Dennis M. Ritchie, seorang pakar dalam berbagai bidang pemrograman. Bahasa C pertama kali diwujudkan pada komputer DEC PDP -11 yang memakai sistem operasi UNIX. Pada tahun 1978, Dennis M. Ritchie dan Brian W. Kernighan, mengeluarkan buku “The C Programming Language”, yang kemudian menjadi acuan pembuatan berbagai versi dari bahasa C.

Beberapa versi C yang diciptakan oleh berbagai kalangan untuk dioperasikan pada sistem yang lain selain UNIX, seperti PC-DOS atau MS-DOS. Kemudian untuk

membakukan (standarisasi) versi C yang ada, ANSI (American National Standarts

Institute ) membuat C standard ANSI yang kemudian berkembang menjadi bahasa C yang ada sekarang ini.

2.1. Fungsi main()

Program C pada hakekatnya tersusun atas sejumlah blok fungsi. Sebuah program minimal mengandung sebuah fungsi, dimana setiap fungsi terdiri dari satu atau beberapa penyataan. Setiap fungsi diawali dengan tanda kurung kurawal buka ( {) dan diakhiri dengan tanda kurung kurawal tutup ( }). Namun pada kenyataannya, suatu fungsi bias saja tidak mengandung pernyataan sama sekali, seperti dapat dilihat sebagai berikut : main() Program C pada hakekatnya tersusun atas sejumlah blok fungsi. Sebuah program minimal mengandung sebuah fungsi, dimana setiap fungsi terdiri dari satu atau beberapa penyataan. Setiap fungsi diawali dengan tanda kurung kurawal buka ( {) dan diakhiri dengan tanda kurung kurawal tutup ( }). Namun pada kenyataannya, suatu fungsi bias saja tidak mengandung pernyataan sama sekali, seperti dapat dilihat sebagai berikut : main()

deklarasi parameter; {

tubuh fungsi } Pada program C, main() adalah fungsi yang istimewa, dikarenakan fungsi ini harus

ada pada setiap program, sebab fungsi ini adalah yang menjadi titik awal dan akhir dari eksekusi program. Jika program terdapat lebih dari satu fungsi, fungsi main() biasa ditempatkan pada posisi paling atas dalam pendefinisian fungsi, hal ini hanya kebiasaan saja yang bertujuan untuk mempermudah pencarian terhadap program utama program. Jadi tidaklah merupakan keharusan.

2.2. Pengenalan fungsi printf()

Fungsi printf() merupakan fungsi yang umum dipakai untuk menampilkan suatu keluara n pada layar monitor. Sebagai contoh untuk menampilkan tulisan

Selamat Datang di STMIK -AMIKBANDUNG

statement yang diperlukan untuk menampilkannya adalah sebagai berikut : printf(“Selamat Datang di STMIK-AMIKBANDUNG”);

contoh statement diatas adalah pemanggilan fungsi dengan argumen/parameter berupa string. Konstanta string dalam pemrograman C ditulis dengan diawali dan diakhiri tanda petik ganda (“). Perlu diingat pula statement dalam bahasa pemrograman C selalu diakhiri dengan tanda titik koma (;). Tanda titik koma dipakai sebagai pemberhenti pernyataan dan bukanlah sebagai pemisah antara dua pernyataan. Contoh program sederhana dari fungsi printf() dapat dilihat sebagai berikut :

#include <stdio.h> main()

{ printf(“Selamat Datang di STMIK-AMIKBANDUNG”); }

Selamat Datang di STMIK-AMIKBANDUNG

2.3. Pengenalan praprosesor #include

#include merupakan salah satu pengarah praprosesor yang dipakai untuk membaca file yang dinamakan file judul (header file), yaitu file-file yang berisikan kumpulan fungsi dan konstanta. Turbo C mempunyai beberapa file header yang standar yang sering dipergunakan dalam pemrograman bahasa C. File-file header ini mempunyai ciri sendiri, yaitu namanya diakhiri dengan extentio n .h. Seperti dapat dilihat pada contoh diatas, #include <stdio.h> menyatakan pada kompiler agar membaca file bernama stdio.h pada saat melakukan proses kompilasi.

Bentuk umum penulisan dari statement praprosesor ini adalah sebagai berikut : #include <na mafile>

atau #include “namafile” Pada bentuk pertama ( #include <namafile> ) menyatakan bahwa pencarian file dilakukan

pada direktori khusus (direktori file include). Sedangkan pada bentuk kedua ( #include

“namafile ” ) menyatakan bahwa pencarian file dilakukan pertama kali pada direktori aktif tempat sumber program, dan seandainya tidak ditemukan maka pencarian akan dilanjutkan pada direktori lainnya yang sesuai dengan perintah pada sistem operasi (perintah PATH).

Pada kebanyakan program bahasa C, sering melibatkan file stdio.h yang merupakan file standar dalam Turbo C untuk proses Input/Output standar seperti printf().

2.4. Pengenalan Lebih Lanjut Fungsi printf()

Fungsi printf() mempunyai kegunaan yang sangat luas dalam pemrograman bahasa

C, dimana fungsi ini dapat dipakai untuk menampilkan tipe data string maupun tipe data yang lain. Dengan menggunakan fungsi ini, tampilan dapat diatur (diformat) dengan mudah. Sebagai contoh untuk menampilkan tampilan :

Selamat Datang di STMIK-AMIKBANDUNG

Dapat juga dengan menggunakan statement printf(“Selamat Datang di”);

printf(“STMIK-AMIKBANDUNG”); sedangkan jika kita ingin menampilkan

STMIK-AMIKBANDUNG

Kita dapat membuatnya dengan cara menyertakan karakter yang dinamakan karakter ganti baris-baru (pindah baris) yaitu :

\n

adapun contoh penulisan programnya dapat dilihat berikut ini printf(“Selamat Datang di\n”);

printf(“STMIK-AMIKBANDUNG”); Bentuk umum dari printf() adalah sebagai berikut :

printf(“string kontrol”, daftar argumen);

dimana string kontro l dapat berupa satu atau sejumlah karakter yang akan ditampilkan ataupun berisikan penentu format yang akan mengatus penampilan dari argumen yang terletak pada daftar argumen. Adapun beberapa penentu format dapat dilihat sebagai berikut :

Format Kegunaannya

%d Untuk menampilkan bilangan bulat (integer) %f

Untuk menampilkan bilangan pecahan (real/float) %c

Untuk menampilkan sebuah karakter %s

Untuk menampilkan sebuah string

Contoh penggunaan penentu format ini dapat dilihat sebagai berikut : #include <stdio.h>

main() {

printf(“Nama Mahasiswa : %s\n”, “Abdul Gani”); printf(“No. Siswa : %d\n”, 271);

printf(“Nilai : %f Grade : %c\n”, 71.5, ‘B’); }

jika program dijalankan akan menghasilkan Nama Mahasiswa : Abdul Gani No. Siswa : 271 Nilai : 71.500000 Grade : B jika program dijalankan akan menghasilkan Nama Mahasiswa : Abdul Gani No. Siswa : 271 Nilai : 71.500000 Grade : B

*/ . Sebagai contoh dapat dilihat berikut ini : /*

Ini Hanya Sebagai Komentar atau Keterangan Saja STMIK “AMIKBANDUNG”

3. Tugas Pendahuluan

1. Jelaskan penggunaan dari bahasa C menurut anda, dan berikan sedikit contoh keunggulan bahasa C dibandingkan dengan bahasa pemrograman yang lain?

2. Jelaskan apa yang anda ketahui tentang Interpreter dan Kompiler, bahasa C termasuk kedalam jenis Interpreter atau kompiler?

3. Jelaskan kegunaan dari fungsi karakter dibawah ini :

4. Procedure Percobaan

1. Buatlah program untuk dapat menampilkan tulisan sebagai berikut :

Selamat Datang di Lab. Komputer STMIK – “AMIKBANDUNG”

Jl. Jakarta No. 28 Bandung

2. Dengan menggunakan fungsi karakter \t dan fungsi string kontrol, buatlah program untuk menampilkan :

Nama Saya

: Budi Prakoso

Umur Saya

: 23 Tahun

Golongan Darah Saya

:A

Tinggi Badan saya

: 170 cm

Berat Badan saya

: 58 Kg

#include <stdio.h> main() {

printf(“Saya Lahir di %s, Tanggal %d %s %d\n”, “Jakarta”, 12, “Mei”, 1981); }

4. Tunjukan dimana letak kesalahan program berikut dan buatlah program tersebut supaya menjadi benar pada saat dijalankan. (* Belajar Program Turbo C *)

#include {stdio.h} main{} (

printf(“%d x %s %d %d pulau terlampaui/n”, 1, “kayuh”, 2, 3); printf(“Tak ada %s yang tak %c%ctak /n”, “gading”, ‘r’, ‘e’);

5. Tugas Akhir

Buatlah laporan hasil dari percobaan yang anda lakukan dengan singkat dan jelas sesuai dengan prosedur pembuatan laporan akhir. Berikan bahasan sesuai dengan hasil praktikum yang anda lakukan. Dan jangan lupa sertakan pula hasil tampilan layar (print out ) dari listing dan hasil running program, serta kesimpulan dari hasil percobaan anda yang anda lakukan.

Contoh Program 1.1

/*Contoh Program 1.1*/ #include <stdio.h> main() {

printf(“ BELAJAR DASAR BAHASA PEMROGRAMAN-C \n“); printf(“ DI \n“); printf(“ LABORATORIUM KOMPUTER \n“); printf(“ STMIK AMIK-BANDUNG \n“);

Contoh Program 1.2

/*contoh program 1.2*/ /*penggunaan fungsi printf()*/ #include <stdio.h> #include <conio.h> main() {

clrscr(); printf(“============================================\n”); printf(“:LAB. KOMPUTER STMIK AMIK – BANDUNG :\n“); printf(“:DASAR PEMROGRAMAN BAHASA-C :\n“); printf(“============================================\n”); printf(“ Contoh Program ini menerangkan\n”); printf(“ Penggunaan Fungsi output \n”); printf(“printf()\n”); getch();

Contoh Program 1.3

/*contoh program 1.3*/ /*penggunaan fungsi printf()*/ #include <stdio.h> #include <conio.h> main() {

clrscr(); printf(“============================================\n”); printf(“:LAB. KOMPUTER STMIK \””AMIK – BANDUNG\”” :\n“); printf(“:Jl. Jakarta No 28 Bandung :\n“);

printf(“============================================\n”); printf(“ Contoh Program ini menerangkan \n”); printf(“ Penggunaan Fungsi output \n”); printf(“ printf() dan Escape Key \\ \n”); getch();

/*contoh program 1.4*/ /*penggunaan fungsi input scanf() dan output printf()*/ /*dengan data pemasukan bertipe string*/ #include <stdio.h> #include <conio.h> main() {

char nama[15], kls[10], npm[10]; clrscr(); printf(“Ketikan Nama Anda: ”); scanf(“%s”, &nama); printf(“Ketikan Kelas Anda: ”); scanf(“%s”, &kls); printf(“Ketikan NPM Anda: ”); scanf(“%s”, &npm); clrscr(); printf(“==========================================\n”); printf(“

Nama

: %s”, nama);

printf(“

Kelas

: %s”, kls);

printf(“

NPM

: %s”, npm);

printf(“==========================================\n”); getch();

Contoh Program 1.5

/*contoh program 1.5*/ /*penggunaan fungsi input scanf() dan output printf()*/ /*dengan data pemasukan bertipe float dan integer()*/ #include <stdio.h> #include <conio.h> main() {

int bili1, bili2; float bilr1,bilr2; clrscr(); printf(“Masukkan bilangan tipe integer pertama:”); scanf(“%d”, &bili1); printf(“Masukkan bilangan tipe integer kedua :”); scanf(“%d”, &bili2); printf(“Masukkan bilangan tipe float pertama :”); scanf(“%f”, &bilr1); printf(“Masukkan bilangan tipe float kedua :”); scanf(“%f”, &bilr2); clrscr(); printf(“PENGGUNAAN FORMAT SESUAI DENGAN TIPE DATA\n”); printf(“============================================\n”); printf(“ Bilangan tipe integer1 :%d \n”, bili1); printf(“ Bilangan tipe integer2 :%d \n”, bili2); printf(“ Bilangan tipe float 1 :%10.4f \n”, bilr1); printf(“ Bilangan tipe float 2 :%10.4f \n”, bilr2); printf(“============================================\n”); getch();

/*contoh program 1.6*/ /*penggunaan fungsi infut scanf() dan output printf()*/ /*dengan data pemasukan bertipe float dan integer*/ #include <stdio.h> #include <conio.h> main() {

int bili1, bili2, jbili; float bilr1, bilr2, jbilr, jbilir; clrscr(); printf(”Masukkan bilangan tipe integer pertama

:”); scanf(“&d”, &bili1); printf(”Masukkan bilangan tipe integer kedua :”); scanf(“&d”, &bili2); printf(”Masukkan bilangan tipe float pertama

:”); scanf(“&f”, &bilr1); printf(”Masukkan bilangan tipe float kedua

:”);

scanf(“&f”, &bilr2); jbili

= bili1 + bili2; jbilr

= bilr1 + bilr2; jbilir = jbili + jbilr; clrscr(); printf(“PENGGUNAAN FORMAT SESUAI DENGAN TIPE DATA\n”); printf(“============================================\n”); printf(“ Jumlah dua bil. Tipe integer

:%d \n”, jbili); printf(“ Jumlah dua bil. Tipe float

:%.4f \n”, jbilr); printf(“ Total kedua bilangan diatas

:%.4f \n”, jbilir); printf(“============================================”); getch();

MODUL-TC-02

D a sa r - d a sa r Pe m r og r a m a n C

1. Tujuan

Mengenal, memahami, dan mengerti tentang elemen dasar pada pemr ograman Turbo C.

2. Teori Dasar 2.1. Identifier

Identifier adalah nama yang biasa digunakan untuk variabel, konstanta, fungsi atau objek yang lain yang didefinisikan oleh pemrogram. Identifier itu sendiri mempunyai aturan-aturan sebagai berikut :

• Harus diawali dengan huruf ( A..Z, a..z) atau karakter garis bawah (_). • Selanjutnya dapat berupa huruf, digit ( 0..9) atau karakter garis bawah atau tanda dollar ( $) • Panjang identifier boleh terdiri lebih dari 32 karakter, akan tetapi hanya 32 karakter pertama yang akan dianggap berarti. Untuk menghindari kesalahan, identifier tidak boleh menggunakan nama yang

tergolong sebagai kata kunci (reserved words) yang ada didalam bahasa C (contohnya : main() ), baik dipakai sebagai identifier maupun dipakai untuk nama fungsi, konstanta maupun variabel.

2.2. Tipe Data

Pengertian data menyiratkan suatu nilai yang biasa dinyatakan dalam bentuk baik itu konstanta maupun variabel. Pada konstanta menyatakan nilai yang tetap, sedangkan

variabel menyatakan nilai yang berubah-ubah selama eksekusi program berlangsung. Data berdasarkan jenisnya dibagi menjadi lima kelompok, yang dinamakan tipe data dasar, yaitu :

Char

8 -128 s/d 127

Karakter

Int

16 -32768 s/d 32767

Bilangan integer

Float +38 32 3.4E s/d 3.4E Bilangan real presisi tunggal Double

64 1.7E -308 s/d 1.7E +308 Bilangan real presisi ganda Void

0 Tak bertipe

2.3. Variabel

Variabel digunakan dalam program untuk menyimpan suatu nilai, dan nilai yang ada dapat berubah selama proses eksekus i berlangsung. Variabel yang akan dipergunakan

dalam program haruslah terlebih dahulu didefinisikan. Untuk memasukkan nilai ke dalam suatu variabel yang telah didefinisikan, dalam Turbo C bentuk pernyataan yang digunakan adalah sebagai berikut :

NamaVariabel = Nilai;

Adakalanya dalam penulisan program, setelah variabel tersebut dideklarasikan, variabel tersebut kemudian diberi nilai awal, seperti dapat dilihat pada contoh program berikut ini :

int total; total = 100;

Dalam bahasa pemrograman C, kita dapat menyingkat melalui pendeklarasian yang disertai penugasan nilai, seperti dapat dilihat pada contoh berikut :

Int total = 100;

Hal ini merupakan kelebihan dari bahasa C, dikarenakan selain dapat menghemat dalam penulisan program, juga dapat memberikan kejelasan (khususnya untuk variabel yang perlu untuk diberi nilai awal).

2.4. Konstanta

Konstanta menyatakan suatu nilai yang tetap, berbeda dengan variabel, konstanta tidak dideklarasikan, akan tetapi seperti halnya variabel, konstanta juga memiliki tipe. Dalam penulisan konstanta mempunyai aturan tersendiri, sesuai dengan tipe data masing-masing.

Untuk konstanta karakter (char) dalam penulisannya diawali dan diakhiri dengan tanda petik tunggal (‘). Contohnya ‘A’. Untuk konstanta integer (int), ditulis dengan tanpa mengandung pemisah ribuan dan tidak mengandung pecahan. Sedangkan untuk konstanta real (float dan double) dapat mengandung nilai Untuk konstanta karakter (char) dalam penulisannya diawali dan diakhiri dengan tanda petik tunggal (‘). Contohnya ‘A’. Untuk konstanta integer (int), ditulis dengan tanpa mengandung pemisah ribuan dan tidak mengandung pecahan. Sedangkan untuk konstanta real (float dan double) dapat mengandung nilai

2.5. Operator

Operator merupakan symbol atau karakter yang biasa dilibatkan dalam program untuk melalukan suatu operasi atau manipulasi, seperti operasi untuk menjumlahkan, mengurangkan. Sebagian operator C tergolong sebagai operator binary, yaitu operator yang dikenakan terhadap dua buah nilai operand, contoh :

a+b

dimana symbol + adalah operator untuk melakukan operasi penjumlahan dari kedua operand-nya yaitu a dan b. Contoh operator lain adalah :

-c

symbol – (minus) juga merupakan operator, akan teta pi karena hanya melibatkan satu operand saja, maka disebut dengan operator unary.

Selain operator + (penjumlahan) untuk operator binary, juga terdapat operator lain yang diperlukan untuk operasi aritmatika, seperti dapat dilihat pada tabel berikut :

Operator Keterangan

* Operasi Perkalian /

Operasi Pembagian %

Operasi Sisa Pembagian +

Operasi Penjumlahan -

Operasi Pengurangan

2.6. Operator Penurunan dan Penaikan (increase dan decrease)

Dalam pemrograman sering kali kita melakukan proses penaikan dan penurunan (increase dan decrease), seperti contoh berikut ini : x = x + 1; /* proses penaikan / increase y = y - 1; /* proses penurunan / decrease

pada pemrograman C, statement tersebut diatas dapat disingkat menjadi : ++x --y atau x++ y--

Turbo C juga menyediakan enam buah operator untuk keperluan manipulasi bit. Seluruh operator manipulasi bit hanya biasa dikenakan pada operand bertipe integer atau karakter. Adapun operator manipulasi bit tersebut dapat dilihat pada tabel berikut :

Operator Operasi

<< Geser bit ke kiri >>

Geser bit ke kanan &

Dan (AND) |

Atau (OR) ^

XOR ~

NOT (komplemen)

Bentuk umum penulisan operator geser kiri dan geser kanan, adalah sebagai berikut : Nilai << jumlah bit di geser ke kiri Nilai >> jumlah bit di geser ke kanan

Contoh penulisannya :

x = x << 1; /* geser ke kiri satu bit */

Bentuk umum pemakaian operator OR ( |), AND (&), XOR (^), adalah sebagai berikut :

operand1 operator operand2

Operasi bit dilakukan antara operand1 dan operand2 untuk posisi bit yang sama(bit yang ke 1 pada operand1 akan dibandingkan dengan bit yang ke 1 juga pada operand2).

Sedangkan bentuk umum penulisan operator komplemen adalah sebagai berikut : -operand

dimana operator ini mempunyai sifat membalik (invers), dimana nilai nol akan berubah menjadi satu, demikian pula sebaliknya.

2.8. Ungkapan

Ungkapan atau ekspresi dalam bahasa pemrograman C, dapat berupa : • Pengenal • Konstanta • Variabel pseudo (contohnya _AX, _AL yang menyatakan variabel register) • Atau kombinasi elemen diatas dengan operator.

3+2–1 dimana 3,2, dan 1 adalah operand dan symbol + dan – adalah operator. Nilai ungkapan itu sendiri adalah hasil dari penjumlahan 3 dan 2, dikurangi 1. Dalam ungkapan, jika terjadi perbedaan antara satu operand dengan operand yang lainnya, maka dengan sendirinya akan dikonversi terlebih dahulu menjadi tipe yang sama. Dimana aturan yang berlaku dalam pengkonversian tipe aritmatika ini mempunyai aturan, yaitu :

1. semua tipe char dan short int akan dikonversi menjadi int, dan semua tipe float akan dikonversikan menjadi double

2. untuk setiap pasangan operand, berlaku : Ø jika salah satu operand bertipe long double, maka operand pasangannya akan

dikonversikan menjadi long double. Ø jika salah satu operand bertipe double, maka operand pasangannya akan dikonversikan menjadi double. Ø jika salah satu operand bertipe long, maka operand pasangannya akan dikonversikan menjadi long. Ø jika salah satu operand bertipe unsigned, maka operand pasangannya akan dikonversikan menjadi unsigned. Akan tetapi aturan tersebut tidak berlaku pada operator penugasan ( =). Pada operator penugasan, nilai ungkapan yang terletak dikanan secara otomatis akan dikonversikan sesuan dengan tipe variabel yang terletak dikiri. Contohnya dapat dilihat berikut :

int jumlah; float harga, total; total = harga * jumlah;

pertama harga akan dikonversikan menjadi double , dikarenakan operand harga telah berubah menjadi tipe double maka pasangannya juga akan dirubah menjadi tipe double. Selanjutnya operasi ini menghasilkan tipe double, yang kemudian dikonversi menjadi tipe float dikarenakan variabel di kanan bertipe float.

Suatu konstanta dapat diberi nama. Pendefinisian konstanta ini dilakukan dengan menggunakan statement #define. Bentuk umum dari statement ini adalah : #define namakonstanta nilaikonstanta contoh penulisannya sebagai berikut :

#define total 100 #define discount 10 #define bel “\a”

3. Tugas Pendahuluan

1. Sebutkan dan jelaskan fungsi dari kata kunci (reserved word) yang ada dalam Turbo C. (Minimal 10 kata kunci / reserved word , contohnya : kata kunci const).

2. Bahasa C mempunyai kelebihan dalam menyederhanakan persamaan-persamaan matematika, sederhanakanlah persamaan-persamaan yang berikut ini dengan menggunakan operator yang berlaku pada bahasa C. x=x+5 total = total * 10 bonus = bonus + 100

3. Tuliskan urutan hirarki dari operator aritmatika untuk operator penjumlahan ( +), pengurangan ( -), Pembagian (/), Modulus (%), Increase (++), dan Decrease(--).

4. Prosedure Percobaan

1. Cobalah program berikut ini, kemudian berapakah hasil akhir yang dimunculkan?

#include <stdio.h> main() {

int x = 31; int a = 31; x = x + 5; x = x – 7; printf(“Nilai x adalah %d\n“,x); printf(“Nilai a adalah %d\n“,a); int x = 31; int a = 31; x = x + 5; x = x – 7; printf(“Nilai x adalah %d\n“,x); printf(“Nilai a adalah %d\n“,a);

3. Buatlah program untuk menggeser nilai suatu bilangan bulat berikut ini:

a. Jika nilai bilangan bulat itu adalah 16, jika digeser ke kiri sebanyak 2 akan menghasilkan nilai 64.

b. Jika nilai bilangan bulat itu adalah 15 jika digeser ke kanan 1 kali akan menghasilkan nilai 7.

c. Jika nilai bilangan bulat itu adalah 24 jika digeser ke kanan 3 kali, kemudian digeser ke kiri 1 kali, maka berapakah nilai akhirnya.

4. Buatlah program untuk operasi Increase dan Decrease berikut ini kemudian amati hasilnya, apakah ada perbedaan. (nilai awal dari variabel a adalah 5).

5. Perhatikan listing program berikut ini #include <stdio.h>

main() {

float radius, keliling, luas; radius = 20; keliling = 2 * 3.14 * radius; luas = 0.5 * 3.14 * radius * radius; printf(“Perhitungan Lingkaran\n”) printf(“Jari-jari Lingkaran = %f\n”, radius) printf(“Keliling Lingkaran = %f\n”, keliling) printf(“Luas Lingkaran = %f\n”, luas)

} dengan menggunakan statement #define, definisikan nilai 3.14 menjadi nilai phi,

kemudian perhatikan hasilnya.

Buatlah laporan hasil dari percobaan yang anda lakukan dengan singkat dan jelas sesuai dengan prosedur pembuatan laporan akhir. Berikan bahasan sesuai dengan hasil praktikum yang anda lakukan. Dan jangan lupa sertakan pula hasil tampilan layar (print out ) dari listing dan hasil running program, serta kesimpulan dari hasil percobaan anda yang anda lakukan.

Contoh Program 2.1

/* Contoh Program 2.1*/ /* Inisialisasi suatu variabel */ #include <stdio.h> main() {

/* Deklarasi variabel */ float harga_satuan, jumlah, harga_total; /* Membersihkan layar */ clrscr(); /* Inisialisasi hatga total */ harga_satuan = 112.50; jumlah = 50; /* Menghitung harga total */ harga_total = harga_satuan * jumlah; /* Mencetak harga total */ printf(“ Harga Total : %f”, harga_total);

Contoh Program 2.2

/* Contoh Program 2.2 */ /* mendeklarasikan konstanta */ #include <stdio.h> main() {

float bil1, bil2; const float bil = 2.50; clrscr(); printf(“Inputkan suatu bilangan : ”); scanf(“ %f”, &bil1); printf(“Inputkan bilangan lain

scanf(“ %f”, &bil1); bil2 = bil1 + bil; printf (“Jumlah bilangan ini dengan suatu konstanta : %f”, bil2);

Contoh Program 2.3

/* contoh program 2.3 */ /* Penggunaan ‘++’ di depan dan di belakang nama variabel */ #include <stdio.h> main() {

int bil = 25 clrscr(); printf(“%d \n”, ++bil); printf(“%d \n”, bil++); printf(“%d \n”, bil); printf(“%d \n”, bil); printf(“%d \n”, bil++); printf(“%d \n”, ++bil);

/* Contoh Program 2.4 */ /* Contoh penggunaan ‘++’ dan ‘--’ */ #include <stdio.h> main() {

int bil = 15; clrscr(); printf(“ %d \n”, ++bil); printf(“ %d \n”, bil--); printf(“ %d \n”, bil);

printf(“ %d \n”, bil++); printf(“ %d \n”, bil--); printf(“ %d \n”, bil++); printf(“ %d \n”, --bil); printf(“ %d \n”, bil); printf(“ %d \n”, ++bil); printf(“ %d \n”, --bil); printf(“ %d \n”, bil);

Contoh Program 2.5

/* Contoh Program 2.5

/* Operasi Aritmatika terhadap Data Campuran

/* yang hasilnya disimpan dalam variabel integer */ #include <stdio.h> main() {

int bil 1 = 1000, bil3, bil4, bil5, bil6; float bil2 = 3.5; clrscr(); bil3 = bil1 + bil2; bil4 = bil1 - bil2; bil5 = bil1 * bil2; bil6 = bil1 / bil2; printf(“ %4d + %f = %d \n”, bil1, bil2, bil3); printf(“ %4d - %f = %d \n”, bil1, bil2, bil4); printf(“ %4d * %f = %d \n”, bil1, bil2, bil5); printf(“ %4d / %f = %d \n”, bil1, bil2, bil6);

Contoh Program 2.6

/* Contoh program 2.6

/* Operasi Aritmatika terhadap Data Campuran

/* yang hasilnya disimpan dalam variabel float */ #include <stdio.h> main() {

int bil1 = 1000; float bil2 =3.5, bil3, bil4, bil5, bil6; clrscr(); bil3 = bil1 + bil2; bil4 = bil1 - bil2; bil5 = bil1 * bil2; bil6 = bil1 / bil2; printf(“ %4d + %f = %f \n”, bil1, bil2, bil3); printf(“ %4d - %f = %f \n”, bil1, bil2, bil4); printf(“ %4d * %f = %f \n”, bil1, bil2, bil5); printf(“ %4d / %f = %f \n ”, bil1, bil2, bil6);}

MODUL-TC-03

Ope r a si I n pu t da n Ou t pu t

1. Tujuan

Mengenal, mempelajari dan memahami statement input dari keyboard dan output ke layar monitor pada pemrograman Turbo C.

2. Teori Dasar

Proses memasukkan data ( input) dan menampilkan data (output) merupakan sebuah proses yang sering dilakukan dalam pemrograman. Proses pemasukkan data umumnya dilakukan dengan menggunakan keyboard, sedangkan proses menampilkan data umumnya ditujukan ke layar monitor. Untuk proses input dan output dalam bahasa pemrograman C, kita menggunakan statement printf() , putf() , putchar(), scanf() , getch() , dan getche().

2.1. Statement printf()

Fungsi printf() merupakan fungsi yang paling umum digunakan dalam menampilkan data. Berbagai jenis tipe data dapat ditampilkan memakai fungsi ini. Bentuk

umum fungsi ini adalah :

printf(“string kontrol”, argumen1, argumen2, ...);

string kontrol dapat berupa keterangan yang akan ditampilkan pada layar monitor beserta penentu format (seperti %d, %s, dll). Argumen adalah data yang akan ditampilkan kelayar sesuai dengan penentu format yang telah ditetapkan dalam string kontrol. Argumen ini dapat berupa variabel, konstanta, maupun ungkapan. Daftar penentu format yang dapat dipergunakan pada bahasa pemrograman C, adalah sebagai berikut :

%d atau %I Untuk menampilkan bilangan bulat integer %f

Untuk menampilkan bilangan real dalam bentuk pecahan

%e atau %E

Untuk menampilkan bilangan real dalam bentuk eksponen

%c Untuk menampilkan karakter %s

Untuk menampilkan string %u

Untuk menampilkan unsigned integer %ld

Untuk menampilkan bilangan long integer %lf

Untuk menampilkan bilangan double %x atau %X

Untuk menampilkan bilangan bulat unsigned dalam bentuk hexadesimal

%o Untuk menampilkan bilangan bulat unsigned dalam bentuk oktal h Merupakan awalan yang digunakan untuk menyatakan short int

L Merupakan awalan yang digunakan untuk menyatakan long double

Untuk memformat bentuk keluaran dari penentu format yang kita gunakan kita dapat memakainya dengan cara menyisipinya dengan bilangan bulat dengan spesifikasi bilangan bulat pertama untuk menyatakan panjang karakter, dan bilangan bulat yang kedua untuk menyatakan desimal (berapa digit nilai dibelakang tanda koma ). Contohnya dapat dilihat pada program berikut :

printf(“%7.2f\n”,2.5);

Hasil output programnya adalah :

Hal ini juga berlaku pada tipe data string, akan tetapi jika kita menggunakan format seperti ini, maka bentuk tampilannya akan menjadi rata kiri, sehingga untuk agar tampilan dari tipe data string agar menjadi rata kanan, kita menggunakan symbol – (minus) setelah tanda %, contohnya :

printf(“%-10s”,”STMIK ABG”);

Hasil output programnya adalah : S T M I K A B G

2.2. Statement puts()

Fungsi puts() digunakan khusus untuk menampilkan data tipe string ke layar monitor. Akan tetapi fungsi ini mempunyai sifat khusus, dimana string yang ditampilkan

akan secara otomatis akan diakhiri dengan karakter \n (untuk pindah baris). Contoh penulisan statement puts() ini dapat dilihat pada contoh program berikut :

#include <stdio.h> main {

puts(“Selamat Datang”); puts(“Di Lab STMIK AMIKBANDUNG”);

pada hasil kompilenya pun jika kita mempergunakan statement ini ukuran filenya akan lebih kecil dibanding jika kita menggunakan statement printf().

2.3. Statement putchar()

Fungsi putchar() digunakan khusus untuk menampilkan sebuah karakter ke layar monitor. Penampilan karakternya tidak perlu disertai karakter pemindah baris. Sebagai contoh, lihat program berikut : putchar(‘A’);

akan menghasilkan keluaran yang sama dengan printf(“%c”,’A’);

2.4. Statement scanf()

Fungsi scanf() merupakan fungsi yang dapat digunakanan untuk memasukkan berbagai jenis tipe data. Berikut ini adalah bentuk umum penulisan dari fungsi scanf() :

scanf(“penentu format”,&variabel);

Disebelah depan dari variabel diberi tanda (&) berfungsi sebagai penunjuk operator alamat (address operator). Contoh penggunaan dari fungsi scanf() adalah sebagai berikut :

#include <stdio.h> main() {

int nilai; printf(“Masukkan Nilai Praktikum Anda = ”); scanf(“%d”,&nilai); printf(“Nilai Praktikum Anda = %d”, nilai);

Penentu format yang dipergunakan dalam fungsi scanf() pada prinsipnya sama dengan penentu format yang dipakai dalam fungsi printf(). Pada fungsi scanf() kita dapat langsung

memasukkan lebih dari satu data ke variabel hanya dengan menggunakan pemisah karakter spasi untuk masing-masing datanya, contohnya sebagai berikut :

scanf(“%c %d”, &karakter, &nilai);

A 10

Dimana variabel karakter akan berisi nilai ‘A’ dan variabel nilai akan berisikan nilai 10.

2.5. Statement getch()

Fungsi getch() dipergunakan untuk membaca sebuah karakter, dimana karakter yang dimasukkan tidak perlu diakhiri dengan menekan tombol ENTER. Dan karakter yang

dimasukkan tidak akan ditampilkan pada layar monitor. Bentuk umum penulisan dari fungsi ini adalah :

variabelkarakter = getch();

dimana variabelkarakter adalah hasil dari karakter yang dimasukkan melalui fungsi getch() .

2.6. Statement getche()

Fungsi getche() mempunyai kegunaan yang sama dengan fungsi getch() hanya bedanya fungsi getche() ini akan menampilkan karakter yang dimasukkan pada layar monitor. Bentuk umum penulisan dari fungsi ini adalah :

variabelkarakter = getche();

dimana variabelkarakter adalah hasil dari karakter yang dimasukkan me lalui fungsi getche() .

3. Tugas Pendahuluan

1. Terdapat pada header file apakah fungsi-fungsi input dan output berikut ini

a. printf()

b. puts()

c. putchar()

d. scanf()

e. getch()

f. getche()

2. Jelaskan dan apa hasil dari keluaran program penentu format berikut ini :

a. printf(“%10d”,12345);

b. printf(“%8,2f”,500,25);

c. printf(“%20s”,”Hallo”);

d. printf(“%-20s”,”Apa Kabar”);

1. Buatlah program untuk dapat menampilkan output berikut ini, dimana seluruh kalimat rata kanan pada posisi kolom ke 79.

Halo Apa Kabar

2. Perhatikan program input data berikut, tunjukkan kesalahan penulisannya dan betulkan, kemudian lihat hasil programnya.

#include {stdio.h} #include {conio.h} main() (

char nama[20]; float npm; clrscr(); printf(‘Masukkan Nama Anda : ‘); scanf(‘%s’,&nama); printf(‘Masukkan NPM Anda : ‘); scanf(‘%f’,&npm); clrscr(); printf(‘Nama Anda : ’,&nama); printf(‘NPM Anda : ’,&npm);

3. Buatlah program untuk memasukkan data dari keyboard untuk menghitung luas dan keliling lingkara n, dengan rumus sebagai berikut, dan nilai jari-jari diinput dari keyboard.

a. Luas = 0.5 * 3.14 * Jari2

b. Keliling = 2 * 3.14 * Jari

4. Dengan menggunakan fungsi getch() , buatlah program memasukkan data dari keyboard untuk karakter A, B, C, D dan E, akan tetapi hasil inputnya tidak boleh

muncul dilayar monitor, yang boleh hanya hasil outputnya saja, contoh output programnya :

Masukkan Karakter Masukkan Karakter Masukkan Karakter Masukkan Karakter Masukkan Karakter Output dari karakter yang anda masukkan :

Buatlah laporan hasil dari percobaan yang anda lakukan dengan singkat dan jelas sesuai dengan prosedur pembuatan laporan akhir. Berikan bahasan sesuai dengan hasil praktikum yang anda lakukan. Dan jangan lupa sertakan pula hasil tampilan layar (print out ) dari listing dan hasil running program, serta kesimpulan dari hasil percobaan anda yang anda lakukan.

Contoh Program 3.1

/* Contoh Program 3.1 */ /* Menghitung luas segiempat */

#include <stdio.h> main() {

float panjang, lebar, luas; clrscr(); /* Input data – panjang dan lebar */ printf(“Panjang Segi Empat : “); scanf(“ %f”, &panjang); printf(“Lebar Segi Empat

scanf(“ %f”, &lebar); /* Menghitung luas segiempat */

luas = panjang * lebar; /* Mencetak luas segiempat*/ printf(“Luas Segi Empat

: %.4f \n”, luas); /* Mencetak Alamat variabel-variabe yang digunakan*/ printf(“Alamat Variabel Panjang

: %u \n”, &panjang); printf(“Alamat Variabel Lebar

: %u \n”, &lebar); printf(“Alamat Variabel Luas

: %u \n”, &luas); }

Contoh Program 3.2

/* contoh program 3.2 */ /* Program konversi jam:menit ke menit */ #include <stdio.h> main() {

int jam, menit, hasil; clrscr(); /* Cetak judul

printf(“ KONVERSI JAM : MENIT KE MENIT \n”); /* Inputkan jam : menit

printf(“ Inputkan jam dan menit (jam:menit) : ”); scanf(“ %d : %d”, &jam, &menit); /* Hitung konversi

hasil = jam * 60 + menit; /* Cetak hasil

printf(“ %d jam %d menit = %d menit \n”, jam, menit, hasil); }

Contoh Program 3.3

/* contoh program 3.3 * Menghitung luas dan keliling lingkaran */

#include <stdio.h> main() {

float jari, luas kell; const float PI = 4.141592 clrscr(); /* Cetak Judul */ printf(“ PROGRAM MENGHITUNG KELILING DAN LUAS LINGKARAN \n”); float jari, luas kell; const float PI = 4.141592 clrscr(); /* Cetak Judul */ printf(“ PROGRAM MENGHITUNG KELILING DAN LUAS LINGKARAN \n”);

: %f \n” ,kell);

printf(“ Luas

: %f \n“ ,luas);

Contoh Program 3.4

/* Contoh program 3.4

*/

/* Program konversi huruf besar ke kecil

*/

#include <stdio.h> #include <conio.h> main() {

char besar, kecil; clrscr() /* Cetak judul

*/

printf(“ PROGRAM KONVERSI HURUF \n”); /* Inputkan sebuah huruf besar

*/

printf(“ Inputkan sebuah huruf besar (A - Z)”); besar = getche(); /* Konversi ke huruf kecil

*/

kecil = besar + 32; /* Cetak huruf kecilnya

*/

printf(“ Huruf kecil dari %c adalah %c”, besar, kecil); }

MODUL-TC-04

Pe n g a m b ila n Ke p u t u sa n

1. Tujuan

Mengenal, mempelajari dan memahami pengambilan keputusan (conditional statement ) dalam bahasa C menggunakan if , if-else, switch dan break.

2. Teori Dasar

Banyak persoalan yang memerlukan pengambilan keputusan dalam pemrograman, untuk keperluan itu bahasa C menyediakan conditional statement if , if-else, switch dan break, dengan kondisi yang umum dipakai berupa keadaan benar atau

salah.

2.1. Operator Relasi

Dalam mempelajari statement pengambilan keputusan If atau If-Else umumnya banyak dijumpai operator relasi dan operator logika. Operator relasi biasanya dipakai untuk membandingkan dua buah nilai. Hasil dari pembandingan berupa keadaan benar atau salah. Adapun keseluruhan operator relasi dapat dilihat pada tabel berikut ini :

Operator Relasi

Arti

Lebih besar dari

Lebih besar dari atau sama dengan

Lebih kecil dari

Lebih kecil dari atau sama dengan

Sama dengan

Tidak sama dengan

Perlu diperhatikan untuk operator relasi sama dengan ( ==) berbeda dengan operator (=) yang merupakan operator penugasan. Jika terjadi kesalahan penulisan seperti ini, bahasa C tidak akan memberikan pesan kesalahan, karena kedua operator ini bentuk penulisannya benar.

Operator logika biasa digunakan untuk menggabungkan lebih dari satu ungkapan relasi. Operator logika yang dikenal oleh bahasa C dapat dilihat pada tabel berikut :

Operator Logika

Arti

Dan (logika AND)

Atau (logika OR)

Bukan (logika NOT )

Bentuk umum penulisan operator logika ini adalah : operand1 operatorlogika operand2 dimana operand1 dan operand2 dapat berupa ungkapan relasi maupun ungkapan logika.

Dan hasil dari ungkapannya dapat berupa keadaan benar atau salah. Tabel berikut ini akan memberikan penjelasan hasil operasi ungkapan logika yang menggunakan operator && maupun || untuk berbagai kemungkinan keadaan operand.

Hasil Operator Logika Operand1

2.3. Statement Kondisi 2.3.1. Statement if

Bentuk umum penyataan if adalah sebagai berikut :

if (kondisi) pernyataan

Jika kondisi bernilai benar maka penyataan akan dikerjakan, dengan kata lain jika kondisi

bernilai salah maka penyataan tidak akan dikerjakan. Alur dari proses statement if dibagi menjadi dua cabang dan pasti hanya satu cabang saja yang akan dilaluinya. Untuk pernyataan dapat berupa sebuah pernyataan tunggal (hanya terdiri dari satu baris penyataan), penyataan majemuk (terdiri dari lebih dari satu baris penyataan), atau pernyataan kosong (tidak mengandung satupun baris pernyataan). Perlu diingat jika pernyataan yang akan diberikan adalah pernyataan majemuk, maka jangan lupa untuk memberikan tanda kurung kurawal buka pada awal pernyataan dan tanda kurung kurawal

tutup pada akhir pernyataan.

Bentuk umum penyataan if-else adalah sebagai berikut :

if (kondisi) pernyataan 1 else pernyataan 2

Statement if-else digunakan jika pencabangan yang kedua (jika nilai kondisi tidak dipenuhi) harus menjalankan penyataa n. Seperti halnya statement if, pernyataan 1 dan pernyataan 2, pernyataan dapat berupa sebuah pernyataan tunggal (hanya terdiri dari satu baris penyataan), penyataan majemuk (terdiri dari lebih dari satu baris penyataan), atau pernyataan kosong (tidak mengandung satupun baris pernyataan). Perlu diingat jika pernyataan yang akan diberikan adalah pernyataan majemuk, maka jangan lupa untuk memberikan tanda kurung kurawal buka pada awal pernyataan dan tanda kurung kurawal tutup pada akhir pernyataan.

2.3.3. Nested if (pernyataan if di dalam if)

Didalam pernyataan if atau if-else bisa saja terdapat lagi pernyataan if atau if-else yang lain. Dimana if yang terdapat didalam ini adalah bagian dari pernyataan if atau else yang diluarnya. Cara dari penulisan nested if dapat dilihat berikut ini :

if (kondisi-1) if ( kondisi-2) pernyataan 1 else

pernyataan 2 else if ( kondisi-3) pernyataan 3 else pernyataan 4

Seperti halnya statement if dan if-else, pernyataan 1, pernyataan 2, pernyataan 3, dan pernyataan 4, pernyataannya dapat berupa sebuah pernyataan tunggal (hanya terdiri dari satu baris penyataan), penyataan majemuk (terdiri dari lebih dari satu baris penyataan), atau pernyataan kosong (tidak mengandung satupun baris pernyataan). Perlu diingat jika pernyataan yang akan diberikan adalah pernyataan majemuk, maka jangan lupa untuk memberikan tanda kurung kurawal buka pada awal pernyataan dan tanda kurung kurawal tutup pada akhir pernyataan.

Pernyataan else-if sebenarnya mirip dengan nested if, hanya saja kelebihannya struktur yang menghasilkan bentuk penulisan program yang sederhana. Struktur penulisan pernyataan else-if dapat dituliskan sebagai berikut :

if (kondisi-1) pernyataan 1 else if (kondisi-2) pernyataan 2 else pernyataan 3

Seperti halnya statement if, if-else, dan nested if, pernyataan 1, pernyataan 2, dan pernyataan 3, pernyataannya dapat berupa sebuah pernyataan tunggal (hanya terdiri dari satu baris penyataan), penyataan majemuk (terdiri dari lebih dari satu baris penyataan), atau pernyataan kosong (tidak mengandung satupun baris pernyataan). Perlu diingat jika pernyataan yang akan diberikan adalah pernyataan majemuk, maka jangan lupa untuk memberikan tanda kurung kurawal buka pada awal pernyataan dan tanda kurung kurawal tutup pada akhir pernyataan.

2.3. Statement switch dan break

Statement switch dan break merupakan suatu perintah untuk memeriksa data yang bertipe karakter atau integer, penggunaan perintah ini lebih sempit dibandingkan penggunaan perintah else if, dan umumnya dipergunakan untuk menyelesaikan

program yang memiliki cabang yang banyak. Bentuk umum dari penulisan statement switch dan break adalah sebagai berikut :

switch (ekspresi) {

case konstanta-1

pernyataan 1 break;

case konstanta-2

pernyataan 2 break;

default: pernyataan 3 }

Dimana ekspresi adalah ungkapan yang bernilai karakter atau integer. Dan konstanta 1 dan konstanta 2 juga dapat berupa konstanta karakter atau konstanta integer. Setiap pernyataan dapat berupa sebuah atau beberapa pernyataan.

seterusnya, sampai ditemukan nilai yang cocok dengan nilai konstanta tersebut maka akan menjalankan penyataan yang terdapat dibawah nilai konstanta yang cocok tersebut. Selanjutnya pada pernyataan break akan menyebabkan eksekusi akan diarahkan pada akhir dari statement switch. Jika ternyata sampai pada pengujian case yang terakhir tidak terdapat kecocokan, maka pernyataan yang akan dijalankan adalah pernyataan yang ada pada kata kunci default.

3. Tugas Pendahuluan

1. Sebutkan dan jelaskan operator-operator relasi yang ada pada bahasa C.

2. Sebutkan dan jelaskan operator-operator logika yang ada pada bahasa C.

3. Sebutkan urutan dari yang tertinggi sampai yang terendah untuk operator relasi dan operator logika.

4. Jelaskan perbedaan antara statement if , if-else, nested if, switch dan break .

4. Prosedure Percobaan

1. Dengan menggunakan operator relasi buatlah program untuk menghitung nilai diskon dari pembelian barang, dengan ketentuan sebagai berikut : Ø Tidak mendapatkan diskon jika pembelian kurang dari 50000 Ø Jika pembelian lebih dari atau sama dengan 50000, akan mendapatkan diskon

5% dari total pembelian. Contoh hasil running program harus bisa seperti dibawah ini :

Masukkan besarnya pembelian : Rp. 20000 Besarnya diskon

: Rp. 0.00

Besar yang harus dibayarkan : Rp. 20000

Contoh lainnya :

Masukkan besarnya pembelian : Rp. 50000 Besarnya diskon

: Rp. 2500.00

Besar yang harus dibayarkan : Rp. 47500

2. Dengan masalah yang sama seperti diatas buatlah program dengan ketentuan sebagai berikut : Ø Tidak mendapatkan diskon jika pembelian kurang dari 50000

Ø Jika pembelian lebih dari atau sama dengan 50000 dan kurang dari 100000, akan mendapatkan diskon 5% dari total pembelian.

Ø Jika pembe lian lebih dari atau sama dengan 100000, akan mendapatkan diskon 10% dari total pembelian

Contoh hasil running program harus bisa seperti dibawah ini :

Masukkan besarnya pembelian : Rp. 50000 Besarnya diskon

: Rp. 2500.00

Besar yang harus dibayarkan : Rp. 47500

Contoh lainnya :

Masukkan besarnya pembelian : Rp. 100000 Besarnya diskon

: Rp. 10000.00

Besar yang harus dibayarkan : Rp. 90000

3. Dengan menggunakan fungsi getch() atau getche() , buatlah program pilihan menu seperti dibawah ini, jika anda memilih (1-3) maka pilihan menu yang anda pilih akan muncul.

1. Entry Data 2. List Data 3. Print Data

Pilihan Anda (1-3) ? Anda Memilih Menu : List Data

4. Buatlah program untuk memasukkan tiga buah bilangan, dan selanjutnya program akan memberikan hasil keluaran nilai terbesar dan nilai terkecil dari bilangan yang anda masukkan tadi.

5. Tugas Akhir

Buatlah laporan hasil dari percobaan yang anda lakukan dengan singkat dan jelas sesuai dengan prosedur pembuatan laporan akhir. Berikan bahasan sesuai dengan hasil praktikum yang anda lakukan. Dan jangan lupa sertakan pula hasil tampilan layar (print out ) dari listing dan hasil running program, serta kesimpulan dari hasil percobaan anda yang anda lakukan.

Contoh Program 4.1

/* Contoh program 4.1

/* Program menghitung uang pembelian

#include <stdio.h> main() {

float jml_belanja, discount=0, jml_bayar; clrscr() /* Input Jumlah Belanja

printf(“Besarnya Belanja

scanf(“%f”, &jml_belanja); /* Menghitung discount

if (jml_belanja>=100000) discount = 0.10 * jml_belanja; /* Menghitung Uang Pembayaran

jml_bayar = jml_belanja - discount; /* Cetak Discount dan Uang Pembayaran

printf(“ Discount

%10.2f \n”, discount); printf(“ Uang Pembayaran

%10.2f \n”, jml_bayar); }

Contoh Program 4.2

/* Contoh Program 4.2 */ /* Struktur if yang terdiri dari sekumpulan perintah */ #include <stdio.h> main() {

int usia; clrscr();

printf(“Berapakah Usia Anda

scanf(“%d”, &usia); if (usia >= 40) {

printf(“ Wah, Anda sudah cukup tua \n”); printf(“ Jangan makan makanan yang banyak mengandung Kolesterol \n”); printf(“ Tidak baik untuk kesehatan Anda \n”);

Contoh Program 4.3

/* Contoh program 4.3 */ /* Struktur if else yang terdiri dari sebuah perintah */ #include <stdio.h> #include <conio.h> main() {

clrscr(); char jawab; printf(“ Anda mau ikut ? ”); jawab = getche(); if (Jawab == ‘Y’ || jawab ‘y’)

printf(“ Cepat ganti pakaian”); else printf( “Tolong jaga rumah”); }

/* Contoh Program 4.4 */ /* Penggunaan nested if */ #include <stdio.h> main() {

int umur; clrscr(); printf(“ Berapakah usia Anda ? : ”); scanf(“%d” ,&umur); if ( umur < 50)

if ( umur > 21) printf(“ Anda sudah dewasa ”); else printf(“ Anda masih muda ”); else printf(“ Anda sudah Tua”); }

Contoh Program 4.5

/* Contoh program 4.5 */ /* Konversi nilai angka menjadi nilai huruf */ #include <stdio.h> main()

{ float angka; char huruf; clrscr(); /* Input nilai angka */ printf(“Masukan nilai Angka (0 - 100) : ”); scanf(“ %f”, &angka); /* Proses menentukan nilai huruf */ if (angka<50)

huruf = ‘E’; else if (angka >=50 && angka <60) huruf = ‘D’; else if (angka >=60 && angka <70) huruf = ‘C’; else if (angka >=70 && angka <85) huruf = ‘B’; else huruf= ‘A’; /* Cetak nilai huruf */

printf(“ Nilai Huruf

: %c” ,huruf);

/* Contoh Program 4.6 */ /* Penggunaan switch */ /* Penggunaan switch-break dengan pilihan bilangan */ #include <stdio.h> main( ) {

int bil; printf (“Ketikkan sebuah bilangan antara bilangan 1 sampai dengan

bilangan 5 : ”); scanf(“ %d”, &bil);

switch(bil) {

case 1 : printf(“ Anda mengetikkan bilangan satu”); case 2 : printf(“ Anda mengetikkan bilangan dua”); case 3 : printf(“ Anda mengetikkan bilangan tiga”); case 4 : printf(“ Anda mengetikkan bilangan empat”); case 5 : printf(“ Anda mengetikkan bilangan lima”); default

printf(“ Anda mengetikan bilangan yang salah ” );

Contoh Program 4.7

/* Contoh program 4.7 */ /* Penggunaan switch-break dengan pilihan huruf */ #include <stdio.h> main() {

char x; printf(“ Ketikan sebuah abjad dari a hingga d dalam huruf kecil”); x=getche(); switch(x) {

case ‘a’ : printf(“Anda mengetikan abjad pertama”); break;

case ‘b’ : printf(“Anda mengetikan abjad kedua”); break;

case ‘c’: printf(“Anda mengetikan abjad ketiga”); break;

case ‘d’ : printf(“Anda mengetikan abjad keempat”); break;

default ; printf(“ Anda tidak mengikuti instruksi”); } }

/* Contoh program 4.8

*/

/* Penggunaan switch-break dengan pilihan */ /* Huruf besar atau kecil

*/

#include <stdio.h> main()

{ char x; printf(“ Ketikkan sebuah abjad dari a hingga d \n”); printf(“ Boleh dalam huruf besar ataupun dalam huruf kecil \n”); x = getche( ); switch(x) {

case ‘a’: case’A’ :

printf(“ Anda mengetikkan abjad pertama”); break;

case ‘b’: case’B’ :

printf(“ Anda mengetikkan abjad kedua”); break;

case ‘c’: case’C’ :

printf(“ Anda mengetikkan abjad ketiga”); break;

case ‘d’: case’D’ :

printf(“ Anda mengetikkan abjad keempat”); break;

default: printf(“ Anda tidak mengikuti instruksi”); } }

MODUL-TC-05

Pe r u la n g a n / Loop in g

1. Tujuan

Mengenal, mempelajari dan memahami proses perulangan statement looping, for , while , dan do-while dalam bahasa pemrograman C.

2. Teori Dasar

Mengulang suatu proses merupakan tindakan yang banyak dijumpai dalam pemrograman. Pada semua bahasa pemrograman perulangan proses ditangani dengan suatu

mekanisme yang sering disebut dengan Loop. Dengan menggunakan loop suatu proses perulangan dapat diimplementasikan dengan kode program yang lebih pendek.

2.1. Statement for

Bentuk umum dari statement for adalah sebagai berikut :

for (ungkapan-1; ungkapan -2; ungkapan -3) pernyataan

Dimana fungsi dari : Ungkapan-1 : Digunakan untuk memberikan inisialisasi awal terhadap variabel pengendali

dari loop. Pemberian nilai awal ini dilakukan sekali saja yaitu pada waktu pengulangan mulai dilakukan, kemudian selama proses perulangan berlangsung pemberian nilai awal ini tidak dilakukan lagi.

Ungkapan-2 : Digunakan sebagai kondisi untuk keluar dari loop. Pada bagian ini paling menentukan apakah proses perulangan masih harus dilakukan atau tidak. Dan perulangan akan terus dilakukan selama kondisi dari ungkapan ini belum dipenuhi.

ungkapan ini bisa bersifat naik atau bersifat menurun. Dimana operator yang sering dipergunakan pada ungkapan ini adalah operator penambahan (++)

dan operator pengurangan (--). Perlu diingat untuk memisahkan antara ketiga ungkapan tersebut harus menggunakan tanda titik koma (;).

Dalam perulangan for, ungkapan yang dipa kai tidaklah harus lengkap, akan tetapi dapat juga salah satu dari ungkapan tersebut tidak dipergunakan atau dengan ungkapan yang dipergunakan hanya salah satu saja dari ketiga ungkapan yang ada. Akan tetapi meskipun ungkapan yang dipergunakan tidak lengka p, tanda titik koma yang berfungsi sebagai pemisah harus tetap selalu dituliskan. Contohnya dapat dilihat sebagai berikut :

for (ungkapan-1;; ungkapan-3)

atau

for (ungkapan-1; ungkapan -2;)

atau

for (ungkapan-1;;)

Jika diinginkan suatu bentuk perulangan yang tak berhingga, maka ungkapan dalam perulangan for tidak perlu digunakan, contohnya sebagai berikut :

for (;;)

Seperti halnya dengan statement if, perulangan for juga memiliki perulangan for tersarang (nested for ) atau perulangan loop for di dalam loop for.

2.2. Statement while

Statement while pada prinsipnya adalah perulangan yang hampir sama dengan perulangan for, hanya bedanya perulangan while dikendalikan oleh suatu kondisi tertentu, dan proses perulangannya tidak akan berhenti selama kondisinya te rpenuhi dan perulangan akan berhenti jika kondisinya tidak terpenuhi. Bentuk umum dari statement while adalah sebagai berikut :

while ( kondisi) pernyataan

Pengujian terhadap loop pada perulangan while dilakukan di bagian awal dari perulangan. Karena inisialisasi tidak dapat dilakukan pada pernyataan while, maka inisialisasi dapat dilakukan bersama-sama dengan deklarasi, atau memberikan nilai awal pada saat sebelum Pengujian terhadap loop pada perulangan while dilakukan di bagian awal dari perulangan. Karena inisialisasi tidak dapat dilakukan pada pernyataan while, maka inisialisasi dapat dilakukan bersama-sama dengan deklarasi, atau memberikan nilai awal pada saat sebelum

2.3. Statement do-while