lanjutan learn C
- switch case : biasa dipake untuk pemilihan untuk kondisi yang konstan contohnya : nilia yang bertipe bilangan bulat..
…
int main(void)
{
int day;
printf(”Masukkan nomor hari (1-7) : “);scanf(”%d”,&day);
switch(day)
{
case 1 : printf(”%d adalah hari minggun”,day);
break;
case 2 : printf(”%d adalah hari seninn”,day);
break;
case 3 : printf(”%d adalah hari selasan”,day);
break;
case 4 : printf(”%d adalah hari rabun”,day);
break;
case 5 : printf(”%d adalah hari kamisn”,day);
break;
case 6 : printf(”%d adalah hari jumatn”,day);
break;
case 7 : printf(”%d adalah hari sabtun”,day);
break;
default : printf(”nomor yang anda masukkan salahn”);
}
return 0;
}
- Loop
Loop ada yang bentuknya for, while, do-while
klo yang for(inisialisasi awal; kondisi akhir(pada saat proses dihentikan); untuk increment/decrement)
source codenya :
…
int main(void){
int x;
for (x = 0; x <=10; x++)
{
printf(“testn”);
if (x == 5)
{
printf(“statement ifn”);
break;
goto LBL;
}
}
LBL :
printf(“diluar Loopingn”);
return 0;
}
di loopingnya sengaja ditambahin break(menghentikan proses loop) sama goto(untuk lompat ke baris tertentu), sebenernya msh ada lagi sih fungsi exit() gunanya bwt keluar dari program
while : Looping menggunakan while kondisi yang digunakan/diperiksa di bagian awal
…
int main(void)
{
int x = 0;
while(x != 10){
printf(”test whilen”);
x++;
}
return 0;
}
do-while : kondisi diletakkan di akhir blok pengulangan
…
int main(void)
{
int x = 0;
do
{
printf(”do-whilen”);
x++;
}
while(x != 5);
return 0;
}
Array
Akhirnya sampe juga ke Array, rata2 semua tutorial Array gw baca sampe 2 x lebih, g tw apa otak gw yang udh overload gara kebanyakan baca samurai deeper kyo apa tutorialnya yang susah, kyknya sih tutornya yg susah :P
Tutor bilang sih Array adalah sekumpulan/daftar/list dari suatu variable yang mempunyai tipe data yang sama..
Array ada yang 1 dimensi, 2 dimensi, 3 dimensi…Array juga ada yang static (pke kata kunci static sama kyk variable), bisa jadi parameter juga…
klo dari source code yang sliweran gw nemu satu code yang mewakili apa itu Array :
…
#define MAX 5 //bwt ngebatesin si Array ajah…
int main(void)
{
int a[MAX];
int z;
printf(”Masukkin Nilainya : n”);
for(z = 0; z {
printf(“a[%d] : n”,z);
scanf(“a[%d]“, &a[z]);
}
//menampilkan elemen dari array
printf(“nMenampilkan nilai :n”);
for (z=0; z {
printf(“Array[%d] : %dn”, z,a[z]);
}
return 0;
}
Array Searching
arggh…knapa nih source baru tw skrg, coba dari smster 1 dulu… :’(..
deklarasi M sebagai var bwt pencarian array, jadi klo selama si M lebih kecil dari N(Jumlah Array) dan blm ktemu sama var Z yang dicari maka si M bakal terus ngelakuin increment..
#include
#define MAX 100
int BIL[MAX];
int M;
int N;
int X;
int Z;
void Cari(int Z)
{
while ((M < N) && (BIL[M]) != Z )
{
M++;
}
if(BIL[M] == Z)
{
printf(“Ketemu!!!nilainya adalah : %d, ada di index %dn”, Z, M);
}
else
{
printf(“G ada”);
}
}
int main(void)
{
printf(“Masukkan banyaknya elemen Array : “);
scanf(“%d”,&N);
for (X=0; X {
printf(“Array[%X] : “,X);
scanf(“%d”, &BIL[X]);
}
printf(“Masukkan nilai yang akan dicari : “);
scanf(“%d”,&Z);
Cari(Z);
return 0;
}
trs Array Sorting : pengurutan Array..tipenya ada banyak macemnya..tapi klo kata tutorial yang gw temuin rata2 smuanya lebih nyaranin bwt ngerti konsep bubble sort sama max/min sort..
Buble sort : dimana membandingkan nilai dari nilai Array tertinggi k terendah, nilai yang tertinggi dilempar/digeser k kanan.
#include
#define MAX 3
int ns;
void showArray(int a[], int n)
{
for(ns = 0; ns {
printf(“Array[%d] : %dn”, ns, a[ns]);
}
}
int main(void)
{
int a[MAX] = {100,20,31};
int Loop;
int Sorting;
int temp;
printf(“Sebelum diurutkan : n”);
showArray(a, MAX);
for (Loop = 0; Loop {
for(Sorting=MAX-1; Sorting>=(Loop+1); Sorting–)
{
if(a[Sorting] < a[Sorting-1])
{
temp = a[Sorting];
a[Sorting] = a[Sorting-1];
a[Sorting-1] = temp;
}
}
}
printf(”n”);
printf(”Setelah pengurutan n”);
showArray(a, MAX);
return 0;
}