Mảng (array) trong java

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

Bài này hỗ trợ cho bạn danh sách những dạng bài xích tập không giống nhau nhằm các bạn thực hành lúc học java.

*

Note: Trước khi xem giải thuật thì chúng ta hãy từ làm cho trước nhé với hãy common hóa (phân bóc thành phương thức riêng) hầu như gì rất có thể áp dụng lại được.


1. Những bài tập java cơ phiên bản

Trong phần này, các bạn buộc phải nạm được các kiến thức và 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 toán tử vào java. Mảng (array) vào java. File I/O trong java. Xử lý ngoại lệ trong java. Bài 01:

Viết lịch trình search toàn bộ những số phân tách hết cho 7 mà lại không hẳn bội số của 5, phía trong đoạn 10 và 200 (tính cả 10 cùng 200). Các số thu được sẽ được in thành chuỗi trên một loại, phương pháp nhau bằng lốt phẩy.

Gợi ý:

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

Code mẫu:


package vn.haiermobile.vn.baitap;import java.util.ArrayList;import java.util.List;public class Bai01 { public static void main(String<> args) { List các mục = new ArrayList(); for (int i = 10; i list) { if (các mục != null &và !menu.isEmpty()) { int form size = 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 lịch trình tính giai vượt của một số trong những ngulặng dương n. Với n được nhập tự keyboard. Ví dụ, n = 8 thì kết quả Áp sạc ra phải 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 quá.

Code mẫu: sử dụng đệ quy


package vn.haiermobile.vn.baitap;import java.util.Scanner;public class GiaiThuaDemo2 private static Scanner scanner = new Scanner(System.in); /** * main * *
author haiermobile.vn *
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 vượt của " + n + " là: " + tinhGiaithua(n)); /** * tinc giai thua kém * *
author haiermobile.vn *
param n: so nguyen duong *
return giai thua 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ố nguim dương n = 8Giai quá của 8 là: 40320
Bài 03:

Hãy viết chương trình nhằm tạo thành một map đựng (i, i*i), trong các số đó i là số nguyên từ một đến n (bao gồm cả 1 cùng n), n được nhập từ bàn phím. Sau kia in map này ra màn hình hiển thị. 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 cho n.

Code mẫu:


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


Nhập số nguyê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 thơm trình bậc 2: ax2 + bx + c = 0.

Code mẫu:


package vn.haiermobile.vn.baitap; import java.util.Scanner; /** * Giải phương thơm trình bậc 2 * *
author haiermobile.vn */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 thơm 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 thoải mái */ public static void giaiPTBac2(float a, float b, float c) // khám nghiệm những hệ số if (a == 0) if (b == 0) System.out.println("Phương thơm trình vô nghiệm!"); else System.out.println("Phương trình gồm 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 có 2 nghiệm là: " + "x1 = " + x1 + " cùng x2 = " + x2); else if (delta == 0) x1 = (-b / (2 * a)); System.out.println("Pmùi hương trình có nghiệm kép: " + "x1 = x2 = " + x1); else System.out.println("Phương thơm trình vô nghiệm!");
Kết quả:


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

Viết công tác biến hóa một trong những thoải mái và tự nhiên sinh sống thông số 10 thành một trong nhữ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.haiermobile.vn.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 haiermobile.vn *
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("So " + n + " vào he co 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 thanh lịch he teo so b * *
author haiermobile.vn *
param n: so nguyen *
param b: he co so *
return he co 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ố ngulặng dương n = 15So 15 trong he co so 2 = 1111So 15 vào he teo so 16 = F
Bài 06:

Dãy số Fibonacci được quan niệm 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 tra cứu n số Fibonacci trước tiên.

Code mẫu:


package vn.haiermobile.vn.baitap;import java.util.Scanner;/*** Tính dãy số Fibonacci bằng phương pháp đệ quy* *
author haiermobile.vn*/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ố nguyên dương n = "); int n = scanner.nextInt(); System.out.println(n + " số thứ nhất của hàng số fibonacci: "); for (int i = 0; i
Kết quả:


Nhập số ngulặng dương n = 1212 số trước 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 lịch trình tìm ước số phổ biến lớn nhất (USCLN) với bội số phổ biến nhỏ tốt nhất (BSCNN) của hai số nguyên dương a và b nhập trường đoản cú bàn phím.

Gợi ý:

Code mẫu:


package vn.haiermobile.vn.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ố ngulặng dương a = "); int a = scanner.nextInt(); System.out.print("Nhập số nguyên dương b = "); int b = scanner.nextInt(); // tính USCLN của a và 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 + " cùng " + b + " là: " + BSCNN(a, b)); /** * Tìm ước số tầm thường lớn nhất (USCLN) * *
param a: số nguyên dương *
param b: số nguim dương *
return USCLN của a cùng b */ public static int USCLN(int a, int b) if (b == 0) return a; return USCLN(b, a % b); /** * Tìm bội số bình thường bé dại độc nhất vô nhị (BSCNN) * *
param a: số nguyên dương *
param b: số nguyên ổn dương *
return BSCNN của a cùng 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ố ngulặng dương b = 24USCLN của 10 cùng 24 là: 2BSCNN của 10 và 24 là: 120
Bài 08:

Viết công tác liệt kê toàn bộ những số ngulặng tố nhỏ rộng n. Số nguyên ổn dương n được nhập trường đoản cú keyboard.

You watching: Mảng (array) trong java

Code mẫu:


package vn.haiermobile.vn.baitap; import java.util.Scanner; /** * Chương thơm trình liệt kê toàn bộ những số nguyên tố nhỏ tuổi hơn n. * *
author haiermobile.vn */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ả những số ngulặng tố nhỏ dạ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ố ngulặng tố nhỏ 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 lịch trình liệt kê n số nguyên tố thứ nhất vào java. Số ngulặng dương n được nhập trường đoản cú bàn phím.

Code mẫu:


package vn.haiermobile.vn.baitap; import java.util.Scanner; /** * Chương trình liệt kê n số nguim tố đầu tiên. * *
author haiermobile.vn */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ố ngulặng tố trước tiên là: ", n); int dem = 0; // đếm số số ngulặng tố int i = 2; // kiếm tìm số ngulặng tố bắt dầu từ bỏ 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ố thứ nhất là: 2 3 5 7 11 13 17 19 23 29
Bài 10:

Viết lịch trình liệt kê toàn bộ số nguyên ổn tố tất cả 5 chữ số trong java.

See more: Cách Tạo Hình Nền Trong Word Mà Bạn Nên Biết, Cách Tạo Hình Nền Văn Bản Trong Word

Code mẫu:


package vn.haiermobile.vn.baitap; /** * Chương thơm trình liệt kê tất cả số nguim tố bao gồm 5 chữ số. * *
author haiermobile.vn */public class BaiTap10 { /** * main * *
param args */ public static void main(String<> args) { int count = 0; System.out.println("Liệt kê toàn bộ 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 chương trình phân tích số nguyên n thành những thừa số nguyên ổn tố trong java. Ví dụ: 100 = 2x2x5x5.

Code mẫu:


package vn.haiermobile.vn.baitap; import java.util.ArrayList;import java.util.List;import java.util.Scanner; /** * Chương thơm trình so sánh số nguyên ổn n thành những thừa số ngulặng tố. * Ví dụ: 12 = 2 x 2 x 3. * *
author haiermobile.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 ổn dương n = "); int n = scanner.nextInt(); // so với số nguim dương n List listNumbers = phanTichSoNguyen(n); // in kết quả ra màn hình 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++; // nếu như listNumbers trống thì add n vào listNumbers if (listNumbers.isEmpty()) listNumbers.add(n); return listNumbers;
Kết quả:


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

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

Code mẫu:


package vn.haiermobile.vn.baitap; import java.util.Scanner; /** * Cmùi hương trình tính tổng của những chữ số của môt số nguim dương n. * Tổng của những chữ số của 6677 là 6 + 6 + 7 + 7 = 26. * *
author haiermobile.vn */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ố ngulặng 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ố trong những nguim 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; while (n > 0); return total;
Kết quả:


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

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

Code mẫu:


package vn.haiermobile.vn.baitap;import java.util.Scanner;/** * Chương thơm trình liệt kê toàn bộ những số thuận nghịch có 6 chữa trị số. * *
author haiermobile.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ố 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ố nguim dương *
return true là số thuận nghịch * false ko 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); // soát sổ tính thuận nghịch int kích thước = numberStr.length(); for (int i = 0; i
Kết quả:


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

Viết chương trình liệt kê những số Fibonacci nhỏ hơn n là số nguim tố vào java. N là số nguyên dương được nhập trường đoản cú keyboard.

Code mẫu:


package vn.haiermobile.vn.baitap; import java.util.Scanner; /** * Chương thơm trình liệt kê những số Fibonacci nhỏ hơn n là số nguyên tố. * Với n được nhập từ keyboard. * *
author haiermobile.vn */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ố thoải mái và tự nhiên n = "); int n = scanner.nextInt(); System.out.printf("Các số fibonacci bé dại hơn %d cùng " + "là số nguyê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ố tự nhiên n = 100Các số fibonacci nhỏ dại rộng 100 với là số ngulặng tố: 2 3 5 13 89
Các bài bác 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 thành tích các vượt số nguim tố. c) Liệt kê những ước số của n. d) Liệt kê các ước số là nguim tố của n. Viết lịch trình liệt kệ những số nguyên có từ 5 mang đế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ố số đông là số nguyên ổn tố. d) Tổng các chữ số là số ngulặng tố. Viết chương trình liệt kệ những số nguyên ổn gồm 7 chữ số thảo mãn: a) Là số nguyên ổn tố. b) Là số thuận nghịch. c) Mỗi chữ số hầu như là số nguyên tố. d) Tổng những chữ số là số thuận nghịch.

See more: Những Bài Hát Mới Của T-Ara, Top 15 Bài Hát Hay Nhất Làm Nên Tên Tuổi T

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

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


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

Các bài bác tập vào phần này làm việc với mảng một chiều cùng 2D vào java, bạn cũng có thể tham khảo bài học kinh nghiệm 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 sử dụng thêm mảng số thực làm sao không giống (có thể cần sử dụng thêm mảng số nguyên), hãy in ra screen mảng bên trên theo máy từ tăng dần. Viết lịch trình nhập lệ mảng A gồm n thành phần, các phần tử là số ngulặng lớn hơn 0 cùng nhỏ tuổi hơn 100. Thực hiện nay những tác dụng sau: a) Tìm bộ phận bự đầu tiên cùng to thứ hai 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 thiết bị từ bỏ tăng ngày một nhiều. c) Nhập số nguyên ổn x với chèn x vào mảng A làm sao cho vẫn bảo đảm an toàn tính tăng vọt đến mảng A. Viết chương trình nhtràn vào ma trận A gồm n loại, m cột, các thành phần là số ngulặng to hơn 0 và nhỏ rộng 100. Thực hiện các công dụng sau: a) Tìm thành phần to đầu tiên cùng với chỉ số của nó (chỉ số đầu tiên kiếm tìm được). b) Tìm cùng in ra những thành phần là số nguyên ổn tố của ma trận (các thành phần không nguyên ổn tố thì cố bằng số 0). c) Sắp xếp tất cả những cột của ma trận theo trang bị trường đoản cú tăng dần đều và in hiệu quả ra screen. d) Tìm cột vào ma trận có tương đối nhiều số nguyên tố tốt nhất.

4. các bài tập luyện về các thuật toán thu xếp vào Java

Quý Khách có thể xem các giải mã sắp xếp trong phần kết cấu dữ liệu và giải thuật: Giải thuật thu xếp

Dưới đây là tổng đúng theo một số 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 nâng cao

Trong phần này, các bạn phải cụ được các kiến thức và kỹ năng về: Lớp với đối tượng vào java. Access modifier vào java Các đặc thù của lập trình sẵn phía đối tượng người sử dụng (OOP). Các khái niệm Java OOPs. Collection trong java. Xử lý ngoại lệ trong java.

bài tập thống trị sinh viên vào Java - console

Đề bài: Viết công tác thống trị sinch viên. Mỗi đối tượng người dùng sinh viên gồm các nằm trong tính sau: id, name, age, address với gpa (điểm trung bình). Yêu cầu: tạo nên một thực đơn 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 gpage authority.5. Sort student by name.6. Show student.0. Exit./****************************************/

Lời giải: các bài luyện tập quản lý sinc viên vào java - bối cảnh dòng lệnh

Bài tập cai quản sinch viên trong Java - Swing

Lời giải: những bài tập cai quản sinch viên vào java bằng Swing