Bài 17 biểu thức điều kiện và vòng lặp trong javascript

 

LAB 4: JAVASCRIPT

BIỂU THỨC ĐIỀU KIỆN VÀ VÒNG LẶP

A – LÝ THUYẾT

I – LÀM VIỆC VỚI BIỂU THỨC ĐIỀU KIỆN TRONG JAVASCRIPT

1 – Biểu thức IF

Là biểu thức dùng kiểm tra 1 sự kiện. Nếu chúng thỏa điều kiện đó thì sẽ thực thi một hành động

Cú pháp sử dụng:

if(Điều kiện){

Thực thi hành động;

}




2 – Biểu thức IF…ELSE

Là biểu thức dùng kiểm tra 1 sự kiện. Nếu chúng thỏa điều kiện đó thì sẽ thực thi một hành động. Ngược lại nếu không thì sẽ thực thi một hành động khác

Cú pháp sử dụng:

if(Điều kiện){

Thực thi hành động 1;

}

else{

Thực thi hành động 2;

}

 

3 – Biểu thức SWITCH…CASE

Là biểu thức sử dụng để giảm thiểu quá trình xử lý dữ liệu nếu có quá nhiều phép toán IF…ELSE

Cú pháp sử dụng:

switch(Biến){

case Giá trị 1: Hành động;

break;

 

case Giá trị 2: Hành động;

break;

case Giá trị n: Hành động;

break;

 

default: Hành động;

}


II – LÀM VIỆC VỚI VÒNG LẶP TRONG JAVASCRIPT

1 – Vòng lặp WHILE

Phép lặp này yêu cầu phải thỏa mãn điều kiện thì mới thực thi được vòng lặp

Cú pháp sử dụng:

while(Điều kiện){

Thực thi hành động;

}

 

2 – Vòng lặp DO…WHILE

Phép lặp này sẽ thực thi hành động ít nhất là một lần. Sau đó mới tiến hành kiểm tra điều kiện

Cú pháp sử dụng:

do{

Thực thi hành động;

}

while(Điều kiện)

 

3 – Vòng lặp FOR

Phép lặp này là phép toán gộp các tham số. Giúp người lập trình giảm thiểu thời gian phải khai báo biến và các tham số khi thực thi việc lặp dữ liệu

Cú pháp sử dụng:

for(Biến khởi tạo; Điều kiện; Tăng hoặc giảm biến khởi tạo){

Thực thi hành động;

}

 

B – THỰC HÀNH

I – BÀI TẬP THỰC HÀNH

Bài 1: Ôn tập về biểu thức điều kiện (Có thể dùng một trong các biểu thức điều kiện IF, IF ELSE, ELSE IF, SWITCH để giải quyết bài toán).

           

Khai báo một biến var a với một kiểu dữ liệu bất kỳ (Integer, Float, String, Boolean). Viết chương trình kiểm tra kiểu dữ liệu của biến $a nếu biến $a có giá trị là dữ liệu

·         Kiểu Integer thì hiển thị thông báo “Biến a có giá trị là dữ liệu kiểu số nguyên”

·         Kiểu Float thì hiển thị thông báo “Biến a có giá trị là dữ liệu kiểu số thực”

·         Kiểu String thì hiển thị thông báo “Biến a có giá trị là dữ liệu kiểu chuỗi”

·         Kiểu Boolean thì hiển thị thông báo “Biến a có giá trị là dữ liệu kiểu Boolean”

·         Ký tự không thuộc các kiểu dữ liệu trên thì hiển thị thông báo “Biến a có giá trị là dữ liệu kiểu khác”

Thay đổi kiểu dữ liệu của giá trị biến a để kiểm tra chương trình

 

Cho biết hàm typeof() sẽ nhận vào một biến bất kỳ và trả về kết quả là tên kiểu dữ liệu của biến đó

 

Bài 2: Ôn tập về vòng lặp (Có thể dùng một trong các vòng lặp WHILE, DO WHILE, FOR để giải quyết bài toán)

Viết chương trình tính tổng từ 1 đến 100 (1 + 2 + 3 +…+ 99 + 100)

 

 

II – BÀI TẬP VỀ NHÀ

Bài 3:

Viết chương trình tính tổng các số chẵn từ 1 đến 50 (2 + 4 + 6 +…+ 48 + 50) bằng 3 cách

·         Dùng vòng lặp WHILE

·         Dùng vòng lặp DO WHILE

·         Dùng vòng lặp FOR

 

Bài 4:

Viết chương trình tính tổng các số lẻ từ 1 đến 50 (1 + 3 + 5 +…+ 47 + 49) bằng 3 cách

·         Dùng vòng lặp WHILE

·         Dùng vòng lặp DO WHILE

·         Dùng vòng lặp FOR

 

Bài 5:

Viết chương trình tính nghiệm của phương trình bậc nhất 1 ẩn số

·         Ax + B = 0

 

Bài 6:

Viết chương trình tính nghiệm của phương trình bậc 2 một ẩn số

·         Ax2 + Bx + C = 0

 

Bài 7:

Viết chương trình tính giai thừa của một số n bất kỳ bằng 3 cách

·         Dùng vòng lặp WHILE

·         Dùng vòng lặp DO WHILE

·         Dùng vòng lặp FOR

Biết n! (n giai thừa) được tính bằng công thức n! = 1*2*…*(n-1)*n 

Bài 8:

Viết chương trình chuyển đổi các tháng trong năm từ tiếng việt sang tiếng anh. VD: “tháng một” -> “January”, “tháng hai” -> “February”,…, “tháng mười hai” -> “December”. Làm bằng 2 cách

·         Sử dụng biểu thức điều kiện ELSEIF

·         Sử dụng biểu thức SWITCH CASE

Khai báo một biến $thang với giá trị là tên của các tháng bằng tiếng việt, sau đó thay đổi giá trị của biến $thang để kiểm tra chương trình 

Bài 9:

Viết chương trình tìm số lớn nhất (SLN) và số bé nhất (SBN) trong 5 số bất kỳ (Khai báo 5 biến với giá trị là 5 số tương ứng bất kỳ)

 

Bài 10:

Viết chương trình hiển thị bảng cửu chương như hình dưới đây:

 


Đáp án

Bài 1:

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

<html xmlns="http://www.w3.org/1999/xhtml">

<head>

<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />

<title>Bai 14 --&gt; bai tap 1.html</title>

</head>


<body>

 <script language="javascript">

var a = "đây là chuỗi" ; 

var b = typeof a;

switch(b){

case "boolean": document.write("Biến a có giá trị là dữ liệu kiểu boolean");

break;


case "number": document.write("Biến a có giá trị là  dữ liệu kiểu number");

break;


case "string": document.write("Biến a có giá trị là  dữ liệu kiểu chuỗi");

break;


default: document.write("Biến a có giá trị là  dữ liệu kiểu khác");

break;

}

</script>

</body>

</html>


Bài 2:

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

<html xmlns="http://www.w3.org/1999/xhtml">

<head>

<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />

<title>Bai 14 --&gt; bai tap 2.html</title>

</head>


<body>

<script language="javascript">

/* Chuong trinh tinh tong tu 1 den 100 */

/* Vong lap for */

var tong1 = 0;

for (var i = 1; i <=100 ; i++)

{

tong1 = tong1 + i;

}

document.write("Tổng từ 1 đến 100 (vòng lặp for) là: <b>" + tong1 + "</b><br>");



/* Cach 2: Dung vong lap while */

var tong2 = 0;

var i = 0;

while(i<=100){

tong2 = tong2 + i;

i +=1;

}

document.write("Tổng từ 1 đến 100 (vòng lặp while) là: <b> " + tong2 + "</b><br>");


/* Cach 3: Dung vong lap do...while */

var tong3 = 0; 

var i = 0;

do{

tong3 = tong3 + i;

i+=1;

}while(i<=100);

document.write("Tỏng từ 1 đến 100 (vòng lặp do...while là: <b> " + tong3 + "</b><br>");

</script>

</body>

</html>


Bài 3:

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

<html xmlns="http://www.w3.org/1999/xhtml">

<head>

<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />

<title>Bai 14 --&gt; bai tap 3.html</title>

</head>


<body>

<script language="javascript">

/* Chuong trinh tinh tong cac so chan tu 1 -> 50 */

/* Cach 1: Dung vong lap for */

var tong1 = 0;

for( var i =0; i<=50; i+=2){

tong1 = tong1 + i;

}

document.write("Tổng các số chẵn từ 1 -> 50 (vòng lặp for) là: <b> " + tong1 + "</b><br>");


/* Cach 2: Dung vong lap while */

var tong2 = 0;

var i = 0;

while(i<=50){

tong2 = tong2 + i;

i +=2;

}

document.write("Tổng các số chẵn từ 1 -> 50 (vòng lặp while) là: <b> " + tong2 + "</b><br>");


/* Cach 3: Dung vong lap do...while */

var tong3 = 0; 

var i = 0;

do{

tong3 = tong3 + i;

i+=2;

}while(i<=50);

document.write("Tổng các số chẵn từ 1 -> 50 (vòng lặp do...while) là: <b> " + tong3 + "</b><br>");

</script>

</body>

</html>

Bài 4:

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

<html xmlns="http://www.w3.org/1999/xhtml">

<head>

<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />

<title>Bai 14 --&gt; bai tap 4.html</title>

</head>


<body>

<script language="javascript">

/* Chuong trinh tinh tong cac so le tu 1 -> 50 */

/* Cach 1: Dung vong lap for */

var tong1 = 0;

for( var i =1; i<=50; i+=2){

tong1 = tong1 + i;

}

document.write("Tổng các số lẻ từ 1 -> 50 (vòng lặp for) là: <b> " + tong1 + "</b><br>");


/* Cach 2: Dung vong lap while */

var tong2 = 0;

var i = 1;

while(i<=50){

tong2 = tong2 + i;

i +=2;

}

document.write("Tổng các số lẻ từ 1 -> 50 (vòng lặp while) là: <b> " + tong2 + "</b><br>");


/* Cach 3: Dung vong lap do...while */

var tong3 = 0; 

var i = 1;

do{

tong3 = tong3 + i;

i+=2;

}while(i<=50);

document.write("Tổng các số lẻ từ 1 -> 50 (vòng lặp do...while) là: <b> " + tong3 + "</b><br>");

</script>

</body>

</html>

Bài 5:

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

<html xmlns="http://www.w3.org/1999/xhtml">

<head>

<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />

<title>Bai 14 --&gt; bai tap 5.html</title>

</head>


<body>

<script language="javascript">

/* Chuong trinh tinh nghiem cua phuong trinh bac nhat 1 an: Ax + B = 0 */


var A = prompt("Nhập vào giá trị của A: ");

var B = prompt ("Nhập vào giá trị của B: ");

if (A == 0)

{

if(B == 0)

alert("Phương trình vô số nghiệm. ");

else 

alert("Phương trình vô nghiệm. ");

}

else

{

alert("Phương trình có nghiệm là: x = " + -(B/A) );

}

</script>

</body>

</html>

Bài 6:

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

<html xmlns="http://www.w3.org/1999/xhtml">

<head>

<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />

<title>Bai 14 --&gt; Bai tap 6.html</title>

</head>


<body>

<script language="javascript">

/* Chuong trinh tinh nghiem cua phuong trinh bac 2 mot an so: Ax2 + Bx + C = 0 */

var A = prompt("Nhập vào hệ số A: ");

var B = prompt("Nhập vào hệ số B: ");

var C = prompt("Nhập vào hệ số C: ");

if(A == 0)

{

/* giai phuong trinh bac 1: Bx + C = 0 */

if (B == 0)

{

if(C == 0)

alert("Phương trình vô số nghiệm. ");

else 

alert("Phương trình vô nghiệm. ");

}

else

{

alert("Phương trình có nghiệm là: " + -(C/B) );

}

}

else /* Giai phuong trinh bac hai */

{

var del = B*B - 4*A*C;

if(del < 0)

{

alert("Phương trình vô nghiệm");

}

else if(del == 0)

{

var x = -B/(2*A);

alert("Phương trình có nghiệm kép x1 = x2 = " + x);

}

else

{

x1=(-B-Math.sqrt(del))/(2*A);

x2=(-B+Math.sqrt(del))/(2*A);

alert ("Phương trình có 2 nghiệm phân biệt x1 = " + x1 + " va x2 = " + x2);

}

}

</script>

</body>

</html>

Bài 7:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>Bai 14 --&gt; bai tap 7.html</title>
</head>

<body>
<script language="javascript">
/* Chuong trinh tinh giai thua cua 1 so */
var n = prompt("Vòng lặp for: Nhập vào n =  ");
var x = parseInt(n);
var giaithua1 = 1;
/* Vong lap for */
for (var i = 1; i<=x; i++){
giaithua1 = giaithua1*i;
}
document.write("Giai thừa của số " + x + " sử dụng vòng lặp for là: <b>" + giaithua1 + "</b><br>");

/* Vong lap while */
var n = prompt("Vòng lặp while: Nhập vào n =  ");
var x = parseInt(n);
var giaithua2 = 1;
var i = 1;
while(i<=x){
giaithua2 = (giaithua2)*i;
i++;
}
document.write("Giai thừa của số " + x + " sử dụng vòng lặp while là: <b>" + giaithua2 + "</b><br>");

/* Vong lap do...while */
var n = prompt("Vòng lặp do...while: Nhập vào n =  ");
var x = parseInt(n);
var giaithua3 = 1;
var i = 1; 
do{
giaithua3 = giaithua3*i;
i++;
}
while(i<=x)
document.write("Giai thừa của số " + x + " sử dụng vòng lặp do...while la: <b>" + giaithua3 + "</b><br>");

</script>
</body>
</html>


Bài 8:

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

<html xmlns="http://www.w3.org/1999/xhtml">

<head>

<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />

<title>Bai 14 --&gt; bai tap 8.html</title>

</head>


<body>

<script language="javascript">

/*chuong trinh chuyen doi thang tu tieng viet sang tieng anh */

/* dung if else */

var thang = "tháng mười một";

if(thang=="tháng một" || thang=="tháng giêng") document.write("January");

else if(thang=="tháng hai") document.write("February");

if(thang=="tháng ba") document.write("March");

else if(thang=="tháng tư") document.write("April");

if(thang=="tháng năm") document.write("May");

else if(thang=="tháng sáu") document.write("June");

if(thang=="tháng bảy") document.write("July");

else if(thang=="tháng tám") document.write("August");

if(thang=="tháng chín") document.write("September");

else if(thang=="tháng mười") document.write("October");

if(thang=="tháng mười một") document.write("November");

else if(thang=="tháng mười hai" || thang=="tháng chạp") document.write("December");

else document.write("Khong co thang nay nhe");

</script>

<br />

<script language="javascript">

/*dung switch case */

var thang = "tháng giêng";

switch(thang){

case "tháng một":

case "tháng giêng": document.write("January");break;

case "tháng hai":    document.write("February");break;

case "tháng ba":    document.write("March");break;

case "tháng bốn":

case "tháng tư":     document.write("April");break;

case "tháng năm":    document.write("May");break;

case "tháng sáu":    document.write("June");break;

case "tháng bảy":    document.write("July");break;

case "tháng tám":    document.write("August");break;

case "tháng chín":  document.write("September");break;

case "tháng mười":  document.write("October");break;

case "tháng mười một": document.write("November");break;

case "tháng mười hai": 

case "tháng chạp":    document.write("December");break;

default: document.write("Không có tháng này nhé");break;

}

</script>

</body>

</html>


Bài 9:

<html>

<head><title>Bai 14 -->bai tap 9.html</title>

<style>


</style>

<body>

<script language="javascript">

var a = prompt("Nhập vào số thứ nhất: ");

a = parseInt(a);

var b = prompt("Nhập vào số thứ hai: ");

b = parseInt(b);

var c = prompt("Nhập vào số thứ ba: ");

c = parseInt(c);

var d = prompt("Nhập vào số thứ tư: ");

d = parseInt(d);

var e = prompt("Nhập vào số thứ năm: ");

e = parseInt(e);


var max=a;

if(max<=b) max = b;

if(max <=c) max = c;

if(max <=d) max = d;

if(max <=e) max = e;

alert("Số lớn nhất trong 5 số trên là: " + max);


var min = a;

if(min>=b) min = b;

if(min >=c) min = c;

if(min >=d) min = d;

if(min >=e) min = e;

alert("Số nhỏ nhất trong 5 số trên là " + min);

</script>

</body>

</html>


Bài 10:

<html>

<head></head>

<body>

<script>

n=prompt("Nhap");

if(n==2)

{document.write("<font color=red><b>BANG CUU CHUONG 2");

document.write("<font color=blue>");

for(j=1;j<=9;j++)

{

document.write("<br>",j," x 2 = ",+2*j);

}

}

if(n==3)

{document.write("<font color=red><b>BẢNG CỬU CHƯƠNG 3");

 document.write("<font color=blue>");

for(j=1;j<=9;j++)

{

document.write("<br>"," 3 x ",j,"=",+3*j);

}

}

if(n==4)

{document.write("<font color=red><b>BANG CUU CHUONG 4");

 document.write("<font color=blue>");

for(j=1;j<=9;j++)

{

document.write("<br>",j," x 4 = ",+4*j);

}

}

if(n==5)

{document.write("<font color=red><b>BANG CUU CHUONG 5");

 document.write("<font color=blue>");

for(j=1;j<=9;j++)

{

document.write("<br>",j," x 5 = ",+5*j);

}

}

else

if(n==6)

{document.write("<font color=red><b>BANG CUU CHUONG 6");

 document.write("<font color=blue>");

for(j=1;j<=9;j++)

{

document.write("<br>",j," x 6 = ",+6*j);

}

}

if(n==7)

{document.write("<font color=red><b>BANG CUU CHUONG 7");

 document.write("<font color=blue>");

for(j=1;j<=9;j++)

{

document.write("<br>",j," x 7 = ",+7*j);

}

}

if(n==8)

{document.write("<font color=red><b>BANG CUU CHUONG 8");

for(j=1;j<=9;j++)

{

document.write("<br>",j," x 8 = ",+8*j);

}

}

if(n==9)

{document.write("<font color=red><b>BANG CUU CHUONG 9</font>");

document.write("<font color=blue>");

for(j=1;j<=9;j++)

{

document.write("<br>",j," x 9 = ",9*j);

}

}

</script>

</body>

</html>


>>Xem bài trước: Bài 16 - Toán tử trong javascript


>>Xem bài tiếp theo:  Bài 18 mảng trong javascript

No comments:

Post a Comment