Advertisement
mihael03

List Manipulation

Feb 25th, 2021
629
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C# 4.25 KB | None | 0 0
  1. using System;
  2. using System.Collections.Generic;
  3. using System.Linq;
  4.  
  5. namespace List_Manipulation_Advanced
  6. {
  7.     class Program
  8.     {
  9.         static void Main(string[] args)
  10.         {
  11.             List<int> input = Console.ReadLine()
  12.                 .Split(new[] { ' ' }, StringSplitOptions.RemoveEmptyEntries)
  13.                 .Select(int.Parse)
  14.                 .ToList();
  15.  
  16.             string command = "";
  17.  
  18.             int length = input.Count;
  19.  
  20.             while (command != "end")
  21.             {
  22.                 command = Console.ReadLine();
  23.  
  24.                 if (command == "end")
  25.                 {
  26.                     break;
  27.                 }
  28.  
  29.                 string[] tokens = command.Split();
  30.  
  31.                 switch (tokens[0])
  32.                 {
  33.                     case "Add":
  34.                         input.Add(int.Parse(tokens[1]));
  35.                         Console.WriteLine(string.Join(" ", input));
  36.                         break;
  37.  
  38.                     case "Remove":
  39.                         input.Remove(int.Parse(tokens[1]));
  40.                         Console.WriteLine(string.Join(" ", input));
  41.                         break;
  42.  
  43.                     case "RemoveAt":
  44.                         input.RemoveAt(int.Parse(tokens[1]));
  45.                         Console.WriteLine(string.Join(" ", input));
  46.                         break;
  47.  
  48.                     case "Insert":
  49.                         int numberToInsert = int.Parse(tokens[1]);
  50.                         int indexToInsert = int.Parse(tokens[2]);
  51.                         input.Insert(indexToInsert, numberToInsert);
  52.                         Console.WriteLine(string.Join(" ", input));
  53.                         break;
  54.  
  55.                     case "Contains":
  56.                         int numberToChek = int.Parse(tokens[1]);
  57.                         bool isContains = input.Contains(numberToChek);
  58.                         if (isContains)
  59.                         {
  60.                             Console.WriteLine("Yes");
  61.                         }
  62.                         else
  63.                         {
  64.                             Console.WriteLine("No such number");
  65.                         }
  66.                         break;
  67.  
  68.                     case "PrintEven":
  69.                         for (int i = 0; i < input.Count; i++)
  70.                         {
  71.                             int curentNumber = input[i];
  72.                             if (input[i] % 2 == 0)
  73.                             {
  74.                                 Console.Write(curentNumber + " ");
  75.                             }
  76.                         }
  77.                         Console.WriteLine();
  78.                         break;
  79.  
  80.                     case "PrintOdd":
  81.                         for (int i = 0; i < input.Count; i++)
  82.                         {
  83.                             int curentNumber = input[i];
  84.                             if (input[i] % 2 == 1)
  85.                             {
  86.                                 Console.Write(curentNumber + " ");
  87.                             }
  88.                         }
  89.                         Console.WriteLine();
  90.                         break;
  91.  
  92.                     case "GetSum":
  93.                         Console.WriteLine(input.Sum());
  94.                         break;
  95.  
  96.                     case "Filter":
  97.                         int index = int.Parse(tokens[2]);
  98.                         if (tokens[1] == "<")
  99.                         {
  100.                             Console.WriteLine(string.Join(" ", input.FindAll(x => x < index)));
  101.                         }
  102.                         if (tokens[1] == ">")
  103.                         {
  104.                             Console.WriteLine(string.Join(" ", input.FindAll(x => x > index)));
  105.                         }
  106.                         if (tokens[1] == "<=")
  107.                         {
  108.                             Console.WriteLine(string.Join(" ", input.FindAll(x => x <= index)));
  109.                         }
  110.                         if (tokens[1] == ">=")
  111.                         {
  112.                             Console.WriteLine(string.Join(" ", input.FindAll(x => x >= index)));
  113.                         }
  114.                         break;
  115.                     default:
  116.                         break;
  117.                 }
  118.             }
  119.         }
  120.     }
  121. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement