Ошибка в консоли - C#

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

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

Конечный результат программы вывод массива B с перестановкой max и min значения массива.Подскажите пожалуйста где я ошибся.Обмен происходит с выводом только 1го значения.Max или Min.
namespace Console_2
{
    class Program
    {
        public static int[] A;
        public static int[] B;
        public static string r;
        public static int e;
 
        static void Main(string[] args)
        {
 
            A = new int[4];
            B = new int[4];
 
            int t;
            string s;
 
            for (int i = 0; i < A.Length; ++i)
            {
                s = Console.ReadLine();
                t = Int32.Parse(s);
                A[i] = t;
            }
            Console.Write("массив А:");
            for (int i = 0; i < A.Length; ++i)
            {
                Console.Write(A.Min() + " ");
            }
            Console.Write("массив В:");
            for (int i = 0; i < B.Length; ++i)
            {
                B[i] = A[i];
                Console.Write(B[i] + " ");
            }
 
            int index_min = Array.FindLastIndex(B, m => m == B.Min());
            int index_max = Array.FindLastIndex(B, m => m == B.Max());
            Console.WriteLine(" ЭТО Индекс min :" + index_min);
            for (int i = 0; i < B.Length; ++i)
            {
                if (i == index_min )      // Ошибка где-то здесь????
                {               
                    B[index_min] = B[index_max];                 
                }
                if (i == index_max)
                {
                    B[index_max] = B[index_min];
                }
    
               Console.WriteLine(B[i]);
            
            }
            Console.ReadKey();
        }
    }
}
Был и другой код.Результат тот-же.
 int index_min = Array.FindLastIndex(B, m => m == B.Min());
            int index_max = Array.FindLastIndex(B, m => m == B.Max());
            Console.WriteLine(" ЭТО :" + index_min);
            for (int i = 0; i < B.Length; ++i)
            {
                if (i == index_min || i == index_max)      // Ошибка где-то здесь????
                {               
                    B[index_min] = B[index_max];
                    B[index_max] = B[index_min];
                }
              
               Console.WriteLine(B[i]);           
            }
            Console.ReadKey();

Решение задачи: «Ошибка в консоли»

textual
Листинг программы
int temp = B[index_min];
B[index_min] = B[index_max];
B[index_max] = temp;
for (int i = 0; i < B.Length; ++i)
{
    Console.WriteLine(B[i]);
}

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


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

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

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