Advertisement
Katina_

ListManipulationAdvanced

Jun 19th, 2019
1,132
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C# 5.87 KB | None | 0 0
  1. using System;
  2. using System.Collections.Generic;
  3. using System.Linq;
  4.  
  5. namespace ListManipulationAdvanced
  6. {
  7.     class Program
  8.     {
  9.         static void Main(string[] args)
  10.         {
  11.             List<int> numbers = Console.ReadLine()
  12.                 .Split()
  13.                 .Select(int.Parse)
  14.                 .ToList();
  15.  
  16.             List<int> evenNums = new List<int>();
  17.             List<int> oddNums = new List<int>();
  18.             List<int> filterSmall = new List<int>();
  19.             List<int> filterESmall = new List<int>();
  20.             List<int> filterBig = new List<int>();
  21.             List<int> filterEBig = new List<int>();
  22.  
  23.             string command = string.Empty;
  24.             string condition = string.Empty;
  25.             int numberContains = 0;
  26.             int sum = 0;
  27.             int numberFilter = 0;
  28.             int count = 0;
  29.  
  30.             while (command != "end")
  31.             {
  32.                 command = Console.ReadLine().ToLower();
  33.                 string[] parts = command.Split();
  34.  
  35.                 if (parts[0] == "add")
  36.                 {
  37.                     int numberToAdd = int.Parse(parts[1]);
  38.                     numbers.Add(numberToAdd);
  39.                 }
  40.  
  41.                 if (parts[0] == "remove")
  42.                 {
  43.                     int numberToRemove = int.Parse(parts[1]);
  44.                     numbers.Remove(numberToRemove);
  45.                 }
  46.  
  47.                 if (parts[0] == "removeat")
  48.                 {
  49.                     int numberToRemoveAt = int.Parse(parts[1]);
  50.                     numbers.RemoveAt(numberToRemoveAt);
  51.                 }
  52.  
  53.                 if (parts[0] == "insert")
  54.                 {
  55.                     int numberToInsert = int.Parse(parts[1]);
  56.                     int indexToInsert = int.Parse(parts[2]);
  57.  
  58.                     numbers.Insert(indexToInsert, numberToInsert);
  59.                 }
  60.  
  61.  
  62.                 if (parts[0] == "add" || parts[0] == "remove" || parts[0] == "removeat"
  63.                        || parts[0] == "insert")
  64.                 {
  65.                     count++;
  66.                 }
  67.  
  68.                 if (parts[0] == "contains")
  69.                 {
  70.                     numberContains = int.Parse(parts[1]);
  71.                     numbers.Contains(numberContains);
  72.  
  73.                     if (numbers.Contains(numberContains))
  74.                     {
  75.                         Console.WriteLine("Yes");
  76.                     }
  77.  
  78.                     else
  79.                     {
  80.                         Console.WriteLine("No such number");
  81.                     }
  82.  
  83.                 }
  84.  
  85.                 if (parts[0] == "printeven")
  86.                 {
  87.                     for (int i = 0; i < numbers.Count; i++)
  88.                     {
  89.                         if (numbers[i] % 2 == 0)
  90.                         {
  91.                             evenNums.Add(numbers[i]);
  92.                         }
  93.                     }
  94.  
  95.                     Console.WriteLine(string.Join(" ", evenNums));
  96.                 }
  97.  
  98.                 if (parts[0] == "printodd")
  99.                 {
  100.                     for (int i = 0; i < numbers.Count; i++)
  101.                     {
  102.                         if (numbers[i] % 2 == 1)
  103.                         {
  104.                             oddNums.Add(numbers[i]);
  105.                         }
  106.                     }
  107.  
  108.                     Console.WriteLine(string.Join(" ", oddNums));
  109.                 }
  110.  
  111.                 if (parts[0] == "getsum")
  112.                 {
  113.                     for (int i = 0; i < numbers.Count; i++)
  114.                     {
  115.                         sum += numbers[i];
  116.                        
  117.                     }
  118.  
  119.                     Console.WriteLine(sum);
  120.                 }
  121.  
  122.                 if(parts[0] == "filter")
  123.                 {
  124.                     condition = parts[1];
  125.                     numberFilter = int.Parse(parts[2]);
  126.  
  127.                     if (condition == "<")
  128.                     {
  129.                         for (int i = 0; i < numbers.Count; i++)
  130.                         {
  131.                             if (numbers[i] < numberFilter)
  132.                             {
  133.                                 filterSmall.Add(numbers[i]);
  134.  
  135.                             }
  136.                         }
  137.  
  138.                         Console.WriteLine(string.Join(" ", filterSmall));
  139.  
  140.                     }
  141.                     else if (condition == ">")
  142.                     {
  143.                         for (int i = 0; i < numbers.Count; i++)
  144.                         {
  145.                             if (numbers[i] > numberFilter)
  146.                             {
  147.                                 filterBig.Add(numbers[i]);
  148.  
  149.                             }
  150.                         }
  151.  
  152.                         Console.WriteLine(string.Join(" ", filterBig));
  153.  
  154.                     }
  155.                     else if (condition == ">=")
  156.                     {
  157.                         for (int i = 0; i < numbers.Count; i++)
  158.                         {
  159.                             if (numbers[i] >= numberFilter)
  160.                             {
  161.                                 filterEBig.Add(numbers[i]);
  162.  
  163.                             }
  164.                         }
  165.  
  166.                         Console.WriteLine(string.Join(" ", filterEBig));
  167.  
  168.                     }
  169.  
  170.                     else if (condition == "<=")
  171.                     {
  172.                         for (int i = 0; i < numbers.Count; i++)
  173.                         {
  174.                             if (numbers[i] <= numberFilter)
  175.                             {
  176.                                 filterESmall.Add(numbers[i]);
  177.  
  178.                             }
  179.                         }
  180.  
  181.                         Console.WriteLine(string.Join(" ", filterESmall));
  182.  
  183.                     }
  184.                 }
  185.             }
  186.  
  187.             if (count > 0)
  188.             {
  189.                 Console.WriteLine(string.Join(" ", numbers));
  190.             }
  191.         }
  192.     }
  193. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement