Menu
Coddy logo textTech

Подсчет уникальных слов

Часть раздела Логика и управление потоком путешествия по Dart на Coddy — урок 55 из 65.

challenge icon

Задание

Легко

Продолжая работу над проектом анализатора текста, вы теперь реализуете функциональность подсчета уникальных слов. Этот шаг позволит определить, сколько различных слов встречается в вашем тексте, используя Set для автоматического удаления дубликатов из списка слов.

  1. Используйте переменную textToAnalyze из вашей предыдущей настройки
  2. Используйте переменную totalCharacters из шага подсчета символов
  3. Используйте переменную wordList из шага разделения слов
  4. Используйте переменную totalWords из шага подсчета слов
  5. Преобразуйте список слов в Set, используя Set.from(), чтобы автоматически удалить повторяющиеся слова
  6. Сохраните полученный Set в переменной с именем uniqueWordsSet
  7. Подсчитайте количество уникальных слов, используя свойство .length у Set
  8. Сохраните количество уникальных слов в переменной с именем uniqueWordCount
  9. Отобразите результаты анализа уникальных слов в точном формате, показанном ниже
  10. Покажите исходный текст, количество символов, список слов, общее количество слов, набор уникальных слов и количество уникальных слов с правильным форматированием

Например, если ваш анализатор текста был настроен с "Hello world hello", ваша программа должна вывести:

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.

Если ваш анализатор текста был настроен с "The cat and the dog", ваша программа должна вывести:

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: 4
====================================
Unique word analysis completed successfully.

Если ваш анализатор текста был настроен с "apple banana apple cherry banana", ваша программа должна вывести:

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.

Ваша программа должна использовать Set.from() для преобразования списка слов в Set, который автоматически удаляет дубликаты слов, сохраняя уникальные. Свойство .length у Set даст вам количество уникальных слов. Этот анализ поможет определить богатство словарного запаса текста и будет использоваться вместе с другими метриками в следующих уроках.

Попробуйте сами

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.');
}

Все уроки раздела Логика и управление потоком