TimmyChannel

Prog Lab 4

Jan 24th, 2022 (edited)
319
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C# 2.40 KB | None | 0 0
  1. using System;
  2.  
  3. namespace Lab4
  4. {
  5.     class Program
  6.     {
  7.         static void Main()
  8.         {
  9.             Console.WriteLine("Введите размер массива:");
  10.             int n = Convert.ToInt32(Console.ReadLine());
  11.             double[] arr = new double[n];
  12.             arr = ArrGen(n);
  13.             Print(arr);
  14.             MinAbs(arr);
  15.             Compress(arr);
  16.         }
  17.         static double[] ArrGen(int n)
  18.         {
  19.             Random rand = new Random();
  20.             double[] arr = new double[n];
  21.             for (int j = 0; j < arr.Length; j++)
  22.                 arr[j] = rand.NextDouble() + rand.Next(-9, 9);            
  23.             return arr;
  24.         }
  25.         static void Print(double[] arr)
  26.         {
  27.             Console.WriteLine("Массив");
  28.             for (int j = 0; j < arr.Length; j++)            
  29.                 Console.Write("{0:F4}  ",arr[j]);
  30.             Console.WriteLine();
  31.         }
  32.         static void MinAbs(double[] arr)
  33.         {
  34.             int absnum = 0;
  35.             double abs = 0.0;
  36.             double sum = 0.0;
  37.             for (int i = 0; i < arr.Length; i++)
  38.             {
  39.                 if (abs < Math.Abs(arr[i]))
  40.                 {
  41.                     abs = Math.Abs(arr[i]);
  42.                     absnum = i;
  43.                 }
  44.                 if (arr[i] < 0)
  45.                     for (int j = i; j < arr.Length; j++)
  46.                         sum += arr[j];
  47.             }
  48.             Console.WriteLine($"Номер элемента минимального по модулю: {absnum} \n Сумма элементов после отрицательного элемента: {sum}");
  49.         }
  50.         static void Compress(double[] arr)
  51.         {
  52.             double[] arr2 = arr;
  53.             Console.WriteLine("Введите нижнюю границу интервала");
  54.             double a = Convert.ToDouble(Console.ReadLine());
  55.             Console.WriteLine("Введите верхнюю границу интервала");
  56.             double b = Convert.ToDouble(Console.ReadLine());
  57.             for (int j = 0; j < arr.Length; j++)
  58.                 if ((arr[j] >= a) & (arr[j] <= b))
  59.                     for (int i = j; i < arr.Length; i++)
  60.                         if (i == arr.Length - 1) arr[i] = 0.0;
  61.                         else
  62.                             arr2[i] = arr[i + 1];
  63.             Print(arr2);
  64.         }
  65.     }
  66. }
  67.  
Add Comment
Please, Sign In to add comment