kvadrat4o

ArrManupulator

Jun 12th, 2017
98
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C# 2.69 KB | None | 0 0
  1. /*
  2.  * Created by SharpDevelop.
  3.  * User: DVasilev
  4.  * Date: 2017/06/09
  5.  * Time: 2:41 PM
  6.  *
  7.  * To change this template use Tools | Options | Coding | Edit Standard Headers.
  8.  */
  9. using System;
  10. using System.Linq;
  11. using System.Collections.Generic;
  12.    
  13.    
  14. namespace ArrManipulator
  15. {
  16.     class Program
  17.     {
  18.         public static void Main(string[] args)
  19.         {
  20.             //Console.WriteLine("Hello World!");
  21.            
  22.             List<double> inputNums = Console.ReadLine().Split(' ').Select(x=>double.Parse(x)).ToList();
  23.             ManipulateArray(inputNums);
  24.             Console.Write("Press any key to continue . . . ");
  25.             Console.ReadKey(true);
  26.         }
  27.         public static void ManipulateArray(List<double> inputNums)
  28.         {
  29.             string input = Console.ReadLine().ToLower();
  30.             int index = 0;
  31.             double element = 0;
  32.             double end = inputNums.Count;
  33.             while (input != "print")
  34.             {
  35.                 switch (input)
  36.                 {
  37.                     case"add":
  38.                         index = int.Parse(Console.ReadLine());
  39.                         element = double.Parse(Console.ReadLine());
  40.                         inputNums.Insert(index,element);
  41.                         break;
  42.                     case"addmany":
  43.                         index = int.Parse(Console.ReadLine());
  44.                         for (int i = 0; i < inputNums.Count; i++)
  45.                         {
  46.                             double insertEl = double.Parse(Console.ReadLine());
  47.                             inputNums.Insert(index,insertEl);
  48.                         }
  49.                         break;
  50.                     case"contains":
  51.                         element = double.Parse(Console.ReadLine());
  52.                         for (int i = 0; i < inputNums.Count; i++) {
  53.                             if (inputNums[i] == element)
  54.                             {
  55.                                 Console.WriteLine(i);
  56.                             }
  57.                             else
  58.                             {
  59.                                 Console.WriteLine(-1);
  60.                             }
  61.                         }
  62.                         break;
  63.                     case"remove":
  64.                         index = int.Parse(Console.ReadLine());
  65.                         inputNums.Remove(inputNums[index]);
  66.                         break;
  67.                     case"shift":
  68.                         index = int.Parse(Console.ReadLine());
  69.                         var result = inputNums.Skip(index).ToList();
  70.                         for (int i = 0; i < index; i++)
  71.                         {
  72.                             result.Add(inputNums[i]);
  73.                             inputNums = result;
  74.                         }
  75.                         break;
  76.                     case"sumpairs":
  77.                         List<double> sums = new List<double>();
  78.                             if (inputNums.Count % 2 != 0)
  79.                             {
  80.                                 end = inputNums.Count - 1;
  81.                             }
  82.                             if (inputNums.Count % 2 != 0)
  83.                             {
  84.                                 sums.Add(inputNums.Last());
  85.                             }
  86.                             inputNums = sums;
  87.                         for (int i = 0; i < end; i++)
  88.                         {
  89.                             sums.Add(inputNums[i]+inputNums[i+1]);
  90.                             i++;
  91.                         }
  92.                         break;
  93.                     case"print":
  94.                         Console.WriteLine("[" + string.Join(", ", inputNums) + "]");
  95.                         break;
  96.                     default:
  97.                         Console.WriteLine("Default");
  98.                         break;
  99.                 }  
  100.             }
  101.            
  102.         }
  103.     }
  104. }
Advertisement
Add Comment
Please, Sign In to add comment