Работа с двоичными файлами - C#
Формулировка задачи:
Создать файл и записать в него вещественные числа из диапазона от a до b с шагом h.
Дана последовательность из n вещественных чисел. Записать все эти числа в файл. Вывести на экран все компоненты файла с четными номерами, меньшие заданного числа.
Выводит слишком много лишнего мне кажется, должен выводить только до указанного значения, в чём ошибка?
using System; using System.Text; using System.IO; namespace MyProgram { class Program { static void Main() { Console.Write("a= "); double a = double.Parse(Console.ReadLine()); Console.Write("b= "); double b = double.Parse(Console.ReadLine()); Console.Write("h= "); double h = double.Parse(Console.ReadLine()); Console.Write("заданное число= "); double q = double.Parse(Console.ReadLine()); //Записываем в файл text.txt вещественные числа из заданного диапазона FileStream f = new FileStream("text.txt", FileMode.Open); BinaryWriter fOut = new BinaryWriter(f); for (double i = a; i <= b; i += h) { fOut.Write(i); ; } fOut.Close(); //Объекты f и fIn связаны с одним и тем же файлом f = new FileStream("text.txt", FileMode.Open); BinaryReader fIn = new BinaryReader(f); long m = f.Length; //определяем количество байт в потоке //Читаем данные из файла text.txt начиная с элемента с номером 1, т.е с 8 байта, //перемещая внутренний указатель на 16 байт, т.е. на два вещественных числа for (long i = 8; i < m; ) { if (fIn.ReadDouble() < q) { f.Seek(2 * i, SeekOrigin.Begin); a = fIn.ReadDouble(); Console.Write("{0:f2} ", a); i += 8; } } fIn.Close(); f.Close(); Console.ReadKey(); } } }
Решение задачи: «Работа с двоичными файлами»
textual
Листинг программы
FileStream f = new FileStream(@"e:\text.txt", FileMode.Create);
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д