[Basic] Control Structure - Forum
Counter-Strike Federation Welcome , Leecher | RSS | Saturday, 10 December 16
A Place Where Player Becomes Developer Home | Sign Up | Log In
[ New messages · Members · Forum rules · Search · RSS ]
Page 1 of 11
Forum » AMX Mod X » Scripting » Code Snippets/Tutorials » [Basic] Control Structure
[Basic] Control Structure
Grade: Commander DavidJrDate: Saturday, 17 January 15, 3:58 PM | Message # 1
Commander
Clan: Executive
Experience: 2256
Status: Offline
Semua programming language memiliki control structure. Hanya saja gaya bahasanya yg berbeda.
Untuk AMX Mod X ini dia berbahasa Pawn, tp tenang saja mirip dengan C++ kok, malah lebih mudah. Langsung saja yuk.

1. If ElseIf Else
Control structure yang paling umum dijumpai, gunanya untuk membandingkan 2 atau lebih algoritma

Code
Codeif (Statement1) // Jika statement1 terpenuhi
{
        // Jika statement1 terpenuhi
}
else if (Statement2) // Jika statement 2 terpenuhi
{
        // Jika statement2 terpenuhi
}
else // Jika tidak ada statement diatas terpenuhi
{
        // Jika tidak ada statement diatas terpenuhi
}


Sudah mengerti? Kita coba kepenggunaannya yuk.

Code
Codenew a = 1;
new b = 2;
new c = b + a;

if (a + b == c) // jika a ditambah b sama dengan c alias terpenuhi
{
        // a + b = 3, apakah sama dengan c yang a + b juga? jika ya kondisi terpenuhi
}
else if (a + b == 5) // jika kondisi sebelumnya tidak terpenuhi coba dengan kondisi dimana a + b hasil nya 5
{
        // Jika hasil a + b hasil nya lima kondisi ini terpenuhi
}
else // jika kondisi sebelumnya tidak ada yg memenuhi
{
        // jika kondisi sebelumnya tidak ada yg memenuhi
}


2. Switch Case
Switch Case lebih cocok digunakan jika terlalu banyak menggunakan if else, tujuannya hanya agar lebih terlihat rapi

Code
CodeSwitch (Statement)
{
       case 0:
       {
           // jika statement hasilnya 0
       }
       case 1:
       {
           // jika statement hasilnya 1
       }
       case 2:
       {
           // jika statement hasilnya 2
       }
       default:
       {
           Untuk hasil variable default, biasanya 0
       }
}


Contoh penggunaan nya.

Code
Codenew a = 1;
b = 2;
c =;

switch (a)
{
       case 0:
       {
           a = 1;
       }
       case 1:
       {
           a = a + b;
       }
       case 2:
       {
           a = a - b;
       }
}


3. For (looping)
For adalah control structure untuk mengulang perintah

Code
Codenew a = 10;

for(new i = 0; i < a; ++i)
{
      //terjemahan:
      //jika variable i lebih kecil dari variable a, maka ulangi sampai variable i lebih besar sama dengan variable a
      // new i = 0 mendaftarkan variable i dengan nilai 0
      // i < a perbandingan logika jika variable i lebih kecil dari a (i = 0, a = 10)
      // ++i menjumlahkan variable i satu persatu (loop satu i = 1, loop dua i =
  2, loop 3 i = 3 sampai dengan loop 10 i = 10 dan berhenti)
}


Contoh penggunaan

Code
Codenew a = 10;

for (new i  = 0; i < a; ++i)
{
      client_print(0, print_chat, "PidPid unyu unyu *o*");
}


Output dari contoh loop seperti ini

Code
CodePidPid unyu unyu *o*
PidPid unyu unyu *o*
PidPid unyu unyu *o*
PidPid unyu unyu *o*
PidPid unyu unyu *o*
PidPid unyu unyu *o*
PidPid unyu unyu *o*
PidPid unyu unyu *o*
PidPid unyu unyu *o*
PidPid unyu unyu *o*


4. While (loop)
Sama untuk mengulang sebuah perintah, tp ini jarang digunakan

Code
Codenew i = 1;

while (i)
{
      // selama i nilainya satu, eksekusi perintah
}


Contoh penggunaan

Code
Codenew i = 1;
while (i)
{
      if (i == 10) break;
        
      client_print(0, print_chat, "PidPid ganteng deh *o*");
      ++i;
}


Outputnya

Code
CodePidPid unyu unyu *o*
PidPid unyu unyu *o*
PidPid unyu unyu *o*
PidPid unyu unyu *o*
PidPid unyu unyu *o*
PidPid unyu unyu *o*
PidPid unyu unyu *o*
PidPid unyu unyu *o*
PidPid unyu unyu *o*
PidPid unyu unyu *o*


posted via BlackBerry

Personal Site | CSF Website
 
Grade: Copral XenionDate: Saturday, 01 August 15, 5:28 AM | Message # 2
Copral
Clan: Member
Experience: 27
Status: Offline
for(new i = 0; i < a; ++i) 

apa memang wajib pake i untuk looping?

new i = 0; bla bla bla?
atau bisa diganti dengan huruf lain ?
 
Grade: Commander DavidJrDate: Sunday, 02 August 15, 9:25 AM | Message # 3
Commander
Clan: Executive
Experience: 2256
Status: Offline
Quote Xenion ()
atau bisa diganti dengan huruf lain ?
Bisa


posted via BlackBerry

Personal Site | CSF Website
 
Forum » AMX Mod X » Scripting » Code Snippets/Tutorials » [Basic] Control Structure
Page 1 of 11
Search:

Mirum
sample map