Подсчитать количество символов в тексте и заменить их - C#
Формулировка задачи:
Как реализовать код, который считывает кол-во символов в тексте.
И чтобы была ВОЗМОЖНОСТЬ ЗАМЕНИТЬ символы, а именно: находим символ, к примеру, который встречается макс кол-во раз, допустим "н" и заменяем его, допустим на символ 'о'
Что-то наподобие такой логики:
ЕСЛИ ('Н' встречается макс. кол-о раз в тексте) то
заменить все 'Н' в тексте на 'О'
ИНАЧЕ (ищи другой символ с макс. кол-вом)
Решение задачи: «Подсчитать количество символов в тексте и заменить их»
textual
Листинг программы
static void Main(string[] args) { string text = "Абвааа"; char c = 'О'; //на что меняем var fc = FrequencyCharacters(text); double max_p = 0; char max_char = '0'; for (int i = 0; i < fc.Length; i++) { if (fc[i] > max_p) { max_p = fc[i]; max_char = (char)('А' + i); } } Console.WriteLine("Исходный текст: {0}\n\r", text.ToUpper()); Console.WriteLine("Самы частый символ: {0} - {1:P}\n\r", max_char, max_p); Console.WriteLine("После замены \"{0}\" на \"{1}\" : {2}", max_char, c, text.ToUpper().Replace(max_char, c).ToUpper()); Console.ReadKey(); } static double[] FrequencyCharacters(string text) { var res = new double['Я' - 'А' + 1]; var length = text.Length; foreach (var c in text.ToUpper()) { if ((c >= 'А') && (c <= 'Я')) res[c - 'А']++; } for (int i = 0; i < res.Length; i++) { res[i] /= length; } return res; }
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д