Kamis, Mei 15, 2008

Bhs C Dasar - Chapter II

Terkadang sangat melelahkan jika kita mencetak sebuah kata "hello world " sebanyak 1000 kali dengan adanya perulangan semua jadi simple! macam-macam perulangan yang terdapat pada Bahaca c :
1.for
2.while
3.do-while

contoh pemakaian sebagai berikut :
1. for (awal ;kondisi ;akhir)
{
}

Perhatikan soure code dibawah ini
contoh :
#include
int main()
{
int angka;
for(angka = 0 ; angka < 1000 ; angka = angka + 1)
printf("Aku ganteng lo\n");
return 0;
}
/* Outputnya : mencetak Aku ganteng sebanyak seribu kali (perhatikan kondisinya)
Jika bernilai True (benar) maka statement didalam { } akan dijalankan
Jika bernilai False kondisi didalam perulangan tidak akan dijalankan
*/

2.while
contoh pemakaian sebagai berikut :
--------------------------------
awal =0;
while (kondisi) {
awal=awal+1; /// variabel awal akan bertambah sesuai dengan dengan kondisi didalam = while(kondisi)
}

contoh :
#include
int main()
{
int index;
index = 0;
while (index < 10)
{
printf("Fox Mania\n");
index = index + 1;
}
return 0;
}

3.do-while
contoh pemakaian sebagai berikut :
awal =0;
do{
awal=awal+1
}while(kondisi)

contoh :
#include
int main()
{
int index;

index = 0;
do
{
printf("Riefkhy\n");
index = index + 1;
} while (index < 10);

return 0;
}

note :
awal=awal+1; /// dapat ditulis dengan awal+=1; (ini sama saja artinya)

nilai awal selalu ditambah dengan angka satu, contoh :

int main()
{
int x = 0, y = 2, z = 1025;
float a = 0.0, b = 3.14159, c = -37.234;
x = x + 1;
x++;
++x;
z = y++;
z = ++y;

y = y - 1;
y--;
--y;
y = 3;
z = y--;
z = --y;

a = a + 12;
a += 12;
a *= 3.2;
a -= b;
a /= 10.0;

a = (b >= 3.0 ? 2.0 : 10.5 );
if (b >= 3.0)
a = 2.0;
else
a = 10.5;

c = (a > b ? a : b);
c = (a > b ? b : a);

return 0;
}

Gimana dengan konstanta suatu nilai :
kita dapat menggunakan #DEFINE

Contoh :
#define START 0
#define ENDING 9
#define MAX(A,B) ((A)>(B)?(A)B))
#define MIN(A,B) ((A)>(B)?(B)A))
int main()
{
int index, mn, mx;
int count = 5;

for (index = START ; index <= ENDING ; index++)
{
mx = MAX(index, count);
mn = MIN(index, count);
printf("Max is %d and min is %d\n", mx, mn);
}

return 0;
}

Tidak ada komentar: