Lớp 10TIn Học

Bài tập xử lý chuỗi trong java | Tin học 10

Đáp án chi tiết, giải thích dễ hiểu nhất cho “Bài tập xử lý chuỗi trong java?” Cùng với kiến thức tham khảo là tài liệu cực hay và bổ ích giúp các bạn học sinh ôn tập và tích luỹ thêm kiến thức bộ môn Tin học 10.

Bài tập 1: 

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.

Bạn đang xem: Bài tập xử lý chuỗi trong java | Tin học 10

Mẫu code:

1   packagevn.viettuts.baitap;

3   importjava.util.ArrayList;

4   importjava.util.List;

6   publicclassBai01 {

7    publicstaticvoidmain(String[] args) {

8        List list = newArrayList();

9        for(inti = 10; i < 201; i++) {

10            if((i % 7== 0) && (i % 5!= 0)) {

11                list.add(i);

12            }

13        }

14        // hiển thị list ra màn hình

15        showList(list);

16    }

17 

18    publicstaticvoidshowList(List list) {

19        if(list != null&& !list.isEmpty()) {

20            intsize = list.size();

21            for(inti = 0; i < size - 1; i++) {

22                System.out.print(list.get(i) + “, “);

23            }

24            System.out.println(list.get(size – 1));

25        }

26    }

27   }

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 tập 2:

Viết chương trình Java nhập một mảng số nguyên a0,  a1,  a2, …, an-1. Liệt kê các phần tử xuất hiện trong mảng đúng 1 lần.

Mẫu code:

package vn.eLib.baitap.array;

import java.util.Map;

import java.util.Scanner;

import java.util.TreeMap;

/**

 * Chương trình liệt kê số lần xuất hiện các phần tử trong một mảng

 * nhập từ bàn phím trong java.

 *

 * @author eLib.vn

 */

publicclassBaiTap19{

publicstatic Scanner scanner = new Scanner(System. in );

/**

* main

*

* @param args

 */

publicstaticvoidmain(String[] args){

    System.out.print(“Nhập số phần tử của mảng: “);

int n = scanner.nextInt();

// khởi tạo arr

int[] arr = newint[n];

    System.out.println(“Nhập các phần tử của mảng: “);

for (int i = 0; i < n; i++) {

      System.out.printf(“a[%d] = “, i);

      arr[i] = scanner.nextInt();

    }

// tìm số lần xuất hiện của các phần tử

    Map < Integer,

    Integer > map = new TreeMap < Integer,

    Integer > ();

for (int i = 0; i < n; i++) {

      addElement(map, arr[i]);

    }

    System.out.print(“Các phần tử xuất hiện 1 lần: “);

for (Integer key: map.keySet()) {

if (map.get(key) == 1) {

        System.out.print(key + ” “);

      }

    }

  }

 

/**

     * Thêm từ vào map

     *

     * @param wordMap: map chứa các từ và số lần xuất hiện

     * @param sb: từ cần thêm vào wordMap

     */

publicstaticvoidaddElement(Map < Integer, Integer > map, int element){

if (map.containsKey(element)) {

int count = map.get(element) + 1;

      map.put(element, count);

    } else {

      map.put(element, 1);

    }

  }

}

Kết quả:

Nhập số phần tử của mảng: 6

Nhập các phần tử của mảng:

a[0] = 1

a[1] = 2

a[2] = 3

a[3] = 1

a[4] = 2

a[5] = 5

Các phần tử xuất hiện 1 lần: 3 5

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

Mẫu code:

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

22

23

24

25

26

27

28

29

30

31

32

33

34

35

36

37

38

39

40

41

42

43

44

45

46

47

48

49

50

51

52

53

54

55

56

57

58

59

60

61

62

63

packagevn.viettuts.baitap;

  

importjava.util.Scanner;

  

/**

 * Giải phương trình bậc 2

 * 

 * @author viettuts.vn

 */

publicclassPhuongTrinhBac2 {

    privatestaticScanner scanner = newScanner(System.in);

    /**

     * main

     * 

     * @param args

     */

    publicstaticvoidmain(String[] args) {

        System.out.print(“Nhập hệ số bậc 2, a = “);

        floata = scanner.nextFloat();

        System.out.print(“Nhập hệ số bậc 1, b = “);

        floatb = scanner.nextFloat();

        System.out.print(“Nhập hằng số tự do, c = “);

        floatc = 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

     */

    publicstaticvoidgiaiPTBac2(floata, floatb, floatc) {

        // 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

        floatdelta = b*b – 4*a*c;

        floatx1;

        floatx2;

        // 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 trình có 2 nghiệm là: “

                    + “x1 = “+ x1 + ” và x2 = “+ x2);

        } elseif(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 tập 4: 

Viết chương trình nhập một mảng số nguyên a0, a1, a2, …, an-1. Liệt kê số lần xuất hiện của các phần tử trong một mảng đã cho.

Mẫu code:

package vn.eLib.baitap.array;

import java.util.Map;

import java.util.Scanner;

import java.util.TreeMap;

/**

 * Chương trình liệt kê số lần xuất hiện các phần tử trong một mảng

 * nhập từ bàn phím trong java.

 *

 * @author viettuts.vn

 */

publicclassBaiTap21{

publicstatic Scanner scanner = new Scanner(System. in );

/**

     * main

     *

     * @param args

     */

publicstaticvoidmain(String[] args){

    System.out.print(“Nhập số phần tử của mảng: “);

int n = scanner.nextInt();

// khởi tạo arr

int[] arr = newint[n];

    System.out.print(“Nhập các phần tử của mảng: n”);

for (int i = 0; i < n; i++) {

      System.out.printf(“a[%d] = “, i);

      arr[i] = scanner.nextInt();

    }

// tìm số lần xuất hiện của các phần tử

    Map < Integer,

    Integer > map = new TreeMap < Integer,

    Integer > ();

for (int i = 0; i < n; i++) {

      addElement(map, arr[i]);

    }

    System.out.print(“Các phần tử xuất hiện 2 lần: n”);

for (Integer key: map.keySet()) {

      System.out.printf(“%d xuất hiện %d lần.n”, key, map.get(key));

    }

  }

/**

     * Thêm từ vào map

     *

     * @param wordMap: map chứa các từ và số lần xuất hiện

     * @param sb: từ cần thêm vào wordMap

     */

publicstaticvoidaddElement(Map < Integer, Integer > map, int element){

if (map.containsKey(element)) {

int count = map.get(element) + 1;

      map.put(element, count);

    } else {

      map.put(element, 1);

    }

  }

}

Kết quả:

Nhập số phần tử của mảng: 10

Nhấp các phần tử của mảng:

a[0] = 1

a[1] = 2

a[2] = 3

a[3] = 4

a[4] = 1

a[5] = 2

a[6] = 2

a[7] = 5

a[8] = 6

a[9] = 7

Các phần tử xuất hiện 2 lần:

+ 1 xuất hiện 2 lần.

+ 2 xuất hiện 3 lần.

+ 3 xuất hiện 1 lần.

+ 4 xuất hiện 1 lần.

+ 5 xuất hiện 1 lần.

+ 6 xuất hiện 1 lần.

+ 7 xuất hiện 1 lần.

Đăng bởi: THPT Ninh Châu

Chuyên mục: Lớp 10, Tin Học 10

Trả lời

Email của bạn sẽ không được hiển thị công khai.

Back to top button