Составить программу нахождения максимального среди отрицательных (минимального среди положительных элементо - C#
Формулировка задачи:
Составить программу нахождения максимального среди отрицательных (минимального среди положительных элементов массива)
Решение задачи: «Составить программу нахождения максимального среди отрицательных (минимального среди положительных элементо»
textual
Листинг программы
static void Main(string[] args)
{
//некоторые переменные которые нам понадобяться
int masmin = 0;//будет содержать в себе самое минимальное значение массива, переменная для наглядности
int masmax = 0;//будет содержать в себе самое максимальное значение массива, переменная для наглядности
int y = 0;//будет содержать в себе Минимальное значение среди положительных элементов массива
int z = 0;//будет содержать в себе Максимального значение среди отрицательных элементов массива
int count1 = 0;//счетчик измеряющий размерность положительного массива
int count2 = 0;//счетчик измеряющий размерность отрицательного массива
int countplus = 0;//счетчик положительного массива
int countminus = 0;//счетчик отрицательного массива
//далее запрашиваем у пользователя какой какой длинны массив(сколько элементов)
Console.ForegroundColor = ConsoleColor.Cyan;// приблуд меняющий цвет вывода на консоль для наглядности
Console.Write("Введите количество элементов в массиве:");// запрашиваем число
Console.ForegroundColor = ConsoleColor.Green;// приблуд меняющий цвет ввода на консоль для наглядности
int maslenght = int.Parse(Console.ReadLine());//присваиваем число полученное от пользователя в переменную
Console.WriteLine("");//просто пропускаем сторку для наглядности
int[] mas = new int[maslenght];//объявляем массив mas
Random r = new Random();//объявляем переменную класса рандом
for (int i = 0; i < maslenght; i++)//с помощью этого цикла получаем доступ к каждому элементу в массиве
{
mas[i] = r.Next(-100, 100);//заполняем каждый элемент массива случайными числами от -100 до 100
Console.ForegroundColor = ConsoleColor.Magenta;// приблуд меняющий цвет вывода на консоль для наглядности
Console.Write("{0,4}", mas[i]);//выводим собственно весь массив на экран
//цикл определяющий сколько в массиве положительных элементов
if (mas[i] > 0)
{
count1++;//при переборе всех элементов массива, если элемент массива больше ноля то счетчик увеличевается на 1
}
//цикл определяющий сколько в массиве отрицательных элементов
if (mas[i] < 0)
{
count2++;//при переборе всех элементов массива, если элемент массива меньше ноля то счетчик увеличевается на 1
}
}
Console.WriteLine("");//просто пропускаем сторку для наглядности
Console.ForegroundColor = ConsoleColor.Yellow;// приблуд меняющий цвет звездочек выводимых на консоль для наглядности
Console.WriteLine(new string('*', 50));//этот приблуд рисует полосу из 50 зведочек для наглядности
Console.WriteLine("");//просто пропускаем сторку для наглядности
/*Дальше мысль такая разделяем наш массив на два массива один из положительных элементов
один из отрицательных*/
Console.ForegroundColor = ConsoleColor.Cyan;// приблуд меняющий цвет звездочек выводимых на консоль для наглядности
Console.Write("Массив из положительных значений :");//выводим на консоль текст для наглядности
int[] plus = new int[count1];//объявляем массив положительных элементов
/* с помощью этого цикла мы переберем все элементы нашего главного массива и
только положительные из них вставим в массив PLUS*/
for (int j = 0; j < maslenght; j++)
{
if (mas[j] > 0)// дословно : Если элемент главного массива больше ноля
{//то
plus[countplus] = mas[j];//добавляем этот элемент в массив PLUS с порядковым номером равным countplus тобишь получили нулевой элемент
Console.ForegroundColor = ConsoleColor.Green;// приблуд меняющий цвет вывода на консоль для наглядности
Console.Write("{0,4}", plus[countplus]);//выводим массив массив положительных элементов на экран для наглядности
countplus++;//счетчик порядковых элементов массива PLUS с каждым проходом увеличивается на 1
}
}
Console.WriteLine("");//просто пропускаем сторку для наглядности
Console.WriteLine("");//просто пропускаем сторку для наглядности
Console.ForegroundColor = ConsoleColor.Cyan;// приблуд меняющий цвет вывода на консоль для наглядности
Console.Write("Массив из отрицательных значений :");//выводим на консоль текст для наглядности
int[] minus = new int[count2];//объявляем массив отрицательных элементов
/* с помощью этого цикла мы переберем все элементы нашего главного массива и
только отрицательные из них вставим в массив MINUS*/
for (int j = 0; j < maslenght; j++)
{
if (mas[j] < 0)// дословно : Если элемент главного массива меньше ноля
{//то
minus[countminus] = mas[j];//добавляем этот элемент в массив MINUS с порядковым номером равным countminus тобишь получили нулевой элемент
Console.ForegroundColor = ConsoleColor.Green;// приблуд меняющий цвет вывода на консоль для наглядности
Console.Write("{0,4}", minus[countminus]);//выводим массив массив отрицательных элементов на экран для наглядности
countminus++;//счетчик порядковых элементов массива MINUS с каждым проходом увеличивается на 1
}
}
Console.WriteLine("");//просто пропускаем сторку для наглядности
Console.ForegroundColor = ConsoleColor.Yellow;// приблуд меняющий цвет звездочек выводимых на консоль для наглядности
Console.WriteLine(new string('*', 50));//этот приблуд рисует полосу из 50 зведочек для наглядности
Console.WriteLine("");//просто пропускаем сторку для наглядности
masmin = mas.Min();//узнаем самый минимальный элемент массива для наглядности
masmax = mas.Max();//узнаем самый максимальный элемент массива для наглядности
//это цик изпользуется на тот случай если генератор сгенерирует все элементы отрицательными, чтобы небыло ошибки
if (countplus > 0)
y = plus.Min();
//это цик изпользуется на тот случай если генератор сгенерирует все элементы положительными, чтобы небыло ошибки
if (countminus > 0)
z = minus.Max();
Console.WriteLine("");//просто пропускаем сторку для наглядности
Console.ForegroundColor = ConsoleColor.Cyan;// приблуд меняющий цвет вывода на консоль для наглядности
Console.WriteLine("Минимальное значение массива: {0}", masmin);//для наглядности
Console.WriteLine("Максимальное значение массива: {0}", masmax);//для наглядности
Console.WriteLine("Минимальное значение положительного массива: {0}", y);//А ВОТ ЭТО СОБСТВЕННО ГОВОРЯ КОНЕЧНОЕ РЕШЕНИЕ ПОСТАВЛЕННОЙ ЗАДАЧИ
Console.WriteLine("Максимальное значение отрицательного массива: {0}", z);//А ВОТ ЭТО СОБСТВЕННО ГОВОРЯ КОНЕЧНОЕ РЕШЕНИЕ ПОСТАВЛЕННОЙ ЗАДАЧИ
Console.ReadLine();//ЗАДЕРЖКА КРАНА ТАК СКАЗАТЬ
}