Advertisement
Comrade_Sharikov

Dossier

Mar 26th, 2020
121
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C# 4.95 KB | None | 0 0
  1. using System;
  2.  
  3. namespace СurrencyСonverter
  4. {
  5.     class Program
  6.     {
  7.         static void Main(string[] args)
  8.         {
  9.             string[] dossier = new string[0];
  10.             bool isOpen = true;
  11.  
  12.             while (isOpen)
  13.             {
  14.                 Console.WriteLine("Введите номер команды");
  15.                 Console.WriteLine("\n1 - Добавить досье\n2 - Вывести все досье\n3 - Удалить досье\n4 - Поиск по фамилии\n0 - Выход из программы");
  16.                 string userInput = Console.ReadLine();
  17.                 Console.Clear();
  18.  
  19.                 switch (userInput)
  20.                 {
  21.                     case "1":
  22.                         AddDossier(ref dossier);
  23.                         break;
  24.                     case "2":
  25.                         OutputDossier(ref dossier);
  26.                         break;
  27.                     case "3":
  28.                         DeleteDossier(ref dossier);
  29.                         break;
  30.                     case "4":
  31.                         Console.WriteLine(SearchByName(ref dossier));
  32.                         break;
  33.                     case "0":
  34.                         isOpen = false;
  35.                         break;
  36.                     default:
  37.                         Console.WriteLine("Недопустимое значение");
  38.                         break;
  39.                 }
  40.             }
  41.         }
  42.  
  43.         static void AddDossier(ref string[] dossier)
  44.         {
  45.             string dossierInput = "";
  46.             Console.WriteLine("Введите ваше ФИО");
  47.             string name = Console.ReadLine();
  48.  
  49.             Console.WriteLine("Какая у вас должность");
  50.             string post = Console.ReadLine();
  51.             Console.Clear();
  52.  
  53.             dossierInput += name + " - " + post + "\n";
  54.  
  55.             string[] tempArray = new string[dossier.Length + 1];
  56.             for (int i = 0; i < dossier.Length; i++)
  57.             {
  58.                 tempArray[i] = dossier[i];
  59.             }
  60.             tempArray[tempArray.Length - 1] = dossierInput;
  61.             dossier = tempArray;
  62.         }
  63.  
  64.         static void OutputDossier(ref string[] dossier)
  65.         {
  66.             Console.WriteLine("Все досье\n");
  67.             for (int i = 0; i < dossier.GetLength(0); i++)
  68.             {
  69.                 Console.WriteLine(i + 1 + ") " + dossier[i]);
  70.             }
  71.         }
  72.  
  73.         static void DeleteDossier(ref string[] dossier)
  74.         {
  75.             Console.WriteLine("1 - Удалить все досье\n2 - Выбрать досье ");
  76.             switch (Console.ReadLine())
  77.             {
  78.                 case "1":
  79.                     dossier = new string[0];
  80.                     Console.Clear();
  81.                     Console.WriteLine("Все досье удалены\n");
  82.                     break;
  83.                 case "2":
  84.                     DeleteByName(ref dossier);
  85.                     break;
  86.                 default:
  87.                     Console.WriteLine("Недопустимое значение");
  88.                     break;
  89.             }
  90.         }
  91.  
  92.         static void DeleteByName(ref string[] dossier)
  93.         {
  94.             string surname = SearchByName(ref dossier);
  95.  
  96.             for (int i = 0; i < dossier.Length; i++)
  97.             {
  98.                 if (surname == dossier[i])
  99.                 {
  100.                     DeleteByIndex(ref dossier, i);
  101.                     i--;
  102.                     Console.WriteLine("Досье удалено\n");
  103.                     break;
  104.                 }
  105.             }
  106.         }
  107.  
  108.         public static void DeleteByIndex(ref string[] dossier, int deleteIndex)
  109.         {
  110.             string[] tempArray = new string[dossier.Length - 1];
  111.  
  112.             for (int i = 0; i < deleteIndex; i++)
  113.             {
  114.                 tempArray[i] = dossier[i];
  115.             }
  116.  
  117.             for (int i = deleteIndex; i < tempArray.Length; i++)
  118.             {
  119.                 tempArray[i] = dossier[i + 1];
  120.             }
  121.             dossier = tempArray;
  122.         }
  123.  
  124.         static string SearchByName(ref string[] dossier)
  125.         {
  126.             string surname = "";
  127.             string findedDossier = "";
  128.             bool isFind = false;
  129.  
  130.             Console.WriteLine("Введите фамилию");
  131.             string name = Console.ReadLine().ToLower();
  132.             Console.Clear();
  133.  
  134.             for (int i = 0; i < dossier.Length; i++)
  135.             {
  136.                 surname = dossier[i].Substring(0, dossier[i].IndexOf(' '));
  137.  
  138.                 if (name == surname.ToLower())
  139.                 {
  140.                     findedDossier = dossier[i];
  141.                     isFind = true;
  142.                     break;
  143.                 }
  144.             }
  145.  
  146.             if (isFind == false)
  147.             {
  148.                 Console.WriteLine("Досье не найдено");
  149.             }
  150.  
  151.             return findedDossier;
  152.         }
  153.     }
  154. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement