Upload
guestf9c4a0
View
650
Download
3
Tags:
Embed Size (px)
Citation preview
Java Script : Control Statement I
Kelompok 7 :
Kharisma Muhammad 5108100104Pambudi Surya 5108100138Dading 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;
• Contohdocument.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 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:
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="javascript">
var counter,
input,
output;
counter= 1;
while(counter<= 6){
document.writeln("<h" + counter+ ">Hello world"+ "</h"+ counter+">");
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="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++;
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>
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 = "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>");
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>
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