Viết chương trình sử dụng switch để tìm ra số lớn hơn giữa 2 số nguyên nhập vào từ bàn phím
Ép kiểu trong java là việc gán giá trị của một biến có kiểu dữ liệu này tới biến khác có kiểu dữ liệu khác. Và có 02 dạng ép kiểu. float c = 30.8f; int b = (int)c + 2;Trong ví dụ trên, đầu tiên giá trị dấu phảy động c được đổi thành giá trị nguyên 30. Sau đó nó được cộng với 1 và kết quả là giá trị 31 được lưu vào b. Nới rộng (widening)Là quá trình làm tròn số từ kiểu dữ liệu có kích thước nhỏ hơn sang kiểu có kích thước lớn hơn. Kiểu biến đổi này không làm mất thông tin. Ví dụ chuyển từ int sang float. Chuyển kiểu loại này có thế được thực hiện ngầm định bởi trình biên dịch. byte >> short >> int >> long >> float >> double Ví dụ: Minh hoạ về widening public class TestWidening { public static void main(String[] args) { int i = 100; long l = i; // không yêu cầu chỉ định ép kiểu float f = l; // không yêu cầu chỉ định ép kiểu System.out.println("Giá trị Int: " + i); System.out.println("Giá trị Long: " + l); System.out.println("Giá trị Float: " + f); } }Kết quả: Giá trị Int: 100 Giá trị Long: 100 Giá trị Float: 100.0Thu hẹp (narrowing)Là quá trình làm tròn số từ kiểu dữ liệu có kích thước lớn hơn sang kiểu có kích thước nhỏ hơn. Kiểu biến đổi này có thể làm mất thông tin như ví dụ ở trên. Chuyển kiểu loại này không thể thực hiện ngầm định bởi trình biên dịch, người dùng phải thực hiện chuyển kiểu tường minh. double >> float >> long >> int >> short >> byte Ví dụ: Minh hoạ về narrowing public class TestNarrowwing { public static void main(String[] args) { double d = 100.04; long l = (long) d; // yêu cầu chỉ định kiểu dữ liệu (long) int i = (int) l; // yêu cầu chỉ định kiểu dữ liệu (int) System.out.println("Giá trị Double: " + d); System.out.println("Giá trị Long: " + l); System.out.println("Giá trị Int: " + i); } }Kết quả: Giá trị Double: 100.04 Giá trị Long: 100 Giá trị Int: 100CÁC TOÁN TỬToán tử trong java là một ký hiệu được sử dụng để thực hiện một phép tính/chức năng nào đó. Java cung cấp các dạng toán tử sau: Toán tử số họcCác toán hạng của các toán tử số học phải ở dạng số. Các toán hạng kiểu boolean không sử dụng được, các toán hạng ký tự cho phép sử dụng loại toán tử này. Một vài kiểu toán tử được liệt kê trong bảng dưới đây. Giả sử, chúng ta có biến số nguyên a = 10 và b = 20.
Toán tử BitCác toán tử dạng bit cho phép chúng ta thao tác trên từng bit riêng biệt trong các kiểu dữ liệu nguyên thuỷ.
Toán tử quan hệCác toán tử quan hệ được sử dụng kiểm tra mối quan hệ giữa hai toán hạng. Kết quả của một biểu thức có dùng các toán tử quan hệ là những giá trị Boolean (logic “true” hoặc “false”). Các toán tử quan hệ được sử dụng trong các cấu trúc điều khiển.
Toán tử logicCác toán tử logic làm việc với các toán hạng Boolean. Các toán tử quan hệ được sử dụng trong các cấu trúc điều khiển.
Toán tử điều kiệnToán tử điều kiện là một loại toán tử đặc biệt vì nó bao gồm ba thành phần cấu thành biểu thức điều kiện. Cú pháp:
Ví dụ: public class Test { public static void main(String[] args) { int a = 20; int b = 3; String s = (a % b == 0) ? "a chia het cho b" : "a khong chia het cho b"; System.out.println(s); } }Kết quả a khong chia het cho bLỆNH ĐIỂU KHIỂN IF – ELSELệnh điều khiển if trong java được sử dụng để kiểm tra giá trị dạng boolean của điều kiện. Kết quả lệnh này trả về giá trị True hoặc False . Có các kiểu if-else trong java như sau: Dạng mệnh đề ifMệnh đề if được sử dụng để kiểm tra giá trị dạng boolean của điều kiện. Khối lệnh sau if được thực thi nếu giá trị của điều kiện là True. Cú pháp: Ví dụ minh hoạ: public class Test { public static void main(String[] args) { int age = 20; if (age > 18) { System.out.print("Tuổi lớn hơn 18"); } } }Kết quả: Tuổi lớn hơn 18Dạng mệnh đề if-elseMệnh đề if-else cũng kiểm tra giá trị dạng boolean của điều kiện. Nếu giá trị điều kiện là True thì chỉ có khối lệnh sau if sẽ được thực hiện, nếu là False thì chỉ có khối lệnh sau else được thực hiện. Cú pháp: if (condition) { // khối lệnh này được thực thi // nếu condition = true } else { // khối lệnh này được thực thi // nếu condition = false }Ví dụ minh hoạ: public class Test { public static void main(String[] args) { int number = 13; if (number % 2 == 0) { System.out.println("Số " + number + " là số chẵn."); } else { System.out.println("Số " + number + " là số lẻ."); } } }Kết quả: Số 13 là số lẻ.Dạng mệnh đề if-else-ifMệnh đề if-else-if cũng kiểm tra giá trị dạng boolean của điều kiện. Nếu giá trị điều kiện if là True thì chỉ có khối lệnh sau if sẽ được thực hiện. Nếu giá trị điều kiện if else nào là True thì chỉ có khối lệnh sau else if đó sẽ được thực hiện… Nếu tất cả điều kiện của if và else if là False thì chỉ có khối lệnh sau else sẽ được thực hiện. Cú pháp: if (condition1) { // khối lệnh này được thực thi // nếu condition1 là true } else if (condition2) { // khối lệnh này được thực thi // nếu condition2 là true } else if (condition3) { // khối lệnh này được thực thi // nếu condition3 là true } ... else { // khối lệnh này được thực thi // nếu tất cả những điều kiện trên là false }Ví dụ minh hoạ: public class Test { public static void main(String[] args) { int marks = 65; if (marks < 50) { System.out.println("Tạch!"); } else if (marks >= 50 && marks < 60) { System.out.println("Xếp loại D"); } else if (marks >= 60 && marks < 70) { System.out.println("Xếp loại C"); } else if (marks >= 70 && marks < 80) { System.out.println("Xếp loại B"); } else if (marks >= 80 && marks < 90) { System.out.println("Xếp loại A"); } else if (marks >= 90 && marks < 100) { System.out.println("Xếp loại A+"); } else { System.out.println("Giá trị không hợp lệ!"); } } }Kết quả: Kết quả CSWITCH – CASE Mệnh đề switch-case trong java được sử dụng để thực thi 1 hoặc nhiều khối lệnh từ nhiều điều kiện. Cú pháp: switch (bieu_thuc) { case gia_tri_1: // Khối lệnh 1 break; //tùy chọn case gia_tri_2: // Khối lệnh 2 break; //tùy chọn ...... case gia_tri_n: // Khối lệnh n break; //tùy chọn default: // Khối lệnh này được thực thi // nếu tất cả các điều kiện trên không thỏa mãn }Ví dụ minh hoạ: public class SwitchExample { public static void main(String[] args) { int number = 20; switch (number) { case 10: System.out.println("10"); break; case 20: System.out.println("20"); break; case 30: System.out.println("30"); break; default: System.out.println("Not in 10, 20 or 30"); } } }Kết quả: Kết quả:20Mệnh đề Switch-case khi không sử dụng ‘break’Khi không sử dụng từ khóa ‘break’ trong mệnh đề switch-case. Điều này có nghĩa là các khối lệnh sau case có giá trị phù hợp sẽ được thực thi. Ví dụ về mệnh đề switch-case: public class SwitchExample2 { public static void main(String[] args) { int number = 20; switch (number) { case 10: System.out.println("10"); case 20: System.out.println("20"); case 30: System.out.println("30"); default: System.out.println("Not in 10, 20 or 30"); } } }Kết quả: 20 30 Not in 10, 20 or 30VIDEO DEMO CODE LÝ THUYẾTVIDEO DEMO CODE GIẢI BÀI TẬPĐề bài bài số 1. Viết chương trình nhập 1 số nguyên từ bàn phím. Xác định đây là số chẵn hay số lẻ? Yêu cầu:
Đề bài bài số 2. Viết chương trình nhập 1 số nguyên từ bàn phím (số năm). Xác định đây có phải là năm nhuận? Yêu cầu:
Hướng dẫn:
Đề bài bài số 3. Viết chương trình cho phép nhập vào một số nguyên dạng số, sau khi chạy thì chương trình sẽ ghi số đó ra dưới dạng chữ. Ví dụ: 1 -> Một, 2 -> Hai, …
Đề bài bài số 4. Viết chương trình nhập a, b là hệ số phương trình bậc nhất dạng ax + b = 0. Giải phương trình bậc nhất này? Yêu cầu:
Hướng dẫn: Sử dụng lệnh if để xét giá trị của a và b if(a == 0){ if(b == 0){ PT Vô số nghiệm } else { PT Vô nghiệm } } else { PT Có nghiệm và nghiệm x = -b/a; }Đề bài bài số 5. Viết chương trình nhập a, b, c là hệ số phương trình bậc 2 dạng ax2 + bx + c = 0. Giải phương trình bậc 2 này? Yêu cầu:
Hướng dẫn: Cứ nhập 3 số a, b và c bất kỳ:
Đề bài bài số 6. Viết chương trình cho phép nhập vào 3 số thực. Kiểm tra giá trị 3 số thực có phải là độ dài của tam giác? Và xác định là tam giác gì? Yêu cầu:
Hướng dẫn:
Đề bài bài số 7. Tìm số lớn nhất trong 3 số nhập từ bàn phím Yêu cầu:
Hướng dẫn:
Đề bài số 8. Viết chương trình tính tiền điện và việc tính tiền điện được tính như sau: >> Nếu số Kwh từ 0->50 thì giá 1000 VNĐ. >> Ngược lại, nếu số Kwh >50 thì giá 1200 VNĐ. Yêu cầu: >> Input: Nhập số nguyên là số Kwh điện sử dụng. >> Output: Tính số tiền điện đã sử dụng. Đề bài số 9. Viết một chương trình tổ chức menu minh hoạ cho các chương trình trên và một chức năng thoát chương trình. |