Найти и вывести размер самой большой строки в текстовом файле - C#
Формулировка задачи:
Задание такое: найти и вывести размер самой большой строки в текстовом файле.
Вот что в есть в текстовом файле:
red
blue
yellow
green
x
размер самой большой строки здесь равен 6, а компилятор выводит 8.
Вот код:
Листинг программы
- class MainClass
- {
- public static void Main (string[] args)
- {
- FileStream file1 = new FileStream("C:\\Users\\1\\Desktop\\Прог_справки\\numbers.txt", FileMode.Open);
- StreamReader reader = new StreamReader(file1);
- Console.WriteLine (BiggestLine(reader.ReadToEnd ()));
- }
- public static string BiggestLine(string letter)
- {
- string[] lines = letter.Split ('\n');//теперь элементы массива это отделные строки
- char[] gh;
- int[] num = new int[lines.Length];
- int y = 0;
- for (int i = 0; i < lines.Length; i++)
- {
- gh = lines[i].ToCharArray ();//переводим строки поочереди в массив символов строки
- while ( y < i){
- num [y] = gh.Length;//количество символов в строке становится элементом массива
- y++;
- }
- }//теперь количество символов в каждой строке являются элементами массива num[]
- int max = num [0];
- for (int u = 1; u < num.Length; u++) {
- if (num [u] > max)
- {
- max = num [u] + 1;//находим размер самой большой строки (без "+ 1" выводилось 5, но правильный ответ 6 поэтому добавил)
- }
- }
- string size = Convert.ToString (max);
- return size;
- }
- }
Решение задачи: «Найти и вывести размер самой большой строки в текстовом файле»
textual
Листинг программы
- public string BiggestLineOld(string letter)
- {
- string[] lines = letter.Split('\n');
- char[] gh;
- int[] num = new int[lines.Length];
- for (int i = 1; i < lines.Length; i++)
- {
- gh = lines[i].ToCharArray();
- num[i] = gh.Length;
- }
- int max = num[0];
- for (int i = 1; i < num.Length; i++)
- {
- if (num[i] > max)
- {
- max = num[i];
- }
- }
- return max.ToString();
- }
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д