Sabtu, 25 September 2010

#Pemrograman C ms-dos part 2

BAB IV
PERNYAATAAN-PERNYATAAN


A. Pernyataan goto dan label
Pernyataan-pernyataan (statements) yang dituliskan di dalam suatu program akan dilaksanakan secara berurut mulai dari pernyataan pertama sampai dengan pernyataan terakhir. Contoh:

...
statement_1;
statement_2;
statement_3;
statement_4;
statement_5;
statement_6;
...

Jika kita bermaksud untuk menyatakan bahwa sesudah pelaksanaan pernyataan tertentu (misalnya setelah statement_2) alur program akan dilanjutkan ke pernyataan tertentu lain yang bukan pernyataan yang tepat di bawahnya (misalnya ke statement_5), maka kita harus menggunakan pernyataan goto dan menetapkan suatu label di lokasi yang dimaksud. Contoh:

...
statement_1;
statement_2;
goto next;
statement_3;
statement_4;
next:
statement_5;
statement_6;
...

Suatu label adalah identifier biasa yang diikuti oleh simbol titik-dua ( : ).

B. Pernyataan Fungsi
Pernyataan fungsi adalah pernyataan yang digunakan untuk memanggil suatu fungsi. Pernyataan fungsi dilakukan dengan menulis nama fungsi yang dimaksud beserta argumen yang akan diberikan kepada parameter-parameter yang terdapat di dalam fungsi tersebut.

Berkaitan dengan hal tersebut maka kita harus mengetahui apa nama fungsi dan parameter-parameter apa yang dibutuhkan oleh fungsi yang akan kita gunakan. Informasi tersebut dapat dilihat di dalam prototipe, definisi, atau deklarasi fungsi tersebut. Prototipe dan definisi fungsi-fungsi standar (yang telah disediakan oleh pembuat kompiler) dapat ditemukan di dalam direktori include dengan nama file berekstensi .h yang dikelompokkan berdasarkan kegunaannya, misalnya stdio.h, stdlib.h, conio.h, io.h, dan lain-lain.

Untuk memungkinkan kompiler dapat memeriksa kebenaran penulisan pernyataan fungsi di dalam suatu kode sumber, maka file yang berisi prototipe fungsi tersebut harus di-include ke dalam kode sumber tersebut.

C. Pernyataan Gabungan/Blok
Pernyataan Gabungan atau Blok adalah kumpulan pernyataan yang ditetapkan sebagai satu kesatuan pernyataan. Ini digunakan untuk menyederhanakan penulisan pernyataan secara berulang.

Pernyataan gabungan atau blok diawali oleh simbol "{" diikuti oleh pernyataan-pernyataan yang menjadi anggotanya dan diakhiri oleh simbol "}". Contoh:

{
statement_1;
statement_2;
statement_3;
...
}

D. Pernyataan if-else
Pelaksanaan suatu pernyataan boleh jadi hanya dilakukan jika suatu kondisi tertentu terpenuhi. Pernyataan if-else adalah salah satu pernyataan yang dapat digunakan untuk keperluan tersebut. Bentuk umum pernyataan ini adalah:

if (ekspresi) stat_1; [else stat_2;]

Di mana ekspresi adalah ekspresi ordinal (mengembalikan nilai bilangan bulat). Pernyataan stat_1 akan dilakukan jika ekspresi bernilai bukan 0 dan pernyataan stat_2 akan dilakukan jika ekspresi bernilai 0. Contoh:

Code:

if (kode = 0)
strcpy(kelamin, "Perempuan");
else
strcpy(kelamin, "Laki-laki");

Marilah kita coba terapkan pernyataan ini pada masalah berikut. Katakanlah anda menghendaki sebuah Tabel Harga BBM, dari 1 sampai 10 liter. Output yang dihasilkan dikehendaki sebagai berikut.

Code:

Liter  Solar Premium  Super
---------------------------
1 250 385 450
2 500 770 900
3 750 1155 1350
4 1000 1540 1800
5 1250 1925 2250
6 1500 2310 2700
7 1750 2695 3150
8 2000 3080 3600
9 2250 3465 4050
10 2500 3850 4500
---------------------------

Dengan menggunakan pernyataan-pernyataan yang sudah dibahas di atas, program untuk itu adalah seperti ditunjukkan di bawah.

Program-4.1: bbm.c

Code:

#include 

int liter, solar, premium, super;

main()
{
printf("Liter Solar Premium Super\n");
printf("---------------------------\n");
liter = 1;
ulangi:
solar = liter * 250;
premium = liter * 385;
super = liter * 450;
printf("%5d %5d %5d %5d\n", liter, solar, premium, super);
liter++;
if (liter <= 10) goto ulangi; printf("---------------------------\n"); }

E. Pernyataan switch-case-default
Pernyataan switch-case-default merupakan perluasan dari pernyataan if-else yang memungkinkan adanya kondisi yang beragam. Bentuk umum pernyataan ini adalah:

switch (ekspresi)
{ case eks_1:
[stat_1;
...
break;]

case eks_2:
[stat_2;
...
break;]

...

[default:
stat_n;
...
break;]
}

Pernyataan stat_1 dan seterusnya akan dilakukan jika ekspresi = eks_1. Pernyataan stat_2 dan seterusnya akan dilakukan jika ekspresi = eks_2. Pernyataan stat_n dan seterusnya akan dilakukan jika ekspresi tidak sama dengan pengujian sebelumnya.

Sebagai contoh, katakanlah kita memiliki kode barang (kb) dan akan menetapkan nama barang (nb) serta jenis barang (jb) berdasarkan kode barang tersebut. Nama barang adalah CPU, CRT, LCD, MS Office, Norton Anti Virus, dan PhotoShop untuk kode barang 1, 2, 3, 4, 5, dan 6. Sementara jenis barang adalah Hardware untuk kode barang 1, 2, dan 3 atau Software untuk kode barang 4, 5, dan 6.


code:

switch (kb)
{ case 1:
strcpy(nb, "CPU");
strcpy(jb, "Hardware");
break;
case 2:
strcpy(nb, "CRT");
strcpy(jb, "Hardware");
break;
case 3:
strcpy(nb, "LCD");
strcpy(jb, "Hardware");
break;
case 4:
strcpy(nb, "MS Office");
strcpy(jb, "Software");
break;
case 5:
strcpy(nb, "Norton Anti Virus");
strcpy(jb, "Software");
break;
case 6:
strcpy(nb, "PhotoShop");
strcpy(jb, "Software");
break;
default:
strcpy(nb, "Nama barang belum ditetapkan");
strcpy(jb, "Jenis barang belum ditetapkan");
break;
}


Penggunaan beberapa case untuk mengerjakan pernyataan yang sama dapat dilakukan seperti contoh berikut.

switch (kb)
{ case 1:
strcpy(nb, "CPU");
break;
case 2:
strcpy(nb, "CRT");
break;
case 3:
strcpy(nb, "LCD");
break;
case 4:
strcpy(nb, "MS Office");
break;
case 5:
strcpy(nb, "Norton Anti Virus");
break;
case 6:
strcpy(nb, "PhotoShop");
break;
default:
strcpy(nb, "Nama barang belum ditetapkan");
break;
}

switch (kb)
{ case 1:
case 2:
case 3:
strcpy(jb, "Hardware");
break;
case 4:
case 5:
case 6:
strcpy(jb, "Software");
break;
default:
strcpy(jb, "Jenis barang belum ditetapkan");
break;
}



F. Pernyataan while
Pernyataan while digunakan untuk mengulang pelaksanaan pernyataan tertentu selama kondisi tertentu terpenuhi. Bentuk umum pernyataan ini adalah:

while (ekspresi) statement;

Di mana ekspresi adalah ekspresi ordinal (mengembalikan nilai bilangan bulat). Statement akan dilakukan secara berulang selama ekspresi bernilai bukan 0. Algoritma pernyataan ini adalah:

ulangi:
if (ekspresi)
statement;
goto ulangi;
endif

Berikut ini adalah penggunaan pernyataan while untuk menggantikan pernyataan if dan goto di dalam Program 4.1.

Code:

#include 

int liter, solar, premium, super;

main()
{
printf("Liter Solar Premium Super\n");
printf("---------------------------\n");
liter = 1;
while (liter <= 10) { solar = liter * 250; premium = liter * 385; super = liter * 450; printf("%5d %5d %5d %5d\n", liter, solar, premium, super); liter++; } printf("---------------------------\n"); }

G. Pernyataan do-while
Pernyataan do-while pada dasarnya sama dengan pernyataan while, yaitu digunakan untuk mengulang pelaksanaan pernyataan tertentu selama kondisi tertentu terpenuhi, cuma letak pengujian kondisinya adalah di akhir pernyataan tersebut. Bentuk umum pernyataan ini adalah:

do statement; while (ekspresi);

Di mana ekspresi adalah ekspresi ordinal (mengembalikan nilai bilangan bulat). Statement akan dilakukan secara berulang selama ekspresi bernilai bukan 0. Algoritma pernyataan ini adalah:

ulangi:
statement;
if (ekspresi)
goto ulangi;
endif

Berikut ini adalah penggunaan pernyataan do-while untuk menggantikan pernyataan if dan goto di dalam Program 4.1.

Code:

#include 

int liter, solar, premium, super;

main()
{
printf("Liter Solar Premium Super\n");
printf("---------------------------\n");
liter = 1;
do
{ solar = liter * 250;
premium = liter * 385;
super = liter * 450;
printf("%5d %5d %5d %5d\n", liter, solar, premium, super);
liter++;
} while (liter <= 10) printf("---------------------------\n"); }

H. Pernyataan for
Pernyataan for pada dasarnya sama dengan pernyataan while, yaitu digunakan untuk mengulang pelaksanaan pernyataan tertentu selama kondisi tertentu terpenuhi, cuma di dalamnya terdapat pernyataan untuk pra dan pasca pelaksanaan statement. Bentuk umum pernyataan ini adalah:

for ([prestatement]; [ekspresi]; [poststatement]) statement;

Algoritma pernyataan ini adalah:

.
prestatement;
ulangi:
statement;
poststatement;
if (ekspresi)
goto ulangi;
endif

Berikut ini adalah penggunaan pernyataan for untuk menggantikan pernyataan if dan goto di dalam Program 4.1.

Code:

#include 

int liter, solar, premium, super;

main()
{
printf("Liter Solar Premium Super\n");
printf("---------------------------\n");
for (liter = 1; liter <= 10; liter++) { solar = liter * 250; premium = liter * 385; super = liter * 450; printf("%5d %5d %5d %5d\n", liter, solar, premium, super); } printf("---------------------------\n"); }

Pernyataan liter=1 dapat ditetapkan sebagai prestatement dan pernyataan liter++ sebagai poststatement. Dengan begitu maka itu dapat dituliskan dengan menggunakan pernyataan for secara lebih sederhana.

I. Pernyataan break dan continue
Pernyataan break digunakan untuk mengontrol alur program dalam pernyataan switch-case-default, while, do-while, dan for, yaitu untuk berpindah ke pernyataan berikutnya.

Pernyataan continue digunakan untuk mengontrol alur program pada iterasi berikutnya di dalam pernyataan while, do-while, dan for di mana dia berada.


0 komentar:

Posting Komentar

Twitter Delicious Facebook Digg Stumbleupon Favorites More