Удаление пробелов в строке - C#

Узнай цену своей работы

Формулировка задачи:

Подскажите пожалуйста, как исправить: Индекс находился вне границ массива вот код
Листинг программы
  1. void Main()
  2. {
  3. string s = "lkfj fgef efgre erge g gergerg rf";
  4. char[] ch = s.ToCharArray();
  5. int x = 0;
  6.  
  7. for(int i =0; i<ch.Length; i++)
  8. {
  9. if (s[i] == ' ' && s[i+1] == ' ')
  10. x++;
  11. if(i+1 > ch.Length-1) break;
  12. ch [i+1] = ch [i+2];
  13. ch[ch.Length-x] = '.';
  14. ch.Dump();
  15. }
  16. }

Решение задачи: «Удаление пробелов в строке»

textual
Листинг программы
  1.         static string NormalizeSpaces(string str)
  2.         {
  3.             var builder = new StringBuilder();
  4.             for (int i = 0; i < str.Length; i++)
  5.             {
  6.                 if (str[i] != ' ')
  7.                 {
  8.                     builder.Append(str[i]);
  9.                 }
  10.                 else
  11.                 {
  12.                     if (i == str.Length - 1 || str[i + 1] != ' ')
  13.                     {
  14.                         builder.Append(str[i]);
  15.                     }
  16.                 }
  17.             }
  18.             return builder.ToString();
  19.         }

ИИ поможет Вам:


  • решить любую задачу по программированию
  • объяснить код
  • расставить комментарии в коде
  • и т.д
Попробуйте бесплатно

Оцени полезность:

12   голосов , оценка 3.833 из 5

Нужна аналогичная работа?

Оформи быстрый заказ и узнай стоимость

Бесплатно
Оформите заказ и авторы начнут откликаться уже через 10 минут