control statement i
TRANSCRIPT
![Page 1: Control Statement I](https://reader033.vdocument.in/reader033/viewer/2022050906/556186dcd8b42a91778b46cd/html5/thumbnails/1.jpg)
Java Script : Control Statement I
![Page 2: Control Statement I](https://reader033.vdocument.in/reader033/viewer/2022050906/556186dcd8b42a91778b46cd/html5/thumbnails/2.jpg)
Kelompok 7 :
Kharisma Muhammad 5108100104Pambudi Surya 5108100138Dading Zainul Gusti 5108100179
![Page 3: Control Statement I](https://reader033.vdocument.in/reader033/viewer/2022050906/556186dcd8b42a91778b46cd/html5/thumbnails/3.jpg)
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’.
![Page 4: Control Statement I](https://reader033.vdocument.in/reader033/viewer/2022050906/556186dcd8b42a91778b46cd/html5/thumbnails/4.jpg)
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
![Page 5: Control Statement I](https://reader033.vdocument.in/reader033/viewer/2022050906/556186dcd8b42a91778b46cd/html5/thumbnails/5.jpg)
If Selection Structure (I)• Bentuk umum dari if adalah :
if (kondisi)
{
pernyataan;
}
![Page 6: Control Statement I](https://reader033.vdocument.in/reader033/viewer/2022050906/556186dcd8b42a91778b46cd/html5/thumbnails/6.jpg)
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:
![Page 7: Control Statement I](https://reader033.vdocument.in/reader033/viewer/2022050906/556186dcd8b42a91778b46cd/html5/thumbnails/7.jpg)
if/else Selection Structure (I)
• Bentuk umum if…else adalah :
if(kondisi)
{
pernyataan1;
}
else
pernyataan2;
![Page 8: Control Statement I](https://reader033.vdocument.in/reader033/viewer/2022050906/556186dcd8b42a91778b46cd/html5/thumbnails/8.jpg)
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” );
![Page 9: Control Statement I](https://reader033.vdocument.in/reader033/viewer/2022050906/556186dcd8b42a91778b46cd/html5/thumbnails/9.jpg)
if/else Selection Structure (II)
• Flowchart
![Page 10: Control Statement I](https://reader033.vdocument.in/reader033/viewer/2022050906/556186dcd8b42a91778b46cd/html5/thumbnails/10.jpg)
if/else Selection Structure (III)• Conditional Operator (?:)
• Bentuk :
condition ? expression1 : expression2;
• Contohdocument.writeln(
nilaiMahasiswa >= 60 ? “Lulus” : “Tidak lulus” );
• Sama seperti if/else pada contoh sebelumnya.
![Page 11: Control Statement I](https://reader033.vdocument.in/reader033/viewer/2022050906/556186dcd8b42a91778b46cd/html5/thumbnails/11.jpg)
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”
![Page 12: Control Statement I](https://reader033.vdocument.in/reader033/viewer/2022050906/556186dcd8b42a91778b46cd/html5/thumbnails/12.jpg)
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” );
![Page 13: Control Statement I](https://reader033.vdocument.in/reader033/viewer/2022050906/556186dcd8b42a91778b46cd/html5/thumbnails/13.jpg)
while Repetition StructureProgram 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:
![Page 14: Control Statement I](https://reader033.vdocument.in/reader033/viewer/2022050906/556186dcd8b42a91778b46cd/html5/thumbnails/14.jpg)
Formulating Algorithms
Studi kasus 1 : counter-controlled repetition Studi kasus 2 : sentinel-controlled repetition Studi kasus 3 : nested control structure
![Page 15: Control Statement I](https://reader033.vdocument.in/reader033/viewer/2022050906/556186dcd8b42a91778b46cd/html5/thumbnails/15.jpg)
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
![Page 16: Control Statement I](https://reader033.vdocument.in/reader033/viewer/2022050906/556186dcd8b42a91778b46cd/html5/thumbnails/16.jpg)
Contoh
...
<script language="javascript">
var counter,
input,
output;
counter= 1;
while(counter<= 6){
document.writeln("<h" + counter+ ">Hello world"+ "</h"+ counter+">");
counter++;
}
</script>
...
![Page 17: Control Statement I](https://reader033.vdocument.in/reader033/viewer/2022050906/556186dcd8b42a91778b46cd/html5/thumbnails/17.jpg)
output
![Page 18: Control Statement I](https://reader033.vdocument.in/reader033/viewer/2022050906/556186dcd8b42a91778b46cd/html5/thumbnails/18.jpg)
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
![Page 19: Control Statement I](https://reader033.vdocument.in/reader033/viewer/2022050906/556186dcd8b42a91778b46cd/html5/thumbnails/19.jpg)
contoh<script language="javascript">
var gradeCounter,
gradeValue,
total,
average,
grade;
total= 0;
gradeCounter= 0;
grade= window.prompt("Enter integr Grade, -1 to quit :", "0");
gradeValue= parseInt(grade);
while(gradeValue!= -1){
total+= gradeValue;
gradeCounter++;
![Page 20: Control Statement I](https://reader033.vdocument.in/reader033/viewer/2022050906/556186dcd8b42a91778b46cd/html5/thumbnails/20.jpg)
grade= window.prompt("Enter integr Grade, -1 to quit :", "0");
gradeValue= parseInt(grade);
}
if(gradeCounter != 0){
average= total/ gradeCounter;
document.writeln("<h1>Class average is "+ average+ "</h1>");
}
else
document.writeln("<p>no grades were entered</p>");
</script>
![Page 21: Control Statement I](https://reader033.vdocument.in/reader033/viewer/2022050906/556186dcd8b42a91778b46cd/html5/thumbnails/21.jpg)
output
![Page 22: Control Statement I](https://reader033.vdocument.in/reader033/viewer/2022050906/556186dcd8b42a91778b46cd/html5/thumbnails/22.jpg)
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
![Page 23: Control Statement I](https://reader033.vdocument.in/reader033/viewer/2022050906/556186dcd8b42a91778b46cd/html5/thumbnails/23.jpg)
contoh<script language = "javascript">
var maks,
temp,
counter;
counter= 0;
temp= window.prompt("masukkan input : ", "0");
maks= parseInt(temp);
var input= new Array(maks);
while(counter< maks){
input[counter]= Math.floor(Math.random()*(maks+ 1));
counter++;
}document.writeln("<h3>random generated initial array is: "+input+"</h3>");
![Page 24: Control Statement I](https://reader033.vdocument.in/reader033/viewer/2022050906/556186dcd8b42a91778b46cd/html5/thumbnails/24.jpg)
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("<h3>Sorted array: "+input+"</h3>");
</script>
![Page 25: Control Statement I](https://reader033.vdocument.in/reader033/viewer/2022050906/556186dcd8b42a91778b46cd/html5/thumbnails/25.jpg)
output
![Page 26: Control Statement I](https://reader033.vdocument.in/reader033/viewer/2022050906/556186dcd8b42a91778b46cd/html5/thumbnails/26.jpg)
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
![Page 27: Control Statement I](https://reader033.vdocument.in/reader033/viewer/2022050906/556186dcd8b42a91778b46cd/html5/thumbnails/27.jpg)
Tabel of Assignment Operators
![Page 28: Control Statement I](https://reader033.vdocument.in/reader033/viewer/2022050906/556186dcd8b42a91778b46cd/html5/thumbnails/28.jpg)
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
![Page 29: Control Statement I](https://reader033.vdocument.in/reader033/viewer/2022050906/556186dcd8b42a91778b46cd/html5/thumbnails/29.jpg)
Tabel increment and decrement