Menu
Coddy logo textTech

Wyświetlanie analizy

Część sekcji Logika i przepływ sterowania ścieżki Dart w Coddy. Lekcja 57 z 65.

challenge icon

Wyzwanie

Łatwy

W tej ostatniej lekcji projektu Text Analyzer utworzysz kompleksowe zestawienie wszystkich wyników analizy zebranych w trakcie projektu. Ten krok pozwoli sformatować i przedstawić wszystkie statystyki w czytelnym, profesjonalnym podsumowaniu prezentującym pełną analizę tekstu.

  1. Użyj wszystkich zmiennych z poprzednich etapów projektu:
    • textToAnalyze z konfiguracji projektu
    • totalCharacters z etapu zliczania znaków
    • wordList z etapu dzielenia tekstu na słowa
    • totalWords z etapu zliczania słów
    • uniqueWordsSet z etapu zliczania unikalnych słów
    • uniqueWordCount z etapu zliczania unikalnych słów
    • wordFrequency z etapu zliczania częstotliwości występowania słów
  2. Utwórz kompleksowy raport końcowy, który wyświetli wszystkie wyniki analizy
  3. Sformatuj dane wyjściowe tak, aby przedstawiały pełne podsumowanie analizy tekstu
  4. Uwzględnij wszystkie statystyki, dodając czytelne etykiety i stosując odpowiednie formatowanie
  5. Wyświetl wyniki dokładnie w formacie pokazanym poniżej

Na przykład, jeśli Twój analizator tekstu został skonfigurowany dla tekstu "hello world hello", program powinien wyświetlić:

=======================================
    TEXT ANALYSIS COMPLETE REPORT    
=======================================
Original Text: "hello world hello"
=======================================
ANALYSIS SUMMARY:
- Total Characters: 17
- Total Words: 3
- Unique Words: 2
- Most Common Word: hello (appears 2 times)
=======================================
DETAILED BREAKDOWN:
Word List: [hello, world, hello]
Unique Words Set: {hello, world}
Word Frequency Map: {hello: 2, world: 1}
=======================================
Analysis completed successfully!
Text contains 2 unique words out of 3 total words.
=======================================

Jeśli Twój analizator tekstu został skonfigurowany dla tekstu "the cat and the dog and the bird", program powinien wyświetlić:

=======================================
    TEXT ANALYSIS COMPLETE REPORT    
=======================================
Original Text: "the cat and the dog and the bird"
=======================================
ANALYSIS SUMMARY:
- Total Characters: 32
- Total Words: 8
- Unique Words: 5
- Most Common Word: the (appears 3 times)
=======================================
DETAILED BREAKDOWN:
Word List: [the, cat, and, the, dog, and, the, bird]
Unique Words Set: {the, cat, and, dog, bird}
Word Frequency Map: {the: 3, cat: 1, and: 2, dog: 1, bird: 1}
=======================================
Analysis completed successfully!
Text contains 5 unique words out of 8 total words.
=======================================

Jeśli Twój analizator tekstu został skonfigurowany dla tekstu "apple banana apple cherry banana apple", program powinien wyświetlić:

=======================================
    TEXT ANALYSIS COMPLETE REPORT    
=======================================
Original Text: "apple banana apple cherry banana apple"
=======================================
ANALYSIS SUMMARY:
- Total Characters: 38
- Total Words: 6
- Unique Words: 3
- Most Common Word: apple (appears 3 times)
=======================================
DETAILED BREAKDOWN:
Word List: [apple, banana, apple, cherry, banana, apple]
Unique Words Set: {apple, banana, cherry}
Word Frequency Map: {apple: 3, banana: 2, cherry: 1}
=======================================
Analysis completed successfully!
Text contains 3 unique words out of 6 total words.
=======================================

Twój program powinien określić najczęściej występujące słowo, znajdując słowo o najwyższej częstotliwości w mapie wordFrequency. Użyj interpolacji ciągów znaków, aby wyświetlić wszystkie zebrane dane w profesjonalnym, czytelnym formacie. To końcowe zestawienie łączy wszystkie wykonane w trakcie projektu prace analityczne w jedno kompleksowe podsumowanie.

Spróbuj swoich sił

import 'dart:io';

void main() {
  String? textToAnalyze = stdin.readLineSync();
  
  int totalCharacters = textToAnalyze!.length;
  
  List<String> wordList = textToAnalyze.split(' ');
  
  int totalWords = wordList.length;
  
  Set<String> uniqueWordsSet = wordList.toSet();
  
  int uniqueWordCount = uniqueWordsSet.length;
  
  Map<String, int> wordFrequency = {};
  
  for (String word in wordList) {
    if (wordFrequency.containsKey(word)) {
      wordFrequency[word] = wordFrequency[word]! + 1;
    } else {
      wordFrequency[word] = 1;
    }
  }
  
  print('Text Analysis Tool - Word Frequency');
  print('====================================');
  print('Analyzing text: "$textToAnalyze"');
  print('Total characters: $totalCharacters');
  print('Words found: $wordList');
  print('Total words: $totalWords');
  print('Unique words: $uniqueWordsSet');
  print('Unique word count: $uniqueWordCount');
  print('====================================');
  print('Word Frequency Analysis Results:');
  print('Word frequencies: $wordFrequency');
  print('====================================');
  print('Word frequency analysis completed successfully.');
}

Wszystkie lekcje w sekcji Logika i przepływ sterowania

Poćwicz samodzielnie: Kompilator Dart online