axeefectushka

Untitled

Feb 10th, 2019
106
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C# 2.78 KB | None | 0 0
  1. using System;
  2. using System.Linq;
  3.  
  4. namespace работа_с_массивом
  5. {
  6.     class Program
  7.     {
  8.         static void Main(string[] args)
  9.         {  
  10.          Console.WriteLine(Kata.Convert(new char[] { '2', '4', 'x', '4' }, false));
  11.         }
  12.         public class Kata
  13.         {
  14.             public static int[] Convert(char[] array, bool key)
  15.             {
  16.                 if(array==null)
  17.                 {
  18.                     return null;
  19.                 }
  20.                 int n = array.Length;
  21.                 if (n==0)
  22.                 {
  23.                     return null;
  24.                 }
  25.                 int[] numbers = array.Select(c => (int)Char.GetNumericValue(c)).ToArray();
  26.                 for (int i = 0; i < n; i++)
  27.                 {
  28.                     Console.Write(array[i]);
  29.                 }
  30.                 Console.WriteLine("\n");
  31.                 for (int i = 0; i < n; i++)
  32.                 {
  33.                     Console.Write(numbers[i]);
  34.                 }
  35.                 Console.WriteLine("\n");
  36.  
  37.                 for (int i = 0; i < n; i++)//заменяем -1 на номер индекса ячейки, где -1 лежит
  38.                 {
  39.                     if (numbers[i] == -1)
  40.                     {
  41.                         numbers[i] = i;
  42.                     }
  43.                     Console.Write(numbers[i]);
  44.                 }
  45.  
  46.                 Console.WriteLine("\n");
  47.  
  48.                 if (key == true)//key=true
  49.                 {
  50.                     if (n % 2 == 0)
  51.                     {
  52.                         n = n / 2;
  53.                     }
  54.                     else { n = n / 2 + 1; };
  55.                     numbers = numbers.Where((number, i) => i % 2 == 0).ToArray();
  56.                     for (int i = 0; i < n; i++)
  57.                     {
  58.                         Console.Write(numbers[i]);
  59.                     }
  60.                     Array.Sort(numbers);
  61.                     Array.Reverse(numbers);
  62.                     Console.WriteLine("\n");
  63.                     for (int i = 0; i < n; i++)
  64.                     {
  65.                         Console.Write(numbers[i]);
  66.                     }
  67.                     Console.WriteLine("\n");
  68.                     Console.ReadKey();
  69.                     return numbers;
  70.                 }
  71.                 else //key=false
  72.                 {
  73.                     Console.WriteLine("\n");
  74.                     Array.Sort(numbers);
  75.                     Array.Reverse(numbers);
  76.                     for (int i = 0; i < n; i++)
  77.                     {
  78.                         Console.Write(numbers[i]);
  79.                     }
  80.                     Console.WriteLine("\n");
  81.                     Console.ReadKey();
  82.                     return numbers;
  83.                 }
  84.             }
  85.         }
  86.     }
  87. }
Add Comment
Please, Sign In to add comment