Menu
CoddyTech

Đếm số từ duy nhất

Thuộc phần Logic và luồng điều khiển trong hành trình Dart của Coddy. Bài học 55 trên 65.

challenge icon

Thử thách

Dễ

Tiếp tục dự án phân tích văn bản, giờ bạn sẽ triển khai chức năng đếm số từ duy nhất. Bước này sẽ xác định có bao nhiêu từ khác nhau xuất hiện trong văn bản bằng cách dùng Set để tự động loại bỏ các từ trùng lặp khỏi danh sách từ.

  1. Dùng biến textToAnalyze từ phần thiết lập trước đó
  2. Dùng biến totalCharacters từ bước đếm ký tự
  3. Dùng biến wordList từ bước tách từ
  4. Dùng biến totalWords từ bước đếm từ
  5. Chuyển danh sách từ thành Set bằng Set.from() để tự động loại bỏ các từ trùng lặp
  6. Lưu Set thu được vào một biến có tên uniqueWordsSet
  7. Đếm số từ duy nhất bằng thuộc tính .length của Set
  8. Lưu số từ duy nhất vào một biến có tên uniqueWordCount
  9. Hiển thị kết quả phân tích từ duy nhất theo đúng định dạng bên dưới
  10. Hiển thị văn bản gốc, số ký tự, danh sách từ, tổng số từ, tập hợp các từ duy nhất và số từ duy nhất với định dạng phù hợp

Ví dụ, nếu trình phân tích văn bản của bạn được thiết lập với "Hello world hello", chương trình sẽ in ra:

Text Analysis Tool - Unique Words
====================================
Analyzing text: "Hello world hello"
Total characters: 17
Words found: [Hello, world, hello]
Total words: 3
====================================
Unique Word Analysis Results:
Unique words: {Hello, world, hello}
Unique word count: 3
====================================
Unique word analysis completed successfully.

Nếu trình phân tích văn bản của bạn được thiết lập với "The cat and the dog", chương trình sẽ in ra:

Text Analysis Tool - Unique Words
====================================
Analyzing text: "The cat and the dog"
Total characters: 19
Words found: [The, cat, and, the, dog]
Total words: 5
====================================
Unique Word Analysis Results:
Unique words: {The, cat, and, the, dog}
Unique word count: 5
====================================
Unique word analysis completed successfully.

Nếu trình phân tích văn bản của bạn được thiết lập với "apple banana apple cherry banana", chương trình sẽ in ra:

Text Analysis Tool - Unique Words
====================================
Analyzing text: "apple banana apple cherry banana"
Total characters: 33
Words found: [apple, banana, apple, cherry, banana]
Total words: 5
====================================
Unique Word Analysis Results:
Unique words: {apple, banana, cherry}
Unique word count: 3
====================================
Unique word analysis completed successfully.

Chương trình nên dùng Set.from() để chuyển danh sách từ thành Set. Thao tác này sẽ tự động loại bỏ các từ trùng lặp và giữ lại những từ duy nhất. Thuộc tính .length của Set sẽ cho bạn biết số lượng từ duy nhất. Phân tích này giúp xác định mức độ phong phú về từ vựng của văn bản và sẽ được dùng cùng các chỉ số khác trong những bài học sắp tới.

Tự làm thử

import 'dart:io';

void main() {
  String? textToAnalyze = stdin.readLineSync();
  int totalCharacters = textToAnalyze!.length;
  List<String> wordList = textToAnalyze.split(' ');
  int totalWords = wordList.length;
  
  print('Text Analysis Tool - Word Count');
  print('====================================');
  print('Analyzing text: "$textToAnalyze"');
  print('Total characters: $totalCharacters');
  print('Words found: $wordList');
  print('====================================');
  print('Word Count Results:');
  print('Total words: $totalWords');
  print('====================================');
  print('Word counting completed successfully.');
}

Tất cả bài học trong Logic và luồng điều khiển

Tự luyện tập: Trình biên dịch Dart online