Advertisement
Guest User

Untitled

a guest
Mar 29th, 2016
108
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C# 2.34 KB | None | 0 0
  1. [STAThread]
  2.         public static void Main()
  3.         {
  4.             Console.Write("Введите элементы массива: ");
  5.             int[] array = ReadArray(true);
  6.             if (array == null)
  7.             {
  8.                 Console.WriteLine("\nНе удалось считать массив.\nНажмите любую клавишу.");
  9.                 Console.ReadKey(true);
  10.                 return;
  11.             }
  12.             ReverseArray(ref array);
  13.             Console.Write("Обратный массив: ");
  14.             foreach (int i in array)
  15.             {
  16.                 Console.Write("{0} ", i);
  17.             }
  18.             Console.WriteLine("\nСумма значений после минимального элемента: {0}\nНажмите любую клавишу.", SummarizeAfterMin(array));
  19.             Console.ReadKey(true);
  20.         }
  21.  
  22.         private static int[] ReadArray(bool fromFile = false)
  23.         {
  24.             string array;
  25.             if (fromFile)
  26.             {
  27.                 OpenFileDialog fileDialog = new OpenFileDialog();
  28.                 DialogResult result=fileDialog.ShowDialog();
  29.                 if (result == DialogResult.Yes || result == DialogResult.OK)
  30.                 {
  31.                     if (fileDialog.CheckFileExists && !string.IsNullOrEmpty(fileDialog.SafeFileName))
  32.                     {
  33.                         array = File.ReadAllLines(fileDialog.FileName).FirstOrDefault();
  34.                         if (string.IsNullOrEmpty(array))
  35.                             return null;
  36.                     }
  37.                     else
  38.                         return null;
  39.                 }
  40.                 else
  41.                     return null;
  42.             }
  43.             else
  44.             {
  45.                 array = Console.ReadLine();
  46.             }
  47.             return array?.Split(new[] {',', ' ', '\t'}, StringSplitOptions.RemoveEmptyEntries).Select(int.Parse).ToArray();
  48.         }
  49.  
  50.         private static void ReverseArray(ref int[] array)
  51.         {
  52.             array = array.Reverse().ToArray();
  53.         }
  54.  
  55.         private static int SummarizeAfterMin(int[] array)
  56.         {
  57.             int index = Array.IndexOf(array, array.Min());
  58.             int sum = 0;
  59.             for (; index < array.Length; index++)
  60.                 sum += array[index];
  61.             return sum;
  62.         }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement