Чтение чисел из файла пока не встретится ноль - C#

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

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

Как сделать так, чтобы из файла вводились (В консоль, каждое число с новой строки) числа, пока не будет введен 0. Если введен ноль, то чтение файла останавливается, и пишется сумма всех введенных из файла нечетных чисел. Я пытался это сделать, но вышло только это -
static void Number_2()
        {
            Console.Clear();
            try
            {
                StreamReader sr = new StreamReader("Text.txt");
                int n, count = 0;
 
            Metka:
 
                n = int.Parse(sr.ReadLine());
                Console.WriteLine(n);
 
                if (n % 2 == 1)
                {
                    count++;
                    goto Metka;
                }
                if (n % 2 == 0)
                {
                    goto Metka;
                }
                if (n == 0)
                {
                    sr.Close();
                    Console.WriteLine(count);
                }
            }
            catch
            {
                Console.WriteLine("\nОшибка чтения информации...");
            }

            Console.WriteLine("\nНажмите Enter, чтобы войти в меню...");
            Console.ReadKey();
            Menu();
 
        }
Распишите мои ошибки пожалуйста...

Решение задачи: «Чтение чисел из файла пока не встретится ноль»

textual
Листинг программы
Console.WriteLine(File.ReadLines(@"E:\num.txt").Select(int.Parse)
     .TakeWhile(n => n != 0).Sum(n =>
     {
         Console.WriteLine(n);
         return n % 2 != 0 ? n : 0;
     }));

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


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

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

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