Advertisement
NikaBang

Локальные максимумы

Oct 5th, 2024
105
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C# 1.72 KB | None | 0 0
  1. using System;
  2.  
  3. internal class Program
  4. {
  5.     /*Дан одномерный массив целых чисел из 30 элементов.
  6.     Найдите все локальные максимумы и вывести их. (Элемент является локальным максимумом, если он больше своих соседей)
  7.     Крайний элемент является локальным максимумом, если он больше своего соседа.
  8.     Программа должна работать с массивом любого размера.
  9.     Массив всех локальных максимумов не нужен.*/
  10.  
  11.     static void Main(string[] args)
  12.     {
  13.         int[] numbers = new int[30];
  14.         int lastIndexNumbers = numbers.Length - 1;
  15.         int minNumbers = 0;
  16.         int maxNumbers = 101;
  17.  
  18.         Random random = new Random();
  19.  
  20.         for (int i = 0; i < numbers.Length; i++)
  21.         {
  22.             numbers[i] = random.Next(minNumbers, maxNumbers);
  23.  
  24.             Console.Write(numbers[i] + " ");
  25.         }
  26.  
  27.         Console.Write("\nВсе локальные максимумы данного массива: ");
  28.  
  29.         if (numbers[0] > numbers[1])
  30.         {
  31.             Console.Write(numbers[0] + " ");
  32.         }
  33.  
  34.         for (int i = 1; i < numbers.Length - 1; i++)
  35.         {
  36.             if (numbers[i - 1] < numbers[i] && numbers[i] > numbers[i + 1])
  37.             {
  38.                 Console.Write(numbers[i] + " ");
  39.             }
  40.         }
  41.  
  42.         if (numbers[lastIndexNumbers] > numbers[lastIndexNumbers - 1])
  43.         {
  44.             Console.WriteLine(numbers[lastIndexNumbers]);
  45.         }
  46.  
  47.         Console.ReadKey();
  48.     }
  49. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement