Lệnh If/else, Lệnh Switch/case Trong Java

--- Bài mới hơn ---

  • Tính Kế Thừa Trong Java
  • Java: Bài Tập Phần Thừa Kế
  • Lập Trình Mạng Với Java
  • Giải Bài Tập Kinh Tế Vĩ Mô Chương 2
  • Bài Tập Kinh Tế Vĩ Mô Có Đáp Án Tham Khảo 2
  • Như các ngôn ngữ lập trình khác, ngôn ngữ Java cũng hỗ trợ cấu trúc điều khiển luồng. Với cấu trúc này, chương trình sẽ kiểm tra một hoặc nhiều điều kiện và nếu các điều kiện này là true, thì lệnh hoặc các lệnh tương ứng với điều kiện true này sẽ được thực hiện, nếu không thì các lệnh tương ứng với điều kiện false sẽ được thực thi.

    Một lệnh if trong Java bao gồm một Bieu_thuc_Boolean được theo sau bởi một hoặc nhiều lệnh. Nếu Bieu_thuc_Boolean được ước lượng là true thì các lệnh trong phần thân lệnh if sẽ được thực thi.

    Một lệnh if có thể được theo sau bởi một lệnh else tùy ý, mà thực thi khi Bieu_thuc_Boolean là false.

    Nó là hợp lệ để lồng các lệnh if-else, nghĩa là bạn có thể sử dụng một lệnh if hoặc else if bên trong lệnh if hoặc else if khác.

    Lệnh switch cho phép bạn kiểm tra một biến bình đẳng với một danh sách các giá trị. Mỗi giá trị được gọi là một case – trường hợp. Nếu giá trị này trùng với case nào thì các lệnh tương ứng với case đó sẽ được thực thi.

    Toán tử điều kiện (? 🙂 trong Java

    Ngoài các lệnh kể trên, ngôn ngữ Java còn có một loại toán tử điều kiện giúp bạn kiểm tra nhanh các điều kiện và thực hiện phép gán giá trị cho một biến một cách rất nhanh chóng.

    Toán tử này gồm ba toán hạng và được sử dụng để ước lượng các biểu thức quan hệ. Mục tiêu của toán tử là quyết định giá trị nào sẽ được gán cho biến. Toán tử này được viết như sau:

    bien x = (bieu_thuc) ? (giatri1 neu true) : (giatri2 neu true); //hoac ban cung co the su dung trong cac lenh RETURN return (bieu_thuc) ? (giatri1 neu true) : (giatri2 neu false);

    public class Test { public static void main(String args[]){ int a , b; a = 10; b = (a == 1) ? 20: 30; //Day la vi du ve toan tu dieu kien. System.out.println( "Gia tri cua b la : " + b ); b = (a == 10) ? 20: 30; //Day la vi du ve toan tu dieu kien. System.out.println( "Gia tri cua b la : " + b ); } }

    Nó sẽ cho kết quả sau:

    Gia tri cua b la : 30 Gia tri cua b la : 20

    Chương tới bàn về lớp Number (trong chúng tôi package) và các lớp phụ của nó trong ngôn ngữ Java.

    Chúng ta sẽ xem xét một số tình huống mà bạn sẽ sử dụng các khởi tạo của các lớp ngoài các kiểu dữ liệu gốc, cũng như định dạng, các hàm toán học mà bạn cần biết khi làm việc với Number.

    Đã có app VietJack trên điện thoại, giải bài tập SGK, SBT Soạn văn, Văn mẫu, Thi online, Bài giảng….miễn phí. Tải ngay ứng dụng trên Android và iOS.

    Theo dõi chúng tôi miễn phí trên mạng xã hội facebook và youtube:

    Các bạn có thể mua thêm khóa học JAVA CORE ONLINE VÀ ỨNG DỤNG cực hay, giúp các bạn vượt qua các dự án trên trường và đi thực tập Java. Khóa học có giá chỉ 300K, nhằm ưu đãi, tạo điều kiện cho sinh viên cho thể mua khóa học.

    Nội dung khóa học gồm 16 chuơng và 100 video cực hay, học trực tiếp tại https://www.udemy.com/tu-tin-di-lam-voi-kien-thuc-ve-java-core-toan-tap/ Bạn nào có nhu cầu mua, inbox trực tiếp a Tuyền, cựu sinh viên Bách Khoa K53, fb: https://www.facebook.com/tuyen.vietjack

    Loạt bài hướng dẫn của chúng tôi dựa một phần trên nguồn tài liệu của: Tutorialspoint.com

    Follow facebook cá nhân Nguyễn Thanh Tuyền https://www.facebook.com/tuyen.vietjack để tiếp tục theo dõi các loạt bài mới nhất về Java,C,C++,Javascript,HTML,Python,Database,Mobile…. mới nhất của chúng tôi.

    Bài học Java phổ biến tại vietjack.com:

    --- Bài cũ hơn ---

  • 90 Câu Trắc Nghiệm Môn Kĩ Thuật Nghiệp Vụ Ngoại Thương (Đã Chỉnh Sửa)
  • Hàm Số Lượng Giác Lớp 11 Nâng Cao
  • Giải Bài 1,2,3,4 Trang 17 Sgk Giải Tích Lớp 11 (Bài Tập Hàm Số Lượng Giác)
  • Giải Bài Tập 2 Mặt Phẳng Song Song
  • Giải Toán 11 Bài 4. Hai Mặt Phẳng Song Song
  • Lệnh Switch Case Trong C

    --- Bài mới hơn ---

  • Bài Tập Về Switch Case Trong C/c++
  • Bài Tập Java Lập Trình Hướng Đối Tượng Có Lời Giải Pdf
  • Bài Tập Mảng 1 Chiều Trong C/c++ Có Đáp Án
  • Bài Tập Java Cơ Bản Có Lời Giải
  • Java: Solution Tham Khảo Bài Tập Phần Class
  • Lệnh switch case là một cấu trúc điều khiển & rẽ nhánh hoàn toàn có thể được thay thế bằng cấu trúc if else. Tuy nhiên, việc sử dụng switch case sẽ giúp code của chúng ta dễ viết và dễ đọc hơn; Một điều nữa là sử dụng switch case có vẻ như cho hiệu năng tốt hơn so với sử dụng if else. Bạn có thể xem rõ hơn về ưu nhược điểm của dùng lệnh switch case ở phần tài liệu tham khảo

    Video hướng dẫn lệnh switch case

    Cách hoạt động của cấu trúc switch case

    • expssion phải bắt buộc là giá trị hằng, có thể là biểu thức nhưng kết quả cần là hằng số.
    • Trong đó, expssion sẽ được tính toán 1 lần duy nhất và sau đó so sánh với các giá trị của các case.
    • Nếu có 1 case nào đó khớp giá trị, các khối lệnh tương ứng sau case đó sẽ được thực hiện cho tới khi gặp lệnh break. Do đó, nếu chúng ta không sử dụng break thì tất cả các case kể từ case khớp giá trị đều được thực hiện.
    • Case default sẽ được thực hiện nếu không có case nào khớp giá trị với expssion.

    Bài tập thực hành

    Nhập vào 2 số nguyên a, b

    Nhập vào phép toán +, -, *, /

    Thực hiện tính toán theo phép toán nhập vào với hai số a, b

    Ví dụ:

    Lời giải tham khảo sử dụng lệnh switch case:

    Kết quả chạy chương trình:

    Lệnh goto trong C

    Lệnh goto cho phép code của bạn nhảy đến thực hiện ở vị trí label bất kỳ của chương trình mà không cần nhất định phải theo thứ tự từ trên xuống. Do tính chất nhảy “lung tung” chẳng giống ai nên lệnh goto không được khuyến khích sử dụng.

    Cú pháp của lệnh goto như sau:

    Ví dụ về việc sử dụng lệnh goto trong C:

    Kết quả chạy chương trình:

    Tài liệu tham khảo

    1. https://stackoverflow.com/questions/2158759/
    2. https://stackoverflow.com/questions/767821/
    3. https://www.programiz.com/c-programming/c-switch-case-statement
    Các bài viết trong khóa học

    Sáng lập cộng đồng Lập Trình Không Khó với mong muốn giúp đỡ các bạn trẻ trên con đường trở thành những lập trình viên tương lai. Tất cả những gì tôi viết ra đây chỉ đơn giản là sở thích ghi lại các kiến thức mà tôi tích lũy được.

    --- Bài cũ hơn ---

  • Cấu Trúc Rẽ Nhánh Switch
  • Vòng Lặp Arraylist Trong Java Với Ví Dụ Cụ Thể
  • Tổng Hợp Bài Tập Lập Trình Hướng Đối Tượng Trong Java
  • Tập Bản Đồ Địa Lí 6 Bài 10: Cấu Tạo Bên Trong Của Trái Đất
  • Giải Tập Bản Đồ Địa Lí 6
  • Bài Tập Về Switch Case Trong C/c++

    --- Bài mới hơn ---

  • Bài Tập Java Lập Trình Hướng Đối Tượng Có Lời Giải Pdf
  • Bài Tập Mảng 1 Chiều Trong C/c++ Có Đáp Án
  • Bài Tập Java Cơ Bản Có Lời Giải
  • Java: Solution Tham Khảo Bài Tập Phần Class
  • Bài Tập Lập Trình Hướng Đối Tượng
  • Bài toán luyện tập lập trình C/C++ số 22 là một bài toánvề switch case trong C/C++. Bài tập trả về số ngày của một tháng trong năm.

    1.Giới thiệu bài toán

    Switch case là một cấu trúc có điều kiện của ngôn ngữ C/C++. Cấu trúc thuộc loại cấu trúc giống trong C/C++. Trong bài viết này, mình sẽ đưa ra cho bạn một bài tập khá thú vị về phần này:

    Đề bài:

    Viết hàm nhập vào một tháng m hợp lệ và cho biết tháng đó có bao nhiêu ngày?

    Bài toán khá đơn giản, nó giúp bạn hiểu được cấu trúc switch case trong C.

    2. Ý tưởng giải bài toán

    Mình sẽ sử dụng cấu trúc switch trong việc đưa ra ngày của tháng. Cụ thể:

    • Tháng 1, 3, 5, 7, 8, 10, 12 sẽ có 31 ngày
    • Tháng 4, 6, 9, 11 có 30 ngày
    • Tháng 2 năm nhuận có 29 ngày, năm thường 28 ngày.

    Vấn đề thứ 2 chúng ta cần biết năm đó là năm nhuận hay không?

    Do đó mình viết thêm phần nhập vào năm và kiểm tra xem năm đó là năm nhuận hay không?

    3. Thuật toán kiểm tra một năm bất kì có phải là năm nhuận hay không?

    Ý tưởng: Năm nhuận là năm chia hết cho 4 nhưng không chia hết cho 100

    Với ý tưởng này mình viết hàm sau:

    int NamNhuan(int a){ if(a%4==0 && a%100!=0) return 1; else return 0; }

    Nếu là năm nhuận, return 1, năm không nhuận return 0;

    4. Hàm trả về ngày của tháng trong năm

    void ReturnDate(){ int Year; int Month; printf("Nhap Nam: "); scanf("%d",&Year); do{ printf("Nhap thang hop le: "); scanf("%d",&Month); } switch(Month){ case 1: case 3: case 5: case 7: case 8: case 10: case 12: printf("nThang %d co 31 ngay!", Month); break; case 2:{ if(NamNhuan(Year)) printf("nThang 2 co 29 ngay!"); else printf("nThang 2 co 28 ngay!"); break; } case 4: case 6: case 9: case 11: printf("nThang %d co 30 ngay!",Month); break; } }

    Chương trình hoàn chỉnh: bạn viết hai hàm liệt kê trên. Sau đó ở hàm main() bạn gọi hàm thứ 2 ra là được.

    Kết quả chạy chương trình:

    Ví dụ tháng 2 năm nhuận!

    Bài viết của mình đến đây là hết, càm ơn bạn đâ quan tâm bài viết. Rất mong nhận được ý kiến đóng góp của bạn đọc về bài viết này của mình.

    Xem tiếp bài 23

    --- Bài cũ hơn ---

  • Lệnh Switch Case Trong C
  • Cấu Trúc Rẽ Nhánh Switch
  • Vòng Lặp Arraylist Trong Java Với Ví Dụ Cụ Thể
  • Tổng Hợp Bài Tập Lập Trình Hướng Đối Tượng Trong Java
  • Tập Bản Đồ Địa Lí 6 Bài 10: Cấu Tạo Bên Trong Của Trái Đất
  • Bài Tập Câu Lệnh Điều Kiện Switch Case

    --- Bài mới hơn ---

  • Java: Bài Tập Phần Class
  • Bài Tập + Full Bài Hướng Dẫn Về Array Và Hàm Array Trong Javascript
  • Bt Trắc Nghiệm Đại Số Và Giải Tích 11
  • Bài Tập Toán Lớp 4
  • Giải Sbt Toán 12 Bài 3: Giá Trị Lớn Nhất Và Giá Trị Nhỏ Nhất Của Hàm Số
  • Các bài thực hành này giúp bạn thực hành sử dụng câu lệnh switch … case để kiểm tra một biến theo một danh sách các giá trị.

    Các bài thực hành này giúp bạn thực hành sử dụng câu lệnh switch … case để kiểm tra một biến theo một danh sách các giá trị.

    Bài tập 1: Viết chương trình C# kiểm tra bàn phím khi ấn xuống.

    Nếu người dùng ấn một phím (từ 0 tới 9) thì chương trình sẽ hiển thị số số được nhấn này, ngược lại hiển thị “Phím bạn ấn không phải là số!”.

    class Program { static void Main(string args) { Console.WriteLine("Cách nào khai báo một biến và gán giá trị số nguyên là đúng trong các câu lệnh C# sau?"); Console.WriteLine("a. int 1x=10"); Console.WriteLine("b. int x=10"); Console.WriteLine("c. float x=10.0f"); Console.WriteLine("d. string x="10""); Console.WriteLine("Chọn ký tự để trả lời:"); char ans = (char)Console.read(); switch (ans) { case 'a':Console.WriteLine("Lựa chọn không đúng!"); break; case 'b':Console.WriteLine("Chúc mừng bạn đã chọn đúng!"); break; case 'c':Console.WriteLine("Lựa chọn không đúng!"); break; case 'd':Console.WriteLine("Lựa chọn không đúng!"); break; default:Console.WriteLine("Câu trả lời sai!");break; } } }

    --- Bài cũ hơn ---

  • Bài Tập Tự Luận Java Cơ Bản Có Lời Giải
  • Bài Tập Ôn Luyện Lập Trình Oop & Interface
  • Hocthue.net: Tổng Hợp Sách, Giáo Trình, Bài Giảng, Bài Tập Xác Suất Thống Kê (Có Lời Giải)
  • Ôn Tập Phần Giới Hạn (Kèm Lời Giải)
  • Vở Bài Tập Ngữ Văn Lớp 9 (Tập 1)
  • Bài Tập Java Có Lời Giải

    --- Bài mới hơn ---

  • Lập Trình Mạng Với Java (Bài 6)
  • Ebook Bài Tập Java Lập Trình Hướng Đối Tượng Có Lời Giải Pdf
  • Lập Trình Java Căn Bản
  • Giải Vở Bài Tập Toán 4 Bài 37: Tìm Hai Số Khi Biết Tổng Và Hiệu Của Hai Số Đó
  • Bài 1,2,3,4 Trang 46 Sgk Đại Số Và Giải Tích 11: Quy Tắc Đếm
  • Bài tập Java có lời giải

    Bài này cung cấp cho bạn danh sách các dạng bài tập khác nhau để bạn thực hành khi học java.

    1. Bài tập java cơ bản

    Trong phần này, bạn phải nắm được các kiến thức về:

    • Các mệnh đề if-else, switch-case.
    • Các vòng lặp for, while, do-while.
    • Các từ khóa break và continue trong java.
    • Các toán tử trong java.
    • Mảng (array) trong java.
    • File I/O trong java.
    • Xử lý ngoại lệ trong java.

    Bài 01:

    Viết chương trình tìm tất cả các số chia hết cho 7 nhưng không phải bội số của 5, nằm trong đoạn 10 và 200 (tính cả 10 và 200). Các số thu được sẽ được in thành chuỗi trên một dòng, cách nhau bằng dấu phẩy.

    package vn.viettuts.baitap; import java.util.ArrayList; import java.util.List; public class Bai01 { public static void main(String args) { System.out.print("Nhập số nguyên dương n = "); int n = scanner.nextInt(); System.out.println("Giai thừa của " + n + " là: " + tinhGiaithua(n)); } /** * tinh giai thua * * @author viettuts.vn * @param n: so nguyen duong * @return giai thua cua so n */ public static long tinhGiaithua(int n) { return n * tinhGiaithua(n - 1); } else { return 1; } } }

    Kết quả:

    Nhập số nguyên dương n = 8 Giai thừa của 8 là: 40320

    Bài 03:

    Hãy viết chương trình để tạo ra một map chứa (i, i*i), trong đó i là số nguyên từ 1 đến n (bao gồm cả 1 và n), n được nhập từ bàn phím. Sau đó in map này ra màn hình. Ví dụ: Giả sử số n là 8 thì đầu ra sẽ là: {1: 1, 2: 4, 3: 9, 4: 16, 5: 25, 6: 36, 7: 49, 8: 64}.

      Sử dụng vòng lặp for để lặp i từ 1 đến n.

    package vn.viettuts.baitap; import java.util.HashMap; import java.util.Map; import java.util.Scanner; public class Bai03 { private static Scanner scanner = new Scanner(System.in); public static void main(String args) { System.out.print("Nhập hệ số bậc 2, a = "); float a = scanner.nextFloat(); System.out.print("Nhập hệ số bậc 1, b = "); float b = scanner.nextFloat(); System.out.print("Nhập hằng số tự do, c = "); float c = scanner.nextFloat(); giaiPTBac2(a, b, c); } /** * Giải phương trình bậc 2: ax2 + bx + c = 0 * * @param a: hệ số bậc 2 * @param b: hệ số bậc 1 * @param c: số hạng tự do */ public static void giaiPTBac2(float a, float b, float c) { // kiểm tra các hệ số if (a == 0) { if (b == 0) { System.out.println("Phương trình vô nghiệm!"); } else { System.out.println("Phương trình có một nghiệm: " + "x = " + (-c / b)); } return; } // tính delta float delta = b*b - 4*a*c; float x1; float x2; // tính nghiệm x1 = (float) ((-b + Math.sqrt(delta)) / (2*a)); x2 = (float) ((-b - Math.sqrt(delta)) / (2*a)); System.out.println("Phương trình có 2 nghiệm là: " + "x1 = " + x1 + " và x2 = " + x2); } else if (delta == 0) { x1 = (-b / (2 * a)); System.out.println("Phương trình có nghiệm kép: " + "x1 = x2 = " + x1); } else { System.out.println("Phương trình vô nghiệm!"); } } }

    Kết quả:

    Nhập hệ số bậc 2, a = 2 Nhập hệ số bậc 1, b = 1 Nhập hằng số tự do, c = -1 Phương trình có 2 nghiệm là: x1 = 0.5 và x2 = -1.0

    Bài 05:

    • Tham khảo bảng ASCII để chuyển đổi kiểu char thành String. Hàm chr(55 + m) trong ví dụ sau:
    • Nếu m = 10 trả về chuỗi “A”.
    • Nếu m = 11 trả về chuỗi “B”.
    • Nếu m = 12 trả về chuỗi “C”.
    • Nếu m = 13 trả về chuỗi “D”.
    • Nếu m = 14 trả về chuỗi “E”.
    • Nếu m = 15 trả về chuỗi “F”.

    package vn.viettuts.baitap; import java.util.Scanner; public class ConvertNumber { public static final char CHAR_55 = 55; private static Scanner scanner = new Scanner(System.in); /** * main * * @author viettuts.vn * @param args */ public static void main(String args) { System.out.print("Nhập số nguyên dương n = "); int n = scanner.nextInt(); System.out.println(n + " số đầu tiên của dãy số fibonacci: "); for (int i = 0; i < n; i++) { System.out.print(fibonacci(i) + " "); } } /** * Tính số fibonacci thứ n * * @param n: chỉ số của số fibonacci tính từ 0 * vd: F0 = 0, F1 = 1, F2 = 1, F3 = 2 * @return số fibonacci thứ n */ public static int fibonacci(int n) { if (n < 0) { return -1; return n; } else { return fibonacci(n - 1) + fibonacci(n - 2); } } }

    Kết quả:

    Nhập số nguyên dương n = 12 12 số đầu tiên của dãy số fibonacci: 0 1 1 2 3 5 8 13 21 34 55 89

    Bài 07:

    Viết chương trình tìm ước số chung lớn nhất (USCLN) và bội số chung nhỏ nhất (BSCNN) của hai số nguyên dương a và b nhập từ bàn phím.

    package vn.viettuts.baitap; import java.util.Scanner; public class USCLL_BSCNN_1 { private static Scanner scanner = new Scanner(System.in); /** * main * * @param args */ public static void main(String args) { System.out.print("Nhập n = "); int n = scanner.nextInt(); System.out.printf("Tất cả các số nguyên tố nhỏ hơn %d là: n", n); System.out.print(2); } for (int i = 3; i < n; i+=2) { if (isPrimeNumber(i)) { System.out.print(" " + i); } } } /** * check so nguyen to * * @author viettuts.vn * @param n: so nguyen duong * @return true la so nguyen so, * false khong la so nguyen to */ public static boolean isPrimeNumber(int n) { // so nguyen n < 2 khong phai la so nguyen to if (n < 2) { return false; } int squareRoot = (int) Math.sqrt(n); for (int i = 2; i <= squareRoot; i++) { if (n % i == 0) { return false; } } return true; } }

    Kết quả:

    Nhập n = 100 Tất cả các số nguyên tố nhỏ hơn 100 là: 2 3 5 7 11 13 17 19 23 29 31 37 41 43 47 53 59 61 67 71 73 79 83 89 97

    Bài 09:

    Viết chương trình liệt kê n số nguyên tố đầu tiên trong java. Số nguyên dương n được nhập từ bàn phím.

    package vn.viettuts.baitap; import java.util.Scanner; /** * Chương trình liệt kê n số nguyên tố đầu tiên. * * @author viettuts.vn */ public class BaiTap09 { private static Scanner scanner = new Scanner(System.in); /** * main * * @param args */ public static void main(String args) { int count = 0; System.out.println("Liệt kê tất cả số nguyên tố có 5 chữ số:"); for (int i = 10001; i < 99999; i+=2) { if (isPrimeNumber(i)) { System.out.println(i); count++; } } System.out.println("Tổng các số nguyên tố có 5 chữ số là: " + count); } /** * check so nguyen to * * @author viettuts.vn * @param n: so nguyen duong * @return true la so nguyen so, * false khong la so nguyen to */ public static boolean isPrimeNumber(int n) { // so nguyen n < 2 khong phai la so nguyen to if (n < 2) { return false; } int squareRoot = (int) Math.sqrt(n); for (int i = 2; i <= squareRoot; i++) { if (n % i == 0) { return false; } } return true; } }

    Kết quả:

    Liệt kê tất cả số nguyên tố có 5 chữ số: 10007 10009 10037 ... 99971 99989 99991 Tổng các số nguyên tố có 5 chữ số là: 8363

    Bài 11:

    Viết chương trình phân tích số nguyên n thành các thừa số nguyên tố trong java. Ví dụ: 100 = 2x2x5x5.

    package vn.viettuts.baitap; import java.util.ArrayList; import java.util.List; import java.util.Scanner; /** * Chương trình phân tích số nguyên n thành các thừa số nguyên tố. * Ví dụ: 12 = 2 x 2 x 3. * * @author viettuts.vn */ public class BaiTap11 { private static Scanner scanner = new Scanner(System.in); /** * main * * @param args */ public static void main(String args) { System.out.print("Nhập số nguyên dương n = "); int n = scanner.nextInt(); System.out.printf("Tổng của các chữ số " + "của %d là: %d", n, totalDigitsOfNumber(n)); } /** * Tính tổng của các chữ số của một số nguyên dương * * @param n: số nguyên dương * @return */ public static int totalDigitsOfNumber(int n) { int total = 0; do { total = total + n % DEC_10; n = n / DEC_10; return total; } }

    Kết quả:

    Nhập số nguyên dương n = 6677 Tổng của các chữ số của 6677 là: 26

    Bài 13:

    Viết chương trình kiểm tra một số n là số thuận nghịch trong java. Số nguyên dương n được nhập từ bàn phím.

    package vn.viettuts.baitap; import java.util.Scanner; /** * Chương trình liệt kê tất cả các số thuận nghịch có 6 chữa số. * * @author viettuts.vn */ public class BaiTap13 { private static Scanner scanner = new Scanner(System.in); /** * main * * @param args */ public static void main(String args) { System.out.print("Nhập số tự nhiên n = "); int n = scanner.nextInt(); System.out.printf("Các số fibonacci nhỏ hơn %d và " + "là số nguyên tố: ", n); int i = 0; while (fibonacci(i) < 100) { int fi = fibonacci(i); if (isPrimeNumber(fi)) { System.out.print(fi + " "); } i++; } } /** * Tính số fibonacci thứ n * * @param n: chỉ số của số fibonacci tính từ 0 * vd: F0 = 0, F1 = 1, F2 = 1, F3 = 2 * @return số fibonacci thứ n */ public static int fibonacci(int n) { if (n < 0) { return -1; return n; } else { return fibonacci(n - 1) + fibonacci(n - 2); } } /** * check so nguyen to * * @author viettuts.vn * @param n: so nguyen duong * @return true la so nguyen so, * false khong la so nguyen to */ public static boolean isPrimeNumber(int n) { // so nguyen n < 2 khong phai la so nguyen to if (n < 2) { return false; } int squareRoot = (int) Math.sqrt(n); for (int i = 2; i <= squareRoot; i++) { if (n % i == 0) { return false; } } return true; } }

    Kết quả:

    Nhập số tự nhiên n = 100 Các số fibonacci nhỏ hơn 100 và là số nguyên tố: 2 3 5 13 89

    Các bài tập khác:

    1. Viết chương trình nhập số nguyên dương n và thực hiện các chức năng sau:

      a) Tính tổng các chữ số của n.

      b) Phân tích n thành tích các thừa số nguyên tố.

      c) Liệt kê các ước số của n.

      d) Liệt kê các ước số là nguyên tố của n.

    2. Viết chương trình liệt kệ các số nguyên có từ 5 đến 7 chữ số thảo mãn:

      a) Là số nguyên tố.

      b) Là số thuận nghịch.

      c) Mỗi chữ số đều là số nguyên tố.

      d) Tổng các chữ số là số nguyên tố.

    3. Viết chương trình liệt kệ các số nguyên có 7 chữ số thảo mãn:

      a) Là số nguyên tố.

      b) Là số thuận nghịch.

      c) Mỗi chữ số đều là số nguyên tố.

      d) Tổng các chữ số là số thuận nghịch.

    2. Bài tập chuỗi trong Java

    Danh sách bài tập:

    1. Nhập một sâu ký tự. Đếm số từ của sâu đó (mỗi từ cách nhau bởi một khoảng trắng có thể là một hoặc nhiều dấu cách, tab, xuống dòng). Ví dụ ” hoc java co ban den nang cao ” có 7 từ.

      Lời giải: Đếm số từ trong một chuỗi.

    2. Nhập một sâu ký tự. Liệt kê số lần xuất hiện của các từ của sâu đó.

      Lời giải: Liệt kê số lần xuất hiện của các từ trong một chuỗi.

    3. Nhập 2 sâu ký tự s1 và s2. Kiểm tra xem sâu s1 có chứa s2 không?

      Lời giải: Chuỗi chứa chuỗi trong java.

    3. Bài tập mảng trong Java

    Các bài tập trong phần này thao tác với mảng một chiều và 2 chiều trong java, bạn có thể tham khảo bài học mảng (Array) trong java

    Danh sách bài tập:

    1. Nhập một mảng số thực a0, a1, a2, …, an-1. Không dùng thêm mảng số thực nào khác (có thể dùng thêm mảng số nguyên), hãy in ra màn hình mảng trên theo thứ tự tăng dần.
    2. Nhập 2 mảng số thực a0, a1, a2, …, am-1 và b0, b1, b2, …, bn-1. Giả sử 2 mảng này đã được sắp xếp tăng dần. Hãy tận dụng tính sắp xếp của 2 dãy và tạo dãy c0, c1, c2, …, cm+n-1 là hợp của 2 dãy trên sao cho ci cũng có thứ tự tăng dần.

      Lời giải: Trộn 2 mảng trong java

    3. Viết chương trình nhập vào mảng A có n phần tử, các phần tử là số nguyên lớn hơn 0 và nhỏ hơn 100. Thực hiện các chức năng sau:

      a) Tìm phần tử lớn thứ nhất và lớn thứ 2 trong mảng với các chỉ số của chúng (chỉ số đầu tiên tìm được).

      b) Sắp xếp mảng theo thứ tự tăng dần.

      c) Nhập số nguyên x và chèn x vào mảng A sao cho vẫn đảm bảo tính tăng dần cho mảng A.

    4. Viết chương trình nhập vào ma trận A có n dòng, m cột, các phần tử là số nguyên lớn hơn 0 và nhỏ hơn 100. Thực hiện các chức năng sau:

      a) Tìm phần tử lớn thứ nhất với chỉ số của nó (chỉ số đầu tiên tìm được).

      b) Tìm và in ra các phần tử là số nguyên tố của ma trận (các phần tử không nguyên tố thì thay bằng số 0).

      c) Sắp xếp tất cả các cột của ma trận theo thứ tự tăng dần và in kết quả ra màn hình.

      d) Tìm cột trong ma trận có nhiều số nguyên tố nhất.

    4. Bài tập về các thuật toán sắp xếp trong Java

    Bạn có thể xem các giải thuật sắp xếp trong phần cấu trúc dữ liệu và giải thuật: Giải thuật sắp xếp

    5. Bài tập java nâng cao

    Trong phần này, bạn phải nắm được các kiến thức về:

    • Lớp và đối tượng trong java.
    • Access modifier trong java
    • Các tính chất của lập trình hướng đối tượng (OOP).
    • Các khái niệm Java OOPs.
    • Collection trong java.
    • Xử lý ngoại lệ trong java.

    Bài tập quản lý sinh viên trong Java – console

    Đề bài: Viết chương trình quản lý sinh viên. Mỗi đối tượng sinh viên có các thuộc tính sau: id, name, age, address và gpa (điểm trung bình). Yêu cầu: tạo ra một menu với các chức năng sau:

    /****************************************/

    1. Add student.

    2. Edit student by id.

    3. Delete student by id.

    4. Sort student by gpa.

    5. Sort student by name.

    6. Show student.

    0. Exit.

    /****************************************/

    Lời giải: Bài tập quản lý sinh viên trong java – giao diện dòng lệnh

    Bài tập quản lý sinh viên trong Java – Swing

    Lời giải: Bài tập quản lý sinh viên trong java bằng Swing

    --- Bài cũ hơn ---

  • Bài Tập Java Cơ Bản, Có Lời Giải Code Mẫu
  • Đề Tài Bài Tập Về Nguyên Lý Thứ Hai Của Nhiệt Động Hoá Học
  • Bài Tập Hóa Lý Có Lời Giải Và Ngân Hàng Câu Hỏi Trắc Nghiệm 178 Trang
  • Giải Bài Tập Công Nghệ 8
  • Giải Bài Tập 6 Hóa 11 Trang 147
  • Tổng Hợp Bài Tập Java Có Lời Giải

    --- Bài mới hơn ---

  • Bài Tập Javascript Trực Tuyến: 10 Nơi Lý Tưởng Học Javascript Miễn Phí
  • Giáo Án Ngữ Văn Lớp 7 Chuẩn Nhất, Học Kì 2
  • Btob Profile 7 Thành Viên: Tiểu Sử, Giải Thưởng, Tin Tức
  • Btob Lee Chang Sub Vạ Miệng, ‘thánh Cơ Hội’ Yook Sung Jae Liền Cho Nghỉ Hưu (?) Ngay Và Luôn
  • Bài Tập Kế Toán Quản Trị (Có Lời Giải Mẫu)
  • Để dễ dàng tiếp cận và làm quen với ngôn ngữ lập trình Java. VNCoder sẽ tổng hợp các bài tập thực hành Java mẫu có lời giải chi tiết. Đây là tài liệu tham khảo hữu ích để các bạn luyện tập, thành thạo cú pháp và cấu trúc của ngôn ngữ lập trình Java.

    • Các mệnh đề if-else, switch-case.
    • Các vòng lặp for, while, do-while.
    • Các từ khóa break và continue trong java.
    • Các toán tử trong java.
    • Mảng (array) trong java.
    • File I/O trong java.
    • Xử lý ngoại lệ trong java.

    Các bài tập Java đều có hướng dẫn giải chi tiết, code tham khảo. Các bạn nên tự làm trước, nếu chưa hoàn thành thì có thể tham khảo gõ lại theo code mẫu, như vậy trình độ của các bạn sẽ lên nhanh chóng

     

    --- Bài cũ hơn ---

  • Các Cách Thải Độc Cơ Thể Đơn Giản, Hiệu Quả Nhất Cho Nam Nữ?
  • Ôn Tập Toán Hình Học Lớp 8 Hki
  • Bài Toán Hình Học Tổng Ôn Lớp 8 Học Kì 1 (Có Hướng Dẫn Chi Tiết))
  • Phương Pháp Dạy Hình Học 8 Dễ Hiểu Nhất
  • Bài 3: Từ Láy – Giải Bài Tập Ngữ Văn Lớp 7
  • Bài Tập Java Cơ Bản Có Lời Giải

    --- Bài mới hơn ---

  • Java: Solution Tham Khảo Bài Tập Phần Class
  • Bài Tập Lập Trình Hướng Đối Tượng
  • Cơ Bản Về Html, Javascript, Css Và Asp
  • Bài 5: Luyện Tập Tính Chất Hóa Học Của Oxit Và Axit
  • Sách Bài Tập Đại Số Và Giải Tích Lớp 11
  • bài 4: java giao diện, tạo notoped….

    import java.awt.*;

    import java.awt.event.*;

    public class myFrame2 extends Frame

    {

    MenuBar mb=new MenuBar();

    Menu filemenu=new Menu(“file”);

    MenuItem menuitemNew=new MenuItem(“New Ctrl+N”);

    MenuItem menuitemOpen=new MenuItem(“Open Ctrl+O”);

    MenuItem menuitemSave=new MenuItem(“Save Ctrl+S”);

    MenuItem menuitemSaveAs=new MenuItem(“Save As”);

    MenuItem menuitemPateSetup=new MenuItem(“Pate Setup”);

    MenuItem menuitemPrint=new MenuItem(“Print Ctrl+P”);

    MenuItem menuitemExit=new MenuItem(“Exit”);

    Menu editmenu=new Menu(“Edit”);

    MenuItem menuitemUndo=new MenuItem(“Undo Ctrl+Z”);

    MenuItem menuitemCut=new MenuItem(“Cut Ctrl+X”);

    MenuItem menuitemCopy=new MenuItem(“Copy Ctrl+C”);

    MenuItem menuitemPaste=new MenuItem(“Paste Ctrl+V”);

    MenuItem menuitemDelete=new MenuItem(“Delete Del”);

    MenuItem menuitemGoto=new MenuItem(“Go to Ctrl+G”);

    Menu formatmenu=new Menu(“Format”);

    MenuItem menuitemWordWrap=new MenuItem(“Word Wrap”);

    MenuItem menuitemFont=new MenuItem(“Font…”);

    Menu Viewmenu=new Menu(“View”);

    MenuItem menuitemStatusBar=new MenuItem(“Status Bar”);

    Menu Helpmenu=new Menu(“Help”);

    MenuItem menuitemViewhelp=new MenuItem(“View help”);

    MenuItem menuitemAboutNotepad=new MenuItem(“About Notepad”);

    public myFrame2(String title)

    {

    super(title);

    this.setMenuBar(mb);

    mb.add(filemenu);

    mb.add(editmenu);

    mb.add(formatmenu);

    mb.add(Viewmenu);

    mb.add(Helpmenu);

    filemenu.add(menuitemNew);

    filemenu.addSeparator();

    filemenu.add(menuitemOpen);

    filemenu.addSeparator();

    filemenu.add(menuitemSave);

    filemenu.addSeparator();

    filemenu.add(menuitemSaveAs);

    filemenu.addSeparator();

    filemenu.add(menuitemPateSetup);

    filemenu.addSeparator();

    filemenu.add(menuitemPrint);

    filemenu.addSeparator();

    filemenu.add(menuitemExit);

    editmenu.add(menuitemUndo);

    editmenu.addSeparator();

    editmenu.add(menuitemCut);

    editmenu.addSeparator();

    editmenu.add(menuitemCopy);

    editmenu.addSeparator();

    editmenu.add(menuitemPaste);

    editmenu.addSeparator();

    editmenu.add(menuitemDelete);

    editmenu.addSeparator();

    editmenu.add(menuitemGoto);

    formatmenu.add(menuitemWordWrap);

    formatmenu.addSeparator();

    formatmenu.add(menuitemFont);

    Viewmenu.add(menuitemStatusBar);

    Helpmenu.add(menuitemViewhelp);

    Helpmenu.addSeparator();

    Helpmenu.add(menuitemAboutNotepad);

    }

    public static void main(String[] args)

    {

    myFrame2 f=new myFrame2(“Unitited – Notoped”);

    f.setSize(400,400);

    f.setVisible(true);

    f.addWindowListener(new WindowAdapter()

    {

    public void windowClosing(WindowEvent we)

    {

    System.exit(0);

    }

    });

    }

    }

    --- Bài cũ hơn ---

  • Bài Tập Mảng 1 Chiều Trong C/c++ Có Đáp Án
  • Bài Tập Java Lập Trình Hướng Đối Tượng Có Lời Giải Pdf
  • Bài Tập Về Switch Case Trong C/c++
  • Lệnh Switch Case Trong C
  • Cấu Trúc Rẽ Nhánh Switch
  • Bài Tập Java Cơ Bản, Có Lời Giải Code Mẫu

    --- Bài mới hơn ---

  • Bài Tập Java Có Lời Giải
  • Lập Trình Mạng Với Java (Bài 6)
  • Ebook Bài Tập Java Lập Trình Hướng Đối Tượng Có Lời Giải Pdf
  • Lập Trình Java Căn Bản
  • Giải Vở Bài Tập Toán 4 Bài 37: Tìm Hai Số Khi Biết Tổng Và Hiệu Của Hai Số Đó
  • Để phục vụ nhu cầu học Java của các bạn, Quản Trị Mạng đã tổng hợp lại một số bài tập Java từ nhiều nguồn, có kèm theo code mẫu (cho một số bài). Hy vọng có thể giúp ích cho quá trình học tập ngôn ngữ lập trình Java của các bạn.

    Bài tập Java cơ bản có giải

    Bài 2. Viết chương trình chuyển đổi một số tự nhiên ở hệ cơ số 10 thành số ở hệ cơ số b bất kì (1< b≤ 36). Xem giải Bài 2

    Bài 8. Một số được gọi là số thuận nghịch độc nếu ta đọc từ trái sang phải hay từ phải sang trái số đó ta vẫn nhận được một số giống nhau. Hãy liệt kê tất cả các số thuận nghịch độc có sáu chữ số (Ví dụ số: 558855). Xem giải Bài 8

    Bài 9. Viết chương trình liệt kê tất cả các xâu nhị phân độ dài n. Xem giải Bài 9

    Bài 10. Viết chương trình liệt kê tất cả các tập con k phần tử của 1, 2, ..,n (k≤n). Xem giải Bài 10

    Bài 11. Viết chương trình liệt kê tất cả các hoán vị của 1, 2, .., n. Xem giải Bài 11

    Xem giải Bài 12

    Bài 13. Nhập số liệu cho 2 dãy số thực a 0, a 1 ,…, a m-1 và b 0 , b 1 ,…, b n-1. Giả sử cả 2 dãy này đã được sắp theo thứ tự tăng dần. Hãy tận dụng tính sắp xếp của 2 dãy và tạo dãy c 0 , c 1 ,…, c m+n-1 là hợp của 2 dãy trên, sao cho dãy c i cũng có thứ tự tăng dần. Xem giải Bài 13

    Bài 14. Nhập số liệu cho dãy số thực a 0, a 1,…, a n-1. Hãy liệt kê các phần tử xuất hiện trong dãy đúng một lần. Xem giải Bài 14

    Bài 15. Nhập số liệu cho dãy số thực a 0, a 1,…, a n-1. Hãy liệt kê các phần tử xuất hiện trong dãy đúng 2 lần. Xem giải Bài 15

    Bài 16. Nhập số liệu cho dãy số thực a 0, a 1,…, a n-1. In ra màn hình số lần xuất hiện của các phần tử. Xem giải Bài 16

    Bài 17. Nhập số n và dãy các số thực a 0, a 1,…, a n-1. Không đổi chỗ các phần tử và không dùng thêm mảng số thực nào khác (có thể dùng mảng số nguyên nếu cần) hãy cho hiện trên màn hình dãy trên theo thứ tự tăng dần. Xem giải Bài 17

    Bài 18. Nhập một xâu ký tự. Đếm số từ của xâu ký tự đó. Thí dụ ” Trường học ” có 2 từ. Xem giải Bài 18

    Bài 19. Viết chương trình liệt kê tất cả các số nguyên tố có 5 chữ số sao cho tổng của các chữ số trong mỗi số nguyên tố đều bằng S cho trước. Xem giải Bài 19

    Bài 20. Nhập một số tự nhiên n. Hãy liệt kê các số Fibonaci nhỏ hơn n là số nguyên tố. Xem giải Bài 20

    Bài 21. Viết chương trình nhập một số nguyên dương n và thực hiện các chức năng sau:

    1. Tính tổng các chữ số của
    2. Phân tích n thành các thừa số nguyêntố.

    Xem giải Bài 21

    Bài 22. Viết chương trình nhập một số nguyên dương n và thực hiện các chức năng sau:

    1. Liệt kê các ước số của n. Có bao nhiêu ước số.
    2. Liệt kê các ước số là nguyên tố của

    Xem giải Bài 22

    Bài 23. Viết chương trình nhập một số nguyên dương n và thực hiện các chức năng sau:

    1. Liệt kê n số nguyên tố đầu tiên.
    2. Liệt kê n số Fibonaci đầu tiên.

    Xem giải Bài 23

    Bài 24. Viết chương trình nhập vào vào ma trận A có n dòng, m cột, các phần tử là những số nguyên lớn hơn 0 và nhỏ hơn 100 được nhập vào từ bàn phím. Thực hiện các chức năng sau:

    Xem giải Bài 24

    Bài 25. Viết chương trình liệt kê các số nguyên có từ 5 đến 7 chữ số thoả mãn:

    Xem giải bài 25

    Bài 26. Viết chương trình liệt kê các số nguyên có 7 chữ số thoả mãn:

    Xem giải bài 26

    Bài 27. Viết chương trình nhập vào vào mảng A có n phần tử, các phần tử là những số nguyên lớn hơn 0 và nhỏ hơn 100 được nhập vào từ bàn phím. Thực hiện các chức năng sau:

    Xem giải bài 27

    Bài 28. Viết chương trình nhập vào vào ma trận A có n dòng, m cột, các phần tử là những số nguyên lớn hơn 0 và nhỏ hơn 100 được nhập vào từ bàn phím. Thực hiện các chức năng sau:

    Xem giải bài 28

    Bài 29. Viết chương trình nhập các hệ số của đa thức P bậc n (0<n<20). Thực hiện các chức năng sau:

    Xem giải bài 29

    Bài 30. Viết chương trình nhập vào vào mảng A có n phần tử, các phần tử là những số nguyên lớn hơn 0 và nhỏ hơn 100 được nhập vào từ bàn phím. Thực hiện các chức năng sau:

    Bài 31. Viết chương trình thực hiện chuẩn hoá một xâu ký tự nhập từ bàn phím (loại bỏ các dấu cách thừa, chuyển ký tự đầu mỗi từ thành chữ hoa, các ký tự khác thành chữ thường)

    Xem giải bài 31

    Bài 32. Viết chương trình thực hiện nhập một xâu ký tự và tìm từ dài nhất trong xâu đó. Từ đó xuất hiện ở vị trí nào? (Chú ý. nếu có nhiều từ có độ dài giống nhau thì chọn từ đầu tiên tìm thấy).

    Xem giải bài 32

    Bài 33.Viết chương trình thực hiện nhập một xâu họ tên theo cấu trúc: họ…đệm…tên; chuyển xâu đó sang biểu diễn theo cấu trúc tên…họ…đệm. Xem giải Bài 33

    Bài tập Java cơ bản không giải

    Bài 34. Viết chương trình liệt kê tất cả các phần tử của tập:

    Bài 35. Viết chương trình liệt kê tất cả các phần tử của tập

    Bài 36. Viết chương trình liệt kê tất cả các phần tử của tập

    Bài 37. Cho hai tập hợp A gồm n phần tử, B gồm m phần tử (n,m≤255), mỗi phần tử của nó là một xâu kí tự.Ví dụ A = {“Lan”, “Hằng”, “Minh”, “Thủy”}, B = {“Nghĩa”, “Trung”, “Minh”, “Thủy”, “Đức”}. Hãy viết chương trình thực hiện những thao tác sau:

    1. Tạo lập dữ liệu cho A và B (từ file hoặc từ bànphím)
    2. Tìm
    3. Tìm
    4. Tìm

    Bài 38. Cho hai đa thức

    1. Tạo lập hai đa thức (nhập hệ số cho đa thức từ bàn phím hoặc file)
    2. Tính
    3. Tìm đạo hàm cấp l ≤n của đa thức.
    4. Tìm
    5. Tìm
    6. Tìm

    Bài 39. Cho hai ma trận vuông A cấp n. Hãy viết chương trình thực hiện các thao tác sau:

    1. Tìm hàng, cột hoặc đường chéo có tổng các phần tử lớn nhất.
    2. Tìm ma trận chuyển vị của A
    3. Tìm định thức của A
    4. Tìm ma trận nghịch đảo của A
    5. Giải hệ Phương trình tuyến tính thuần nhất n ẩn AX = B bằng phương pháp Gauss

    Bài 40. Cho một buffer kí tự gồm n dòng. Hãy viết chương trình thực hiện các thao tác sau:

    1. Tạo lập n dòng văn bản cho buffer.
    2. Đếm số từ trong Buffer.
    3. Tìm tần xuất xuất hiện từ X bất kì trong buffer.
    4. Mã hóa buffer bằng kĩ thuật Parity Bits
    5. Giải mã buffer được mã hóa bằng kĩ thuật parity.
    6. Thay thế từ X bằng từ Y

    1. Liệt kê các phần tử của tập

    Trong đó b là các số nguyên dương,

    2. Liệt kê các phần tử của tập:

    trong đó b là các số nguyên dương,

      Tính giá trị nhỏ nhất của hàm mục tiêu

    Trong đó

    4. Tính giá trị nhỏ nhất của hàm mục tiêu

    Bài 42. Ma trận nhị phân là ma trận mà các phần tử của nó hoặc bằng 0 hoặc bằng 1. Cho A = là các ma trận nhị phân cấp m × n (i =1, 2,..,m. j= 1, 2, ..,n). Ta định nghĩa các phép hợp, giao, nhân logic và phép lũy thừa cho A và B như sau:

    • Hợp của A và B, được kí hiệu là A ∨ B là ma trận nhị phân cấp m×n với phần tử ở vị trí (i, j) là aij ∨ bij.
    • Giao của A và B, được kí hiệu là A ∧ B là ma trận nhị phân cấp m×n với phần tử ở vị trí (i,j) làaij ∧ bij.
    • Tích boolean của A và B, được kí hiệu là ij = (ai1Ùb1j) Ú (ai2 ∨ b2j) ∨…∨ ( (aik ∨ bkj).
    • Nếu A là một ma trận vuông nhị phân cấp n và r là một số nguyên dương. Lũy thừa Boolean bậc r của A được kí hiệu là

    Hãy viết chương trình thực hiện các thao tác sau:

    1. Cho A = . Tìm C =A ∨ B
    2. Cho A = . Tìm C =A ∧ B
    3. Cho A = . Tìm C =
    4. Cho A = args) {

      int n,count=0;

      for(n=100000 ; n<= 999999 ; n++){

      if(testSoThuanNghich(n)){

      System.out.println(n);count++;

      }

      }

      System.out.println("Co "+count+" so thuan nghich co 6 chu so");

      }

      }

      Bài 09:

      Bài 10:

      Bài 11:

      Bài 12:

      Bài 13:

      Bài 14:

      Bài 15:

      Bài 16:

      Bài 17:

      Bài 18:

      package bai18;

      import java.util.*;

      public class Main {

      public static void main(String args) {

      // TODO Auto-generated method stub

      Scanner input= new Scanner(System.in);

      System.out.println("Nhap vao 1 xau: ");

      String strInput= input.nextLine();

      System.out.println("Xau duoc chuan hoa la: "+chuanHoa(strInput));

      }

      }

      Bài 32:

      import java.util.*;

      public class Bai32 {

      public static void timXauMax(String strInput){

      StringTokenizer strToken= new StringTokenizer(strInput," ,t,r");

      int Max,i=1,lengthStr;

      Max= strToken.nextToken().length();

      int viTriMax= i;

      while(strToken.hasMoreTokens()){

      lengthStr= strToken.nextToken().length();

      i++;

      if(Max < lengthStr){

      Max= lengthStr;

      viTriMax= i;

      }

      }

      System.out.println("Do dai xau lon nhat la: "+Max+" o vi tri "+viTriMax);

      }

      public static void main(String args) {

      // TODO Auto-generated method stub

      Scanner input= new Scanner(System.in);

      System.out.println("Nhap vao ho ten ( ho-ho dem -ten) : ");

      String strInput= input.nextLine();

      System.out.println("Ho va ten duoc sap xep lai (ten- ho - ho dem) :

      "+doiViTri(strInput));

      }

      }

      Nguồn: An Nguyễn (toptailieu)

      --- Bài cũ hơn ---

    5. Đề Tài Bài Tập Về Nguyên Lý Thứ Hai Của Nhiệt Động Hoá Học
    6. Bài Tập Hóa Lý Có Lời Giải Và Ngân Hàng Câu Hỏi Trắc Nghiệm 178 Trang
    7. Giải Bài Tập Công Nghệ 8
    8. Giải Bài Tập 6 Hóa 11 Trang 147
    9. Bài 1,2,3,4,5,6 Trang 6 Hóa Lớp 9: Tính Chất Hóa Học Của Oxit

    Bài Tập Tự Luận Java Cơ Bản Có Lời Giải

    --- Bài mới hơn ---

  • Bài Tập Câu Lệnh Điều Kiện Switch Case
  • Java: Bài Tập Phần Class
  • Bài Tập + Full Bài Hướng Dẫn Về Array Và Hàm Array Trong Javascript
  • Bt Trắc Nghiệm Đại Số Và Giải Tích 11
  • Bài Tập Toán Lớp 4
  • Trong phần này, bạn phải nắm được các kiến thức về:

    • Các mệnh đề if-else, switch-case.
    • Các vòng lặp for, while, do-while.
    • Các từ khóa break và continue trong java.
    • Các toán tử trong java.
    • Mảng (array) trong java.
    • File I/O trong java.
    • Xử lý ngoại lệ trong java.

    1. Bài 01

    Viết chương trình tìm tất cả các số chia hết cho 7 nhưng không phải bội số của 5, nằm trong đoạn 10 và 200 (tính cả 10 và 200). Các số thu được sẽ được in thành chuỗi trên một dòng, cách nhau bằng dấu phẩy.

    Gợi ý: Sử dụng vòng lặp for

    Code mẫu:

    package vn.eLib.baitap; import java.util.ArrayList; import java.util.List; public class Bai01 { public static void main(String args) { System.out.print("Nhập số nguyên dương n = "); int n = scanner.nextInt(); System.out.println("Giai thừa của " + n + " là: " + tinhGiaithua(n)); } /** * tinh giai thua * * @author eLib.VN * @param n: so nguyen duong * @return giai thua cua so n */ public static long tinhGiaithua(int n) { return n * tinhGiaithua(n - 1); } else { return 1; } } }

    Kết quả:

    Nhập số nguyên dương n = 8 Giai thừa của 8 là: 40320

    3. Bài 03:

    Hãy viết chương trình để tạo ra một map chứa (i, i*i), trong đó i là số nguyên từ 1 đến n (bao gồm cả 1 và n), n được nhập từ bàn phím. Sau đó in map này ra màn hình. Ví dụ: Giả sử số n là 8 thì đầu ra sẽ là: {1: 1, 2: 4, 3: 9, 4: 16, 5: 25, 6: 36, 7: 49, 8: 64}.

    Gợi ý: Sử dụng vòng lặp for để lặp i từ 1 đến n.

    Code mẫu:

    package vn.eLib.baitap; import java.util.HashMap; import java.util.Map; import java.util.Scanner; public class Bai03 { private static Scanner scanner = new Scanner(System. in ); public static void main(String args) { System.out.print("Nhập hệ số bậc 2, a = "); float a = scanner.nextFloat(); System.out.print("Nhập hệ số bậc 1, b = "); float b = scanner.nextFloat(); System.out.print("Nhập hằng số tự do, c = "); float c = scanner.nextFloat(); giaiPTBac2(a, b, c); } /** * Giải phương trình bậc 2: ax2 + bx + c = 0 * * @param a: hệ số bậc 2 * @param b: hệ số bậc 1 * @param c: số hạng tự do */ public static void giaiPTBac2(float a, float b, float c) { // kiểm tra các hệ số if (a == 0) { if (b == 0) { System.out.println("Phương trình vô nghiệm!"); } else { System.out.println("Phương trình có một nghiệm: " + "x = " + ( - c / b)); } return; } // tính delta float delta = b * b - 4 * a * c; float x1; float x2; // tính nghiệm x1 = (float)(( - b + Math.sqrt(delta)) / (2 * a)); x2 = (float)(( - b - Math.sqrt(delta)) / (2 * a)); System.out.println("Phương trình có 2 nghiệm là: " + "x1 = " + x1 + " và x2 = " + x2); } else if (delta == 0) { x1 = ( - b / (2 * a)); System.out.println("Phương trình có nghiệm kép: " + "x1 = x2 = " + x1); } else { System.out.println("Phương trình vô nghiệm!"); } } }

    Kết quả:

    Nhập hệ số bậc 2, a = 2 Nhập hệ số bậc 1, b = 1 Nhập hằng số tự do, c = -1 Phương trình có 2 nghiệm là: x1 = 0.5 và x2 = -1.0

    5. Bài 05

    Viết chương trình chuyển đổi một số tự nhiên ở hệ số 10 thành một số ở hệ cơ số B (1 10 là A = 10, B = 11, C = 12, D = 13, E = 14, F = 15.

    Gợi ý:

    • Tham khảo bảng ASCII để chuyển đổi kiểu char thành String. Hàm chr(55 + m) trong ví dụ sau:
    • Nếu m = 10 trả về chuỗi “A”.
    • Nếu m = 11 trả về chuỗi “B”.
    • Nếu m = 12 trả về chuỗi “C”.
    • Nếu m = 13 trả về chuỗi “D”.
    • Nếu m = 14 trả về chuỗi “E”.
    • Nếu m = 15 trả về chuỗi “F”.

    Code mẫu:

    package vn.eLib.baitap; import java.util.Scanner; public class ConvertNumber { public static final char CHAR_55 = 55; private static Scanner scanner = new Scanner(System. in ); /** * main * * @author viettuts.vn * @param args */ public static void main(String args) { System.out.print("Nhập số nguyên dương n = "); int n = scanner.nextInt(); System.out.println(n + " số đầu tiên của dãy số fibonacci: "); for (int i = 0; i

    Kết quả: 

    Nhập số nguyên dương n = 12 12 số đầu tiên của dãy số fibonacci: 0 1 1 2 3 5 8 13 21 34 55 89

    7. Bài 07

    Viết chương trình tìm ước số chung lớn nhất (USCLN) và bội số chung nhỏ nhất (BSCNN) của hai số nguyên dương a và b nhập từ bàn phím.

    Gợi ý:

    • Sử dụng giải thuật Euclid.

    Code mẫu:

    package vn.eLib.baitap; import java.util.Scanner; public class USCLL_BSCNN_1 { private static Scanner scanner = new Scanner(System. in ); /** * main * * @param args */ public static void main(String args) { System.out.print("Nhập n = "); int n = scanner.nextInt(); System.out.printf("Tất cả các số nguyên tố nhỏ hơn %d là: n", n); System.out.print(2); } for (int i = 3; i = 2 int squareRoot = (int) Math.sqrt(n); for (int i = 2; i

    Kết quả:

    Nhập n = 100 Tất cả các số nguyên tố nhỏ hơn 100 là: 2 3 5 7 11 13 17 19 23 29 31 37 41 43 47 53 59 61 67 71 73 79 83 89 97

    9. Bài 09:

    Viết chương trình liệt kê n số nguyên tố đầu tiên trong java. Số nguyên dương n được nhập từ bàn phím.

    Code mẫu:

    package vn.eLib.baitap; import java.util.Scanner; /** * Chương trình liệt kê n số nguyên tố đầu tiên. * * @author viettuts.vn */ public class BaiTap09 { private static Scanner scanner = new Scanner(System. in ); /** * main * * @param args */ public static void main(String args) { int count = 0; System.out.println("Liệt kê tất cả số nguyên tố có 5 chữ số:"); for (int i = 10001; i = 2 int squareRoot = (int) Math.sqrt(n); for (int i = 2; i

    Kết quả:

    Liệt kê tất cả số nguyên tố có 5 chữ số: 10007 10009 10037 ... 99971 99989 99991 Tổng các số nguyên tố có 5 chữ số là: 8363

    --- Bài cũ hơn ---

  • Bài Tập Ôn Luyện Lập Trình Oop & Interface
  • Hocthue.net: Tổng Hợp Sách, Giáo Trình, Bài Giảng, Bài Tập Xác Suất Thống Kê (Có Lời Giải)
  • Ôn Tập Phần Giới Hạn (Kèm Lời Giải)
  • Vở Bài Tập Ngữ Văn Lớp 9 (Tập 1)
  • Ma Trận Space Phân Tích Môi Trường Và Cạnh Tranh Của Doanh Nghiệp
  • Bài Tập Java Lập Trình Hướng Đối Tượng Có Lời Giải Pdf

    --- Bài mới hơn ---

  • Bài Tập Mảng 1 Chiều Trong C/c++ Có Đáp Án
  • Bài Tập Java Cơ Bản Có Lời Giải
  • Java: Solution Tham Khảo Bài Tập Phần Class
  • Bài Tập Lập Trình Hướng Đối Tượng
  • Cơ Bản Về Html, Javascript, Css Và Asp
  • Bài viết đã được cập nhật vào:

    Tổng hợp Bài tập JAVA lập trình hướng đối tượng có lời giải PDF, là một tài liệu Tiếng Việt do các thầy cô ở một số trường ĐH Việt Nam biên soạn. Nội dung của 2 tài liệu này chỉ tập trung về đề bài tập khi lập trình Java hướng đối tượng có kèm lời giải cho bạn tham khảo.

    Thông tin chung về tài liệu “Bài tập JAVA lập trình hướng đối tượng có lời giải PDF”

    Tên tài liệu : Bài Tập JAVA hướng đối tượng có lời giải

    Tác giả : (Kynangso.net – Tổng hợp)

    Ngôn ngữ : Tiếng Việt

    Format : . PDF

    Thể loại : Programming/Java OOP ( Lập trình Java hướng đối tượng)

    TÀI LIỆU 1:

    Bài 4. Xây dựng chương trình quản lý danh sách các giao dịch nhà đất. Thông tin bao gồm:

    + Giao dịch đất: Mã giao dịch, ngày giao dịch (ngày, tháng, năm), đơn giá, loại đất (loại A, B, C), diện tích.

    – Nếu là loại B, C thì: thành tiền = diện tích * đơn giá.

    – Nếu là loại A thì: thành tiền = diện tích * đơn giá * 1.5

    + Giao dịch nhà: Mã giao dịch, ngày giao dịch (ngày, tháng, năm), đơn giá, loại nhà (cao cấp, thường), địa chỉ, diện tích.

    – Nếu là loại nhà cao cấp thì: thành tiền = diện tích * đơn giá.

    – Nếu là loại thường thì: thành tiền = diện tích * đơn giá * 90%

    Thực hiện các yêu cầu sau:

    + Xây dựng các lớp với chức năng thừa kế.

    + Nhập xuất danh sách các giao dịch.

    + Tính tổng số lượng cho từng loại.

    + Tính trung bình thành tiền của giao dịch đất.

    + Xuất ra các giao dịch của tháng 9 năm 2013.

    Bài 5. Xây dựng chương trình quản lý danh sách hoá đơn tiền điện của khách hàng. Thông tin bao gồm các loại khách hàng :

    + Khách hàng Việt Nam: mã khách hàng, họ tên, ngày ra hoá đơn (ngày, tháng, năm), đối tượng khách hàng (sinh hoạt, kinh doanh, sản xuất): số lượng (số KW tiêu thụ), đơn giá, định mức. Thành tiền được tính như sau:

    – Nếu số lượng <= định mức thì: thành tiền = số lượng * đơn giá.

    – Ngược lại thì: thành tiền = số lượng * đơn giá * định mức + số lượng KW vượt định mức * Đơn giá * 2.5.

    + Khách hàng nước ngoài: mã khách hàng, họ tên, ngày ra hoá đơn (ngày, tháng, năm), quốc tịch, số lượng, đơn giá. Thành tiền được tính = số lượng * đơn giá.

    Thực hiện các yêu cầu sau:

    + Xây dựng các lớp với chức năng thừa kế.

    + Nhập xuất danh sách các hóa đơn khách hàng.

    + Tính tổng số lượng cho từng loại khách hàng.

    + Tính trung bình thành tiền của khách hàng người nước ngoài.

    + Xuất ra các hoá đơn trong tháng 09 năm 2013 (cùa cả 2 loại khách hàng)

    TÀI LIỆU 2:

    Đề 2: Một đơn vị sản xuất gồm có các cán bộ là công nhân, kỹ sư, nhân viên.

    + Mỗi cán bộ cần quản lý lý các thuộc tính: Họ tên, năm sinh, giới tính, địa chỉ

    + Các công nhân cần quản lý: Bậc (công nhân bậc 3/7, bậc 4/7 …)

    + Các kỹ sư cần quản lý: Ngành đào tạo + Các nhân viên phục vụ cần quản lý thông tin: công việc

    1. Xây dựng các lớp NhanVien, CongNhan, KySu kế thừa từ lớp CanBo

    2. Xây dựng các hàm để truy nhập, hiển thị thông tin và kiểm tra về các thuộc tính của các lớp.

    3. Xây dựng lớp QLCB cài đặt các phương thức thực hiện các chức năng sau: – Nhập thông tin mới cho cán bộ – Tìm kiếm theo họ tên – Hiển thị thông tin về danh sách các cán bộ – Thoát khỏi chương trình.

    Tải xuống: Google Drive – ” Bài tập JAVA lập trình hướng đối tượng có lời giải PDF “

    Password: “‘ chúng tôi “

    Các bạn có thể xem lại danh sách các bài hướng dẫn về Java Cơ Bản tại đây: Java Cơ Bản.

    Chúc các bạn có một buổi học vui vẻ!

    --- Bài cũ hơn ---

  • Bài Tập Về Switch Case Trong C/c++
  • Lệnh Switch Case Trong C
  • Cấu Trúc Rẽ Nhánh Switch
  • Vòng Lặp Arraylist Trong Java Với Ví Dụ Cụ Thể
  • Tổng Hợp Bài Tập Lập Trình Hướng Đối Tượng Trong Java
  • Web hay
  • Links hay
  • Push
  • Chủ đề top 10
  • Chủ đề top 20
  • Chủ đề top 30
  • Chủ đề top 40
  • Chủ đề top 50
  • Chủ đề top 60
  • Chủ đề top 70
  • Chủ đề top 80
  • Chủ đề top 90
  • Chủ đề top 100
  • Bài viết top 10
  • Bài viết top 20
  • Bài viết top 30
  • Bài viết top 40
  • Bài viết top 50
  • Bài viết top 60
  • Bài viết top 70
  • Bài viết top 80
  • Bài viết top 90
  • Bài viết top 100