Advertisement
OldBeliver

Array_03_02

Mar 16th, 2021
71
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C# 3.88 KB | None | 0 0
  1. using System;
  2. using System.Collections.Generic;
  3. using System.Linq;
  4. using System.Text;
  5. using System.Threading.Tasks;
  6.  
  7. namespace CSharpArray_03
  8. {
  9.     class Program
  10.     {
  11.         static void Main(string[] args)
  12.         {            
  13.             int arraySize = 30;
  14.             int[] array = new int[arraySize];
  15.             Random rand = new Random();
  16.             int lowerLimit = 1;
  17.             int upperLimit = 10;
  18.             int leftSide, middle, rightSide;
  19.             bool doItAgain = true;
  20.  
  21.             while (doItAgain)
  22.             {
  23.                 Console.WriteLine($"Сгенерирован массив в {arraySize} элементов, в диапазоне от {lowerLimit} до {upperLimit - 1}.");
  24.                 for (int i = 0; i < array.Length; i++)
  25.                 {
  26.                     array[i] = rand.Next(lowerLimit, upperLimit);
  27.                     Console.Write($" {array[i]} ");
  28.                 }
  29.                 Console.WriteLine($"\nЛокальные максимумы:");
  30.                 for (int i = 1; i < array.Length - 1; i++)
  31.                 {
  32.                     leftSide = array[i - 1];
  33.                     middle = array[i];
  34.                     rightSide = array[i + 1];
  35.  
  36.                     if (i - 1 == 0 && leftSide > middle)
  37.                     {
  38.                         Console.Write($" {leftSide}");
  39.                     }
  40.                     else if (i + 1 == array.Length - 1 && rightSide > middle)
  41.                     {
  42.                         Console.Write($" {rightSide}");
  43.                     }
  44.                     else if (leftSide < middle && middle > rightSide)
  45.                     {
  46.                         Console.Write($" {middle}");
  47.                     }
  48.                 }
  49.                 Console.WriteLine("\n\nПодсветка локального максимума");
  50.                 ConsoleColor color;
  51.                 for (int i = 1; i < array.Length - 1; i++)
  52.                 {
  53.                     leftSide = array[i - 1];
  54.                     middle = array[i];
  55.                     rightSide = array[i + 1];
  56.  
  57.                     if (i - 1 == 0 && leftSide > middle)
  58.                     {
  59.                         color = Console.BackgroundColor;
  60.                         Console.BackgroundColor = ConsoleColor.Green;
  61.                         Console.Write($" {leftSide} ");
  62.                         Console.BackgroundColor = color;
  63.                     }
  64.                     else if(i - 1 == 0 && leftSide <= middle)
  65.                     {
  66.                         Console.Write($" {leftSide} ");
  67.                     }
  68.  
  69.                     if (leftSide < middle && middle > rightSide)
  70.                     {
  71.                         color = Console.BackgroundColor;
  72.                         Console.BackgroundColor = ConsoleColor.Green;
  73.                         Console.Write($" {middle} ");
  74.                         Console.BackgroundColor = color;
  75.                     }
  76.                     else if (leftSide >= middle || middle <= rightSide)
  77.                     {
  78.                         Console.Write($" {middle} ");
  79.                     }
  80.  
  81.                     if (i + 1 == array.Length - 1 && rightSide > middle)
  82.                     {
  83.                         color = Console.BackgroundColor;
  84.                         Console.BackgroundColor = ConsoleColor.Green;
  85.                         Console.Write($" {rightSide} ");
  86.                         Console.BackgroundColor = color;
  87.                     }
  88.                     else if (i + 1 == array.Length - 1 && rightSide <= middle)
  89.                     {
  90.                         Console.Write($" {rightSide} ");
  91.                     }
  92.                 }
  93.                 Console.WriteLine("\n\nнажмите Enter для генерации нового массива");
  94.                 Console.ReadKey();
  95.                 Console.Clear();
  96.             }
  97.         }
  98.     }
  99. }
  100.  
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement