Предмет: Информатика, автор: Tikiti00ki

Дан массив вещественных чисел Z(n) при n<20. Найти среди его элементов наибольшее отрицательное число. Поменять местами это число с наибольшим числом данного массива.
Нужен код на С# или хотя бы С++.

Ответы

Автор ответа: VivekGarg980
1

Код на с#

using System;

class Program

{

static void Main()

{

double[] Z = new double[20]; // создание массива вещественных чисел

double maxNegative = double.MinValue; // переменная для хранения наибольшего отрицательного числа

double max = double.MinValue; // переменная для хранения наибольшего числа

// заполнение массива Z случайными значениями

Random rand = new Random();

for (int i = 0; i < Z.Length; i++) {

   Z[i] = rand.NextDouble() * 100 - 50; // числа в диапазоне от -50 до 50

}

// поиск наибольшего отрицательного числа и наибольшего числа

for (int i = 0; i < Z.Length; i++) {

   if (Z[i] < 0 && Z[i] > maxNegative) {

       maxNegative = Z[i];

   }

   if (Z[i] > max) {

       max = Z[i];

   }

}

// проверка, найдено ли отрицательное число

if (maxNegative == double.MinValue) {

   Console.WriteLine("Отрицательных чисел в массиве нет.");

} else {

   // замена наибольшего числа на наибольшее отрицательное

   for (int i = 0; i < Z.Length; i++) {

       if (Z[i] == maxNegative) {

           Z[i] = max;

       } else if (Z[i] == max) {

           Z[i] = maxNegative;

       }

   }

   Console.WriteLine($"Наибольшее отрицательное число: {maxNegative}");

   Console.WriteLine($"Новый массив: [{string.Join(", ", Z)}]");

}

}

}

Приложения:
Похожие вопросы
Предмет: Химия, автор: ltkallu3