Ошибка "Входная строка имела неверный формат" - C# (185120)

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

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

Входная строка имела неверный формат,string count = nums.Count().ToString();Помогите пожалуйста найти ошибку.
Листинг программы
  1. using System;
  2. using System.Collections.Generic;
  3. using System.Linq;
  4. using System.Text;
  5. using System.Threading.Tasks;
  6. using System.IO;
  7. using System.Globalization;
  8.  
  9. namespace ConsoleApplication9
  10. {
  11. class Program
  12. {
  13. static void Main(string[] args)
  14. {
  15. string data = File.ReadAllText("1.txt");
  16. List<char> NotDigits = new List<char>();
  17. List<char> NotLetters = new List<char>();
  18. for (int i = 0; i < data.Length; i++)
  19. {
  20. char c = data[i];
  21. if (!Char.IsLetter(c) && !NotLetters.Contains(c)) NotLetters.Add(c);
  22. if (!Char.IsDigit(c) && NotDigits.Contains(c)) NotDigits.Add(c);
  23. }
  24. var nums = data.Split(NotDigits.ToArray(),
  25. StringSplitOptions.RemoveEmptyEntries)
  26. .Select(int.Parse);
  27. string count = nums.Count().ToString();
  28. File.WriteAllText("test.txt", count);
  29. int max = nums.Max();
  30. int min = nums.Min();
  31. Console.WriteLine("MAX = {0}, MIN = {1}", max, min);
  32. string[] words = data.Split(NotLetters.ToArray(),
  33. StringSplitOptions.RemoveEmptyEntries);
  34. foreach (var s in words)
  35. Console.WriteLine(s);
  36. Console.Read();
  37. }
  38. }
  39. }

Решение задачи: «Ошибка "Входная строка имела неверный формат"»

textual
Листинг программы
  1. StreamReader sr = new StreamReader("numbers.txt");
  2.             string text = sr.ReadToEnd();
  3.             sr.Close();
  4.             string[] mas1 = text.Split(new char[] { ' ', ',', '\n', '\r' }, StringSplitOptions.RemoveEmptyEntries);
  5.             int count = mas1.Count(); // Количество чисел в файле
  6.             int[] mas = new int[mas1.Count()];
  7.  
  8.             for (int t = 0; t < mas1.Count(); t++)
  9.             {
  10.                 mas[t] = Convert.ToInt32(mas1[t]);
  11.             }
  12.  
  13.             int max = mas[0];
  14.             for (int q = 1; q < mas.Count(); q++)
  15.             {
  16.                 if (mas[q] > max)
  17.                 {
  18.                     max = mas[q]; // В итоге в переменной max будет максимальное число
  19.                 }
  20.             }
  21.             Console.WriteLine("Maximum: " + max);
  22.  
  23.             int min = mas[0];
  24.             for (int w = 1; w < mas.Count(); w++)
  25.             {
  26.                 if (mas[w] < min)
  27.                 {
  28.                     min = mas[w]; // Тут минимальное
  29.                 }
  30.             }
  31.             Console.WriteLine("Minimum: " + min);
  32.  
  33.             Console.ReadLine();

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


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

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

9   голосов , оценка 4 из 5

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

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

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