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

các bài luyện tập Java bao gồm lời giải

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

*

Note: Trước lúc chứng kiến tận mắt lời giải thì chúng ta hãy trường đoản cú làm trước nhé với hãy comtháng hóa (phân tách thành cách thức riêng) phần đa gì có thể thực hiện lại được.


1. các bài luyện tập java cơ phiên bản

Trong phần này, bạn buộc phải vậy được các kỹ năng về: Các mệnh đề if-else, switch-case. Các vòng lặp for, while, do-while. Các trường đoản cú khóa break cùng continue vào java. Các tân oán tử vào java. Mảng (array) trong java. File I/O vào java. Xử lý nước ngoài lệ trong java. Bài 01:

Viết lịch trình tìm kiếm toàn bộ những số chia không còn mang đến 7 cơ mà không phải bội số của 5, phía bên trong đoạn 10 và 200 (tính cả 10 và 200). Các số chiếm được sẽ được in thành chuỗi bên trên một cái, cách nhau bằng vệt phẩy.

Gợi ý:

Sử dụng vòng lặp for

Code mẫu:


package vn.cqaugusta.com.baitap;import java.util.ArrayList;import java.util.List;public class Bai01 { public static void main(String<> args) { List list = new ArrayList(); for (int i = 10; i list) { if (menu != null && !danh sách.isEmpty()) { int kích thước = danh sách.size(); for (int i = 0; i
Kết quả:


14, 21, 28, 42, 49, 56, 63, 77, 84, 91, 98, 112, 119, 126, 133, 147, 154, 161, 168, 182, 189, 196
Bài 02:

Viết một chương trình tính giai thừa của một số nguyên dương n. Với n được nhập từ bàn phím. lấy ví dụ như, n = 8 thì kết quả cổng output bắt buộc là 1*2*3*4*5*6*7*8 = 403đôi mươi.

Gợi ý:

Sử dụng đệ quy hoặc vòng lặp để tính giai vượt.

Code mẫu: thực hiện đệ quy


package vn.cqaugusta.com.baitap;import java.util.Scanner;public class GiaiThuaDemo2 private static Scanner scanner = new Scanner(System.in); /** * main * *
author cqaugusta.com *
param args */ public static void main(String<> args) System.out.print("Nhập số nguyên ổn dương n = "); int n = scanner.nextInt(); System.out.println("Giai quá của " + n + " là: " + tinhGiaithua(n)); /** * tinc giai thảm bại * *
author cqaugusta.com *
param n: so nguyen duong *
return giai thua thảm cua so n */ public static long tinhGiaithua(int n) if (n > 0) return n * tinhGiaithua(n - 1); else return 1;
Kết quả:


Nhập số nguyên dương n = 8Giai vượt của 8 là: 40320
Bài 03:

Hãy viết công tác nhằm tạo nên một maps cất (i, i*i), trong đó i là số nguyên ổn từ là một mang lại n (bao gồm cả 1 và n), n được nhập từ bỏ keyboard. Sau đó in bản đồ này ra màn hình. Ví dụ: Giả sử số n là 8 thì cổng đầu ra vẫn 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 nhằm lặp i từ một mang đến n.

Code mẫu:


package vn.cqaugusta.com.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 số nguyên dương n = "); int n = scanner.nextInt(); Map maps = new HashMap(); for (int i = 1; i
Kết quả:


Nhập số nguyên ổn dương n = 101=1, 2=4, 3=9, 4=16, 5=25, 6=36, 7=49, 8=64, 9=81, 10=100
Bài 04:

Viết lịch trình giải phương trình bậc 2: ax2 + bx + c = 0.

Code mẫu:


package vn.cqaugusta.com.baitap; import java.util.Scanner; /** * Giải phương thơm trình bậc 2 * *
author cqaugusta.com */public class PhuongTrinhBac2 private static Scanner scanner = new Scanner(System.in); /** * main * *
param args */ public static void main(String<> args) System.out.print("Nhập thông số bậc 2, a = "); float a = scanner.nextFloat(); System.out.print("Nhập thông số bậc 1, b = "); float b = scanner.nextFloat(); System.out.print("Nhập hằng số thoải mái, c = "); float c = scanner.nextFloat(); giaiPTBac2(a, b, c); /** * Giải phương trình bậc 2: ax2 + bx + c = 0 * *
param a: thông số bậc 2 *
param b: thông số bậc 1 *
param c: số hạng tự do */ public static void giaiPTBac2(float a, float b, float c) // đánh giá những hệ số if (a == 0) if (b == 0) System.out.println("Pmùi hương trình vô nghiệm!"); else System.out.println("Phương thơm trình tất 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 if (delta > 0) x1 = (float) ((-b + Math.sqrt(delta)) / (2*a)); x2 = (float) ((-b - Math.sqrt(delta)) / (2*a)); System.out.println("Phương thơm trình bao gồm 2 nghiệm là: " + "x1 = " + x1 + " và x2 = " + x2); else if (delta == 0) x1 = (-b / (2 * a)); System.out.println("Pmùi hương trình gồm nghiệm kép: " + "x1 = x2 = " + x1); else System.out.println("Pmùi hương trình vô nghiệm!");
Kết quả:


Nhập thông số bậc 2, a = 2Nhập thông số bậc 1, b = 1Nhập hằng số thoải mái, c = -1Phương thơm trình gồm 2 nghiệm là: x1 = 0.5 với x2 = -1.0
Bài 05:

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

Gợi ý:

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.cqaugusta.com.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 cqaugusta.com *
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("So " + n + " vào he teo so 2 = " + ConvertNumber.convertNumber(n, 2)); System.out.println("So " + n + " vào he teo so 16 = " + ConvertNumber.convertNumber(n, 16)); /** * chuyen doi so nguyen n lịch sự he teo so b * *
author cqaugusta.com *
param n: so nguyen *
param b: he co so *
return he teo so b */ public static String convertNumber(int n, int b) if (n 16 ) return ""; StringBuilder sb = new StringBuilder(); int m; int remainder = n; while (remainder > 0) if (b > 10) m = remainder % b; if (m >= 10) sb.append((char) (CHAR_55 + m)); else sb.append(m); else sb.append(remainder % b); remainder = remainder / b; return sb.reverse().toString();
Kết quả:


Nhập số nguim dương n = 15So 15 vào he co so 2 = 1111So 15 vào he co so 16 = F
Bài 06:

Dãy số Fibonacci được định nghĩa như sau: F0 = 0, F1 = 1, F2 = 1, Fn = F(n-1) + F(n-2) cùng với n >= 2. Ví dụ: 0, 1, 1, 2, 3, 5, 8, ... Hãy viết công tác tìm kiếm n số Fibonacci trước tiên.

Code mẫu:


package vn.cqaugusta.com.baitap;import java.util.Scanner;/*** Tính dãy số Fibonacci bởi phương pháp đệ quy* *
author cqaugusta.com*/public class FibonacciExample2 { private static Scanner scanner = new Scanner(System.in); /** * main * *
param args */ public static void main(String<> args) { System.out.print("Nhập số ngulặng dương n = "); int n = scanner.nextInt(); System.out.println(n + " số thứ nhất của dãy số fibonacci: "); for (int i = 0; i
Kết quả:


Nhập số ngulặng dương n = 1212 số đầu tiên của hàng số fibonacci: 0 1 1 2 3 5 8 13 21 34 55 89
Bài 07:

Viết công tác search ước số phổ biến lớn nhất (USCLN) và bội số bình thường nhỏ tuổi duy nhất (BSCNN) của hai số ngulặng dương a cùng b nhập từ bàn phím.

Gợi ý:

Code mẫu:


package vn.cqaugusta.com.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 số nguyên dương a = "); int a = scanner.nextInt(); System.out.print("Nhập số nguyên ổn dương b = "); int b = scanner.nextInt(); // tính USCLN của a với b System.out.println("USCLN của " + a + " cùng " + b + " là: " + USCLN(a, b)); // tính BSCNN của a cùng b System.out.println("BSCNN của " + a + " và " + b + " là: " + BSCNN(a, b)); /** * Tìm ước số phổ biến lớn số 1 (USCLN) * *
param a: số ngulặng dương *
param b: số nguyên dương *
return USCLN của a và b */ public static int USCLN(int a, int b) if (b == 0) return a; return USCLN(b, a % b); /** * Tìm bội số tầm thường bé dại tốt nhất (BSCNN) * *
param a: số nguim dương *
param b: số nguim dương *
return BSCNN của a và b */ public static int BSCNN(int a, int b) return (a * b) / USCLN(a, b);
Kết quả:


Nhập số nguyên ổn dương a = 10Nhập số nguyên dương b = 24USCLN của 10 với 24 là: 2BSCNN của 10 và 24 là: 120
Bài 08:

Viết lịch trình liệt kê toàn bộ các số nguyên ổn tố bé dại hơn n. Số nguyên dương n được nhập từ keyboard.

Bạn đang xem: Bài tập java cơ bản

Code mẫu:


package vn.cqaugusta.com.baitap; import java.util.Scanner; /** * Chương trình liệt kê toàn bộ những số ngulặng tố nhỏ dại hơn n. * *
author cqaugusta.com */public class BaiTap08 { 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 ổn tố nhỏ tuổi rộng %d là: ", n); if (n >= 2) 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 = 100Tất cả các số nguyên tố bé dại 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 ổn tố thứ nhất trong java. Số nguyên ổn dương n được nhập tự bàn phím.

Code mẫu:


package vn.cqaugusta.com.baitap; import java.util.Scanner; /** * Chương trình liệt kê n số nguyên ổn tố trước tiên. * *
author cqaugusta.com */public class BaiTap09 { 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("%d số nguyên ổn tố thứ nhất là: ", n); int dem = 0; // đếm số số ngulặng tố int i = 2; // tìm số nguim tố bắt dầu tự số 2 while (dem = 2 int squareRoot = (int) Math.sqrt(n); for (int i = 2; i
Kết quả:


Nhập n = 1010 số nguyên ổn tố trước tiên là: 2 3 5 7 11 13 17 19 23 29
Bài 10:

Viết chương trình liệt kê tất cả số nguyên ổn tố tất cả 5 chữ số trong java.

Xem thêm: Nếu Là Số Có 1 Chữ Số Thì Biểu Thức Có Giá Trị Lớn Nhất Là, Tạo Công Thức Có Điều Kiện

Code mẫu:


package vn.cqaugusta.com.baitap; /** * Chương thơm trình liệt kê toàn bộ số nguyên ổn tố có 5 chữ số. * *
author cqaugusta.com */public class BaiTap10 { /** * main * *
param args */ public static void main(String<> args) { int count = 0; System.out.println("Liệt kê tất cả số nguyên ổn tố gồm 5 chữ số:"); for (int i = 10001; i = 2 int squareRoot = (int) Math.sqrt(n); for (int i = 2; i
Kết quả:


Bài 11:

Viết công tác so sánh số nguyên n thành những thừa số nguyên ổn tố vào java. Ví dụ: 100 = 2x2x5x5.

Code mẫu:


package vn.cqaugusta.com.baitap; import java.util.ArrayList;import java.util.List;import java.util.Scanner; /** * Chương thơm trình so với số nguim n thành các thừa số nguyên tố. * Ví dụ: 12 = 2 x 2 x 3. * *
author cqaugusta.com */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(); // đối chiếu số nguyên dương n List listNumbers = phanTichSoNguyen(n); // in hiệu quả ra màn hình hiển thị System.out.printf("Kết quả: %d = ", n); int size = listNumbers.size(); for (int i = 0; i phanTichSoNguyen(int n) int i = 2; List listNumbers = new ArrayList(); // phân tích while (n > 1) if (n % i == 0) n = n / i; listNumbers.add(i); else i++; // giả dụ listNumbers trống thì add n vào listNumbers if (listNumbers.isEmpty()) listNumbers.add(n); return listNumbers;
Kết quả:


Nhập số nguim dương n = 100Kết quả: 100 = 2 x 2 x 5 x 5
Bài 12:

Viết chương trình tính tổng của những chữ số của môt số ngulặng n vào java. Số ngulặng dương n được nhập từ bỏ bàn phím. Với n = 1234, tổng những chữ số: 1 + 2 + 3 + 4 = 10

Code mẫu:


package vn.cqaugusta.com.baitap; import java.util.Scanner; /** * Chương trình tính tổng của những chữ số của môt số ngulặng dương n. * Tổng của các chữ số của 6677 là 6 + 6 + 7 + 7 = 26. * *
author cqaugusta.com */public class BaiTap12 private static Scanner scanner = new Scanner(System.in); public static int DEC_10 = 10; /** * main * *
param args */ public static void main(String<> args) System.out.print("Nhập số nguyên ổn dương n = "); int n = scanner.nextInt(); System.out.printf("Tổng của những 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ố ngulặng dương * *
param n: số nguyên dương *
return */ public static int totalDigitsOfNumber(int n) int total = 0; vì chưng total = total + n % DEC_10; n = n / DEC_10; while (n > 0); return total;
Kết quả:


Nhập số nguim dương n = 6677Tổng của những chữ số của 6677 là: 26
Bài 13:

Viết chương trình chất vấn một số n là số thuận nghịch vào java. Số ngulặng dương n được nhập tự keyboard.

Code mẫu:


package vn.cqaugusta.com.baitap;import java.util.Scanner;/** * Chương thơm trình liệt kê tất cả những số thuận nghịch bao gồm 6 chữa trị số. * *
author cqaugusta.com */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ố ngulặng dương n = "); int n = scanner.nextInt(); System.out.println(n + " là số thuận nghịch: " + isThuanNghich(n)); System.out.print("Nhập số ngulặng dương m = "); int m = scanner.nextInt(); System.out.println(n + " là số thuận nghịch: " + isThuanNghich(m)); /** * Kiểm tra số thuận nghịch * *
param n: số nguyên dương *
return true là số thuận nghịch * false không là số thuận nghịch */ public static boolean isThuanNghich(int n) { // thay đổi số n thành một chuỗi String String numberStr = String.valueOf(n); // kiểm soát tính thuận nghịch int kích cỡ = numberStr.length(); for (int i = 0; i
Kết quả:


Nhập số nguim dương n = 12332112332một là số thuận nghịch: trueNhập số nguyên dương m = 123451123321 là số thuận nghịch: false
Bài 14:

Viết công tác liệt kê các số Fibonacci nhỏ dại rộng n là số nguyên tố vào java. N là số nguim dương được nhập từ bỏ keyboard.

Code mẫu:


package vn.cqaugusta.com.baitap; import java.util.Scanner; /** * Chương thơm trình liệt kê các số Fibonacci bé dại hơn n là số nguim tố. * Với n được nhập từ keyboard. * *
author cqaugusta.com */public class BaiTap14 { 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 và thoải mái n = "); int n = scanner.nextInt(); System.out.printf("Các số fibonacci bé dại rộng %d và " + "là số nguyên ổn tố: ", n); int i = 0; while (fibonacci(i) = 2 int squareRoot = (int) Math.sqrt(n); for (int i = 2; i
Kết quả:


Nhập số thoải mái và tự nhiên n = 100Các số fibonacci nhỏ rộng 100 và là số nguyên tố: 2 3 5 13 89
Các bài tập khác:

Viết chương trình nhập số nguyên dương n cùng 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 các kết quả những thừa số nguyên ổn tố. c) Liệt kê những ước số của n. d) Liệt kê những ước số là nguim tố của n. Viết lịch trình liệt kệ các số nguim bao gồm 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ố phần đông là số nguyên tố. d) Tổng các chữ số là số nguyên tố. Viết công tác liệt kệ những số ngulặng tất cả 7 chữ số thảo mãn: a) Là số ngulặng tố. b) Là số thuận nghịch. c) Mỗi chữ số hồ hết là số nguyên tố. d) Tổng những chữ số là số thuận nghịch.

Xem thêm: Hỏi / Đáp - Kết Nối Sky Với Máy Tính Windows 8

2. Bài tập chuỗi vào Java

Danh sách bài bác tập:


3. các bài luyện tập mảng vào Java

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

Danh sách bài tập:

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 (hoàn toàn có thể sử dụng thêm mảng số nguyên), hãy in ra screen mảng trên theo sản phẩm trường đoản cú tăng ngày một nhiều. Viết lịch trình nhtràn lên mảng A gồm n bộ phận, các phần tử là số nguim to hơn 0 và nhỏ tuổi hơn 100. Thực hiện tại các tính năng sau: a) Tìm phần tử lớn trước tiên và phệ thứ 2 trong mảng cùng với những chỉ số của chúng (chỉ số đầu tiên tra cứu được). b) Sắp xếp mảng theo sản phẩm từ bỏ tăng nhiều. c) Nhập số ngulặng x và chèn x vào mảng A sao để cho vẫn đảm bảo tính tăng đột biến mang đến mảng A. Viết công tác nhập lệ ma trận A có n dòng, m cột, những phần tử là số nguyên to hơn 0 cùng nhỏ tuổi rộng 100. Thực hiện các công dụng sau: a) Tìm phần tử béo đầu tiên cùng với chỉ số của nó (chỉ số đầu tiên tra cứu được). b) Tìm cùng in ra những bộ phận là số nguyên tố của ma trận (các thành phần không nguyên tố thì nạm ngay số 0). c) Sắp xếp tất cả những cột của ma trận theo thiết bị tự tăng vọt với in kết quả ra màn hình hiển thị. d) Tìm cột trong ma trận có khá nhiều số nguyên tố độc nhất.

4. các bài tập luyện về những thuật toán bố trí vào Java

Quý Khách rất có thể coi các giải mã sắp xếp vào phần cấu tạo dữ liệu và giải thuật: Giải thuật bố trí

Dưới đấy là tổng hòa hợp một trong những bài bác tập thuật toán sắp xếp vào Java:

5. Bài tập java cải thiện

Trong phần này, các bạn buộc phải nắm được những kỹ năng và kiến thức về: Lớp với đối tượng trong java. Access modifier vào 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 vào java. Xử lý ngoại lệ trong java.

các bài luyện tập cai quản sinch viên trong Java - console

Đề bài: Viết công tác làm chủ sinc viên. Mỗi đối tượng người tiêu dùng sinh viên bao gồm các thuộc tính sau: id, name, age, address với gpage authority (điểm trung bình). Yêu cầu: tạo thành một menu với những tính năng sau: /****************************************/1. Add student.2. Edit student by id.3. Delete student by id.4. Sort student by gpage authority.5. Sort student by name.6. Show student.0. Exit./****************************************/

Lời giải: các bài tập luyện làm chủ sinch viên trong java - hình ảnh mẫu lệnh

các bài tập luyện cai quản sinh viên vào Java - Swing

Lời giải: các bài tập luyện quản lý sinc viên trong java bởi Swing

Chuyên mục: Blogs