Язык программирования C# ⸺ работа с текстовым файлом, поиск чисел с ненулевой дробной частью и вычисление их суммы
Привет, друзья! Сегодня я хочу рассказать вам о том, как работать с текстовым файлом в C# и выполнить несколько задач⁚ найти количество чисел с ненулевой дробной частью и вычислить их сумму. Я сам пробовал это на практике и хочу поделится с вами моим личным опытом.Для начала, нам понадобится текстовый файл, каждая строка которого содержит целое или вещественное число, дополненное слева и справа несколькими пробелами. Давайте назовем его ″numbers.txt″. Чтобы начать работу с файлом, нам нужно подключить пространство имен ″System.IO″⁚
- using System.IO;
- StreamReader file new StreamReader(″numbers.txt″);
- string line;
- int count 0;
- double sum 0;
- while ((line file.ReadLine) ! null)
- {
- nnbsp;nnbsp;nnbsp;nnbsp;string[] numbers line.Split(‘ ‘);
- nnbsp;nnbsp;nnbsp;nnbsp;foreach (string numberStr in numbers)
- nnbsp;nnbsp;nnbsp;nnbsp;{
- nnbsp;nnbsp;nnbsp;nnbsp;nnbsp;nnbsp;nnbsp;nnbsp;double number;
- nnbsp;nnbsp;nnbsp;nnbsp;nnbsp;nnbsp;nnbsp;nnbsp;if (double.TryParse(numberStr.Trim, out number))
- nnbsp;nnbsp;nnbsp;nnbsp;nnbsp;nnbsp;nnbsp;nnbsp;{
- nnbsp;nnbsp;nnbsp;nnbsp;nnbsp;nnbsp;nnbsp;nnbsp;nnbsp;nnbsp;nnbsp;nnbsp;if (number ! Math.Floor(number))
- nnbsp;nnbsp;nnbsp;nnbsp;nnbsp;nnbsp;nnbsp;nnbsp;nnbsp;nnbsp;nnbsp;nnbsp;{
- nnbsp;nnbsp;nnbsp;nnbsp;nnbsp;nnbsp;nnbsp;nnbsp;nnbsp;nnbsp;nnbsp;nnbsp;nnbsp;nnbsp;nnbsp;nnbsp;count ;
- nnbsp;nnbsp;nnbsp;nnbsp;nnbsp;nnbsp;nnbsp;nnbsp;nnbsp;nnbsp;nnbsp;nnbsp;nnbsp;nnbsp;nnbsp;nnbsp;sum number;
- nnbsp;nnbsp;nnbsp;nnbsp;nnbsp;nnbsp;nnbsp;nnbsp;nnbsp;nnbsp;nnbsp;nnbsp;}
- nnbsp;nnbsp;nnbsp;nnbsp;nnbsp;nnbsp;nnbsp;nnbsp;}
- nnbsp;nnbsp;nnbsp;nnbsp;}
- }
- Console.WriteLine(″Количество чисел с ненулевой дробной частью⁚ ″ count);
- Console.WriteLine(″Сумма чисел с ненулевой дробной частью⁚ ″ sum);
- file.Close;
using System.IO;
Затем мы можем открыть файл с помощью класса ″StreamReader″⁚
StreamReader file new StreamReader(″numbers.txt″);
Теперь, чтобы найти количество чисел с ненулевой дробной частью и их сумму, нам нужно прочитать каждую строку файла и разобрать ее на отдельные числа. Для этого мы можем использовать цикл ″while″ и метод ″Split″⁚
string line;
int count 0;
double sum 0;
while ((line file.ReadLine) ! null)
{
nnbsp;nnbsp;nnbsp;nnbsp;string[] numbers line.Split(‘ ‘);
nnbsp;nnbsp;nnbsp;nnbsp;foreach (string numberStr in numbers)
nnbsp;nnbsp;nnbsp;nnbsp;{
nnbsp;nnbsp;nnbsp;nnbsp;nnbsp;nnbsp;nnbsp;nnbsp;double number;
nnbsp;nnbsp;nnbsp;nnbsp;nnbsp;nnbsp;nnbsp;nnbsp;if (double.TryParse(numberStr.Trim, out number))
nnbsp;nnbsp;nnbsp;nnbsp;nnbsp;nnbsp;nnbsp;nnbsp;{
nnbsp;nnbsp;nnbsp;nnbsp;nnbsp;nnbsp;nnbsp;nnbsp;nnbsp;nnbsp;nnbsp;nnbsp;if (number ! Math.Floor(number))
nnbsp;nnbsp;nnbsp;nnbsp;nnbsp;nnbsp;nnbsp;nnbsp;nnbsp;nnbsp;nnbsp;nnbsp;{
nnbsp;nnbsp;nnbsp;nnbsp;nnbsp;nnbsp;nnbsp;nnbsp;nnbsp;nnbsp;nnbsp;nnbsp;nnbsp;nnbsp;nnbsp;nnbsp;count ;
nnbsp;nnbsp;nnbsp;nnbsp;nnbsp;nnbsp;nnbsp;nnbsp;nnbsp;nnbsp;nnbsp;nnbsp;nnbsp;nnbsp;nnbsp;nnbsp;sum number;
nnbsp;nnbsp;nnbsp;nnbsp;nnbsp;nnbsp;nnbsp;nnbsp;nnbsp;nnbsp;nnbsp;nnbsp;}
nnbsp;nnbsp;nnbsp;nnbsp;nnbsp;nnbsp;nnbsp;nnbsp;}
nnbsp;nnbsp;nnbsp;nnbsp;}
}
В этом коде первым делом мы разделяем каждую строку на отдельные числа, используя метод ″Split″, и сохраняем их в массиве ″numbers″. Затем мы проходимся по каждому числу, проверяем, является ли оно вещественным числом с ненулевой дробной частью, и увеличиваем счетчик и сумму соответственно.Наконец, после выполнения цикла, мы можем вывести результат⁚
Console.WriteLine(″Количество чисел с ненулевой дробной частью⁚ ″ count);
Console.WriteLine(″Сумма чисел с ненулевой дробной частью⁚ ″ sum);
Не забудьте закрыть файл после окончания работы⁚
file.Close;
Вот и все! Теперь вы знаете, как работать с текстовым файлом в C#, находить числа с ненулевой дробной частью и вычислять их сумму. Будьте уверены, что ваш файл ″numbers.txt″ существует и находится в одной папке с вашим проектом.
Я надеюсь, что эта статья была полезной для вас и что вы смогли извлечь что-то полезное из моего опыта. Удачи в программировании!