Работа с текстом, перевод из C++ - C#
Формулировка задачи:
Написать программу, которая считывает с клавиатуры несколько строк текста и печатает таблицу, показывающую, сколько раз в тексте встречаются одинаковые слова.
Примерно такой код, необязательно чтобы так повторялось. Да и в задании сказано, что будут несколько строк...
#include <iostream> #include <string> #include <sstream> #include <map> int main(){ std::string str; while ( std::cout << "String: " && std::getline(std::cin, str) && ! str.empty() ){ std::istringstream ist(str); std::map<std::string, int> map; while ( ist >> str ) map[str]++; for ( std::map<std::string, int>::const_iterator i = map.begin(); i != map.end(); ++i ) std::cout << i->first << "\t" << i->second << std::endl; } return 0; }
Решение задачи: «Работа с текстом, перевод из C++»
textual
Листинг программы
Dictionary<string, int> dict = new Dictionary<string, int>(); string line; string[] words; do { line = Console.ReadLine(); words = line.Split(new char[]{' '}, StringSplitOptions.RemoveEmptyEntries); foreach (string word in words) { if (dict.ContainsKey(word)) dict[word]++; else dict.Add(word, 1); } } while (words.Length > 0); //цикл до ввода пустой строки foreach (string key in dict.Keys) { Console.WriteLine("Слово {0} встречается {1} раз(а)", key, dict[key]); }
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д