Java Script : Control Statement I
Kelompok 7 : Kharisma Muhammad 5108100104 Pambudi Surya 5108100138 Dading Zainul Gusti  5108100179
Control Structures (I) • 3 Tipe dari struktur seleksi : – if • Single-selection structure – Digunakan untuk menyeleksi suatu kondisi tunggal. Bila proses yang diseleksi terpenuhi atau bernilai benar, maka pernyataan yang ada di dalam blok if akan diproses dan dikerjakan. – if/else • Double-selection structure – Dalam if.....else minimal terdapat dua pernyataan. Bila kondisi yang diperiksa bernilai benar, maka pernyataan pertama yang akan dilaksanakan dan jika kondisi yang diperiksa bernilai salah maka pernyataan yang kedua yang akan dilaksanakan . – switch • Multiple-selection structure – switch....case....default digunakan untuk penyeleksian nilai dengan kemungkinan yang terjadi cukup banyak. Fungsi ini akan melaksanakan salah satu dari beberapa pernyataan ‘case’ tergantung nilai yang tertera di dalam switch. Selanjutnya proses diteruskan hingga ditemukan pernyataan ‘break’. Jika tidak ada nilai pada case yang sesuai dengan nilai di dalam switch, maka proses akan diteruskan kepada pernyataan yang ada di ‘default’ .
Control Structures (II) • Empat tipe struktur repetition – while – do/while – for – for/in • Dua cara dalam mengkombinsikan struktur – Control-structure stacking • Single-entry/single-exit structures – Control-structure nesting
If  Selection Structure (I) • Bentuk umum dari if adalah : if (kondisi) { pernyataan; }  
If  Selection Structure (II) • Pseudocode: Jika nilai mahasiswa lebih besar dari atau sama dengan 60 Print “lulus” • JavaScript statement: if( grade >= 60 ) document.writeln( “Lulus” ); • Flowchart:
if/else  Selection Structure (I) • Bentuk umum if…else adalah : if(kondisi) { pernyataan1; } else pernyataan2;
if/else  Selection Structure (I) • Pseudocode: Jika nilai mahasiswa lebih besar dari atau sama dengan 60 Print “Lulus” else Print “Tidak lulus” • JavaScript statement: if ( grade >= 60 ) document.writeln( “Lulus” ); else  document.writeln( “Tidak lulus” );
if/else  Selection Structure (II) • Flowchart
if/else  Selection Structure (III) • Conditional Operator  ( ?: ) • Bentuk : condition ? expression1 : expression2; • Contoh document.writeln(  nilaiMahasiswa >= 60 ? “Lulus” : “Tidak lulus” ); • Sama seperti  if/else  pada contoh sebelumnya.
if/else  Selection Structure (IV) Nested  if/else  Structures: • Pseudocode: If student’s grade is greater than or equal to 90 Print “A” else If Student’s grade is greater than or equal to 80 Print “B” else If student’s grade is greater than or equal to 70 Print “C” else If student’s grade is greater than or equal to 60 Print “D” else Print “F”
if/else  Selection Structure (V) Nested  if/else  Structures (II): • JavaScript statement: if ( studentGrade >= 90 ) document.writeln( “A” ); else if ( studentGrade >= 80 ) document.writeln( “B” ); else if ( studentGrade >= 70 ) document.writeln( “C” ); else if ( studentGrade >= 60 ) document.writeln( “D” ); else document.writeln( “F” );
while  Repetition Structure Program segment: find first power of 2 larger than 1000 • Pseudocode : While product is less than 1000 multiply product by 2 • JavaScript statement: var product = 2; while ( product <= 1000 ) product = 2 * product; • Flowchart:
Formulating Algorithms Studi kasus 1 : counter-controlled repetition Studi kasus 2 : sentinel-controlled repetition Studi kasus 3 : nested control structure
Counter-controlled repetition Menggunakan while dengan sebuah variabel counter yang di-incremen atau di-decremen tiap kali looping sebagai pengecekan Perulangan akan berhenti ketika counter mencapai nilai tertentu dan membuat kondisi menjadi false Digunakan ketikai jumlah looping yang akan dilakukan sudah diketahui
Contoh ... <script language=&quot;javascript&quot;> var counter, input, output; counter= 1; while(counter<= 6){ document.writeln(&quot;<h&quot; + counter+ &quot;>Hello world&quot;+ &quot;</h&quot;+ counter+&quot;>&quot;); counter++; } </script> ...
output
Sentinel-controlled repetition Menggunakan sebuah nilai sebagai sentinel, dan sebuah variabel. Ketika variabel tersebut bernilai sama dengan sentinel-value, maka condition akan jadi false dan looping akan berhenti Gunakan ketika ketika jumlah looping yang akan dilakukan disesuaikan dengan inputan user Sentinel-value adalah nilai diluar domain inputan user Inputan user pertama kali dilakukan sebelum while
contoh <script language=&quot;javascript&quot;> var gradeCounter, gradeValue, total, average, grade; total= 0; gradeCounter= 0; grade= window.prompt(&quot;Enter integr Grade, -1 to quit :&quot;, &quot;0&quot;); gradeValue= parseInt(grade); while(gradeValue!= -1){ total+= gradeValue; gradeCounter++;
grade= window.prompt(&quot;Enter integr Grade, -1 to quit :&quot;, &quot;0&quot;); gradeValue= parseInt(grade); } if(gradeCounter != 0){ average= total/ gradeCounter; document.writeln(&quot;<h1>Class average is &quot;+ average+ &quot;</h1>&quot;); } else document.writeln(&quot;<p>no grades were entered</p>&quot;); </script>
output
Nested control repetition Sebuah control-structure bisa ditempatkan di dalam control-structure yang lain Dalam javaScript, jika sebuah local-variable tidak diinisialisasi di awal maka akan otomatis diinisialisasi oleh javaScript
contoh <script language = &quot;javascript&quot;> var maks, temp, counter; counter= 0; temp= window.prompt(&quot;masukkan input : &quot;, &quot;0&quot;); maks= parseInt(temp); var input= new Array(maks); while(counter< maks){ input[counter]= Math.floor(Math.random()*(maks+ 1)); counter++; } document.writeln(&quot;<h3>random generated initial array is: &quot;+input+&quot;</h3>&quot;);
var i= 0; while(i< maks){ var r= 0; while(r< maks){ if(input[i]< input[r]){ var temp= input[i]; input[i]= input[r]; input[r]= temp; } r++; } i++; } document.writeln(&quot;<h3>Sorted array: &quot;+input+&quot;</h3>&quot;); </script>
output
Assignment Operators Bentuk operasi assignment operators : c = c+ 3 equals to c+= 3 kedua ekspresi di atas sama-sama berfungsi untuk menambahkan nilai 3 kepada variabel c Bentuk c+= 3 hanya memiliki sedikit perbedaan dalam kecepatan eksekusi dengan bentuk c = c+ 3, namun kecepatan eksekusi akan jauh berbeda ketika melibatkan jumlah operasi yang besar
Tabel of Assignment Operators
Increment and Decrements Operators Increment operators (++) c++; equals to c+= 1; equals to c= c+ 1; Decrement operators (–) c--; equals to c-= 1; equals to c= c- 1; Bisa digunakan untuk mengekspresikan preincremented/decremented atau postincremented/decremented Increment/decrement operators bisa mengurangi runtime ketika melakukan perulangan yang banyak
Tabel increment and decrement

Control Statement I

  • 1.
    Java Script :Control Statement I
  • 2.
    Kelompok 7 :Kharisma Muhammad 5108100104 Pambudi Surya 5108100138 Dading Zainul Gusti 5108100179
  • 3.
    Control Structures (I)• 3 Tipe dari struktur seleksi : – if • Single-selection structure – Digunakan untuk menyeleksi suatu kondisi tunggal. Bila proses yang diseleksi terpenuhi atau bernilai benar, maka pernyataan yang ada di dalam blok if akan diproses dan dikerjakan. – if/else • Double-selection structure – Dalam if.....else minimal terdapat dua pernyataan. Bila kondisi yang diperiksa bernilai benar, maka pernyataan pertama yang akan dilaksanakan dan jika kondisi yang diperiksa bernilai salah maka pernyataan yang kedua yang akan dilaksanakan . – switch • Multiple-selection structure – switch....case....default digunakan untuk penyeleksian nilai dengan kemungkinan yang terjadi cukup banyak. Fungsi ini akan melaksanakan salah satu dari beberapa pernyataan ‘case’ tergantung nilai yang tertera di dalam switch. Selanjutnya proses diteruskan hingga ditemukan pernyataan ‘break’. Jika tidak ada nilai pada case yang sesuai dengan nilai di dalam switch, maka proses akan diteruskan kepada pernyataan yang ada di ‘default’ .
  • 4.
    Control Structures (II)• Empat tipe struktur repetition – while – do/while – for – for/in • Dua cara dalam mengkombinsikan struktur – Control-structure stacking • Single-entry/single-exit structures – Control-structure nesting
  • 5.
    If SelectionStructure (I) • Bentuk umum dari if adalah : if (kondisi) { pernyataan; }  
  • 6.
    If SelectionStructure (II) • Pseudocode: Jika nilai mahasiswa lebih besar dari atau sama dengan 60 Print “lulus” • JavaScript statement: if( grade >= 60 ) document.writeln( “Lulus” ); • Flowchart:
  • 7.
    if/else SelectionStructure (I) • Bentuk umum if…else adalah : if(kondisi) { pernyataan1; } else pernyataan2;
  • 8.
    if/else SelectionStructure (I) • Pseudocode: Jika nilai mahasiswa lebih besar dari atau sama dengan 60 Print “Lulus” else Print “Tidak lulus” • JavaScript statement: if ( grade >= 60 ) document.writeln( “Lulus” ); else document.writeln( “Tidak lulus” );
  • 9.
    if/else SelectionStructure (II) • Flowchart
  • 10.
    if/else SelectionStructure (III) • Conditional Operator ( ?: ) • Bentuk : condition ? expression1 : expression2; • Contoh document.writeln( nilaiMahasiswa >= 60 ? “Lulus” : “Tidak lulus” ); • Sama seperti if/else pada contoh sebelumnya.
  • 11.
    if/else SelectionStructure (IV) Nested if/else Structures: • Pseudocode: If student’s grade is greater than or equal to 90 Print “A” else If Student’s grade is greater than or equal to 80 Print “B” else If student’s grade is greater than or equal to 70 Print “C” else If student’s grade is greater than or equal to 60 Print “D” else Print “F”
  • 12.
    if/else SelectionStructure (V) Nested if/else Structures (II): • JavaScript statement: if ( studentGrade >= 90 ) document.writeln( “A” ); else if ( studentGrade >= 80 ) document.writeln( “B” ); else if ( studentGrade >= 70 ) document.writeln( “C” ); else if ( studentGrade >= 60 ) document.writeln( “D” ); else document.writeln( “F” );
  • 13.
    while RepetitionStructure Program segment: find first power of 2 larger than 1000 • Pseudocode : While product is less than 1000 multiply product by 2 • JavaScript statement: var product = 2; while ( product <= 1000 ) product = 2 * product; • Flowchart:
  • 14.
    Formulating Algorithms Studikasus 1 : counter-controlled repetition Studi kasus 2 : sentinel-controlled repetition Studi kasus 3 : nested control structure
  • 15.
    Counter-controlled repetition Menggunakanwhile dengan sebuah variabel counter yang di-incremen atau di-decremen tiap kali looping sebagai pengecekan Perulangan akan berhenti ketika counter mencapai nilai tertentu dan membuat kondisi menjadi false Digunakan ketikai jumlah looping yang akan dilakukan sudah diketahui
  • 16.
    Contoh ... <scriptlanguage=&quot;javascript&quot;> var counter, input, output; counter= 1; while(counter<= 6){ document.writeln(&quot;<h&quot; + counter+ &quot;>Hello world&quot;+ &quot;</h&quot;+ counter+&quot;>&quot;); counter++; } </script> ...
  • 17.
  • 18.
    Sentinel-controlled repetition Menggunakansebuah nilai sebagai sentinel, dan sebuah variabel. Ketika variabel tersebut bernilai sama dengan sentinel-value, maka condition akan jadi false dan looping akan berhenti Gunakan ketika ketika jumlah looping yang akan dilakukan disesuaikan dengan inputan user Sentinel-value adalah nilai diluar domain inputan user Inputan user pertama kali dilakukan sebelum while
  • 19.
    contoh <script language=&quot;javascript&quot;>var gradeCounter, gradeValue, total, average, grade; total= 0; gradeCounter= 0; grade= window.prompt(&quot;Enter integr Grade, -1 to quit :&quot;, &quot;0&quot;); gradeValue= parseInt(grade); while(gradeValue!= -1){ total+= gradeValue; gradeCounter++;
  • 20.
    grade= window.prompt(&quot;Enter integrGrade, -1 to quit :&quot;, &quot;0&quot;); gradeValue= parseInt(grade); } if(gradeCounter != 0){ average= total/ gradeCounter; document.writeln(&quot;<h1>Class average is &quot;+ average+ &quot;</h1>&quot;); } else document.writeln(&quot;<p>no grades were entered</p>&quot;); </script>
  • 21.
  • 22.
    Nested control repetitionSebuah control-structure bisa ditempatkan di dalam control-structure yang lain Dalam javaScript, jika sebuah local-variable tidak diinisialisasi di awal maka akan otomatis diinisialisasi oleh javaScript
  • 23.
    contoh <script language= &quot;javascript&quot;> var maks, temp, counter; counter= 0; temp= window.prompt(&quot;masukkan input : &quot;, &quot;0&quot;); maks= parseInt(temp); var input= new Array(maks); while(counter< maks){ input[counter]= Math.floor(Math.random()*(maks+ 1)); counter++; } document.writeln(&quot;<h3>random generated initial array is: &quot;+input+&quot;</h3>&quot;);
  • 24.
    var i= 0;while(i< maks){ var r= 0; while(r< maks){ if(input[i]< input[r]){ var temp= input[i]; input[i]= input[r]; input[r]= temp; } r++; } i++; } document.writeln(&quot;<h3>Sorted array: &quot;+input+&quot;</h3>&quot;); </script>
  • 25.
  • 26.
    Assignment Operators Bentukoperasi assignment operators : c = c+ 3 equals to c+= 3 kedua ekspresi di atas sama-sama berfungsi untuk menambahkan nilai 3 kepada variabel c Bentuk c+= 3 hanya memiliki sedikit perbedaan dalam kecepatan eksekusi dengan bentuk c = c+ 3, namun kecepatan eksekusi akan jauh berbeda ketika melibatkan jumlah operasi yang besar
  • 27.
  • 28.
    Increment and DecrementsOperators Increment operators (++) c++; equals to c+= 1; equals to c= c+ 1; Decrement operators (–) c--; equals to c-= 1; equals to c= c- 1; Bisa digunakan untuk mengekspresikan preincremented/decremented atau postincremented/decremented Increment/decrement operators bisa mengurangi runtime ketika melakukan perulangan yang banyak
  • 29.