Найти максимум среди компонент, расположенных на четных позициях файла - C#

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

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

Здравствуйте, помогите пожалуйста с задачей в С#. Так как я в этом совсем не разбираюсь, а нужно очень срочно((( Задан числовой файл F. Найти максимум среди компонент, расположенных на четных позициях файла и минимум среди компонент на нечѐтных позициях. Все нулевые компоненты заменить значением максимума, а значение минимума дописать в конце файла пять раз.

Решение задачи: «Найти максимум среди компонент, расположенных на четных позициях файла»

textual
Листинг программы
static void Main(string[] args)
{
    int count = 10;
 
    // заполняем файл рандомными числами
    using (var bw = new BinaryWriter(File.OpenWrite("F.dat")))
    {
        var rand = new Random();
 
        for (int i = 0; i < count; i++)
        {
            bw.Write(rand.Next(0, 10));
        }
    }
 
 
    var arr = new int[count];
    // считываем файл в числовой массив
    using (var br = new BinaryReader(File.OpenRead("F.dat")))
    {
        for (int i = 0; i < count; i++)
        {
            arr[i] = br.ReadInt32();
        }
    }
 
    Console.Write("Исходный файл: ");
    foreach (var item in arr)
    {
        Console.Write(item + " ");
    }
 
    Console.WriteLine();
 
    int max = arr[0], min = arr[0];
    // определяем максимум и минимум
    for (int i = 0; i < arr.Length; i++)
    {
        if (i % 2 == 0)
        {
            if (min > arr[i]) min = arr[i];
        }
        else
        {
            if (max < arr[i]) max = arr[i];
        }
    }
 
    //нулевые на максимум меняем
    for (int i = 0; i < arr.Length; i++)
    {
        if (arr[i] == 0) arr[i] = max;
    }
 
    //записываем новый данные в файл
    using (var bw = new BinaryWriter(File.OpenWrite("F.dat")))
    {
        var rand = new Random();
 
        for (int i = 0; i < arr.Length; i++)
        {
            bw.Write(arr[i]);
        }
 
        // дописываем 5 раз минимум
        for (int i = 0; i < 5; i++)
        {
            bw.Write(min);
        }
    }
   
    //считываем новый файл
    Console.Write("Отредактированный файл: ");
    using (var br = new BinaryReader(File.OpenRead("F.dat")))
    {
        for (int i = 0; i < count+5; i++)
        {
            Console.Write(br.ReadInt32() + " "); 
        }
    }
 
    Console.ReadLine();
}

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


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

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

7   голосов , оценка 4.571 из 5
Похожие ответы