Advertisement
bonumopus

Dossier2

May 10th, 2020
85
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C# 5.67 KB | None | 0 0
  1. using System;
  2. using System.Collections.Generic;
  3. using System.Linq;
  4. using System.Text;
  5. using System.Threading.Tasks;
  6.  
  7. namespace dossier
  8. {
  9.     class Program
  10.     {
  11.         static void Main(string[] args)
  12.         {
  13.             bool isWorking = true;
  14.             string[] names = { "Пупкин", "Бобкин", "Жужиков" };
  15.             string[] posts = { "Швец", "Жнец", "Надудеигрец" };
  16.             while (isWorking)
  17.             {
  18.                 Console.Clear();
  19.                 Console.WriteLine("Бухгалтерский учет.");
  20.                 Console.WriteLine("\n1 - добавить досье.\n\n2 - вывести все досье.\n\n3 - удалить досье.\n\n4 - поиск по фамилии.\n\n5 - выход.\n");
  21.                 Console.Write("Введите пункт меню: ");
  22.                 switch (Convert.ToInt32(Console.ReadLine()))
  23.                 {
  24.                     case 1:
  25.                         AddDossier(ref names, ref posts);
  26.                         break;
  27.                     case 2:
  28.                         ShowDossier(names, posts);
  29.                         break;
  30.                     case 3:
  31.                         DelDossier(ref names, ref posts);
  32.                         break;
  33.                     case 4:
  34.                         SearchDossier(names, posts);
  35.                         break;
  36.                     case 5:
  37.                         isWorking = false;
  38.                         break;
  39.                 }
  40.             }
  41.             Console.Clear();
  42.             Console.Write("Выход из программы. Нажмите любую клавишу для продолжения...");
  43.             Console.ReadKey();
  44.         }
  45.  
  46.         static void AddDossier(ref string[] names, ref string[] posts)
  47.         {
  48.             Console.Clear();
  49.             Console.Write("Добавление нового досье.\n\n");
  50.  
  51.             AddNewElement(ref names, "фамилию");
  52.             AddNewElement(ref posts, "должность");
  53.  
  54.             Console.Clear();
  55.             Console.WriteLine("Добавлено новое досье:\n");
  56.             Console.WriteLine("Фамилия - " + names[names.Length - 1] + ". " + "Должность - " + posts[posts.Length - 1] + ".");
  57.             Console.WriteLine("\nНажмите любую клавишу для продолжения...");
  58.             Console.ReadKey();
  59.         }
  60.  
  61.         static void AddNewElement(ref string[] array, string nameOrPost)
  62.         {
  63.             string[] tempArray = new string[array.Length + 1];
  64.             for (int i = 0; i < array.Length; i++)
  65.             {
  66.                 tempArray[i] = array[i];
  67.             }
  68.  
  69.             Console.Write("Введите " + nameOrPost + " нового сотрудника: ");
  70.             string newNameOrPost = Console.ReadLine();
  71.             tempArray[tempArray.Length - 1] = newNameOrPost;
  72.             array = tempArray;
  73.         }
  74.  
  75.         static void ShowDossier(string[] names, string[] posts)
  76.         {
  77.             Console.Clear();
  78.             Console.Write("Список сотрудников.\n\n");
  79.             for (int i = 0; i < names.Length; i++)
  80.             {
  81.                 Console.WriteLine((i + 1) + ") " + names[i] + " - " + posts[i]);
  82.             }
  83.             Console.WriteLine("\nНажмите любую клавишу для продолжения...");
  84.             Console.ReadKey();
  85.         }
  86.  
  87.         static void DelDossier(ref string[] names, ref string[] posts)
  88.         {
  89.             Console.Clear();
  90.             Console.Write("Удаление досье сотрудника.\nВведите номер досье: ");
  91.             int delIndex = Convert.ToInt32(Console.ReadLine()) - 1;
  92.             string delName = names[delIndex];
  93.             string delPost = posts[delIndex];
  94.             DelArrayElement(ref names, ref delIndex);
  95.             DelArrayElement(ref posts, ref delIndex);
  96.  
  97.             Console.WriteLine("\nДосье " + delName + " - " + delPost + " было удалено.\n\nНажмите любую клавишу для продолжения...");
  98.             Console.ReadKey();
  99.         }
  100.  
  101.         static void DelArrayElement(ref string[] delArray, ref int delIndex)
  102.         {          
  103.             string[] tempArray = new string[delArray.Length - 1];            
  104.             for (int i = 0; i < delArray.Length - 1; i++)
  105.             {
  106.                 if (i >= delIndex)
  107.                 {
  108.                     tempArray[i] = delArray[i + 1];
  109.                 }
  110.                 else
  111.                 {
  112.                     tempArray[i] = delArray[i];
  113.                 }
  114.             }
  115.             delArray = tempArray;
  116.         }
  117.  
  118.         static void SearchDossier(string[] names, string[] posts)
  119.         {
  120.             Console.Clear();
  121.             Console.Write("Поиск досье по фамилии.\n\n");
  122.             Console.Write("Введите фамилию сотрудника: ");
  123.             string searchName = Console.ReadLine();
  124.             bool isNameFind = false;
  125.             for (int i = 0; i < names.Length; i++)
  126.             {
  127.                 if (searchName.ToLower() == names[i].ToLower())
  128.                 {
  129.                     isNameFind = true;
  130.                     Console.WriteLine("\n" + (i + 1) + ") " + names[i] + " - " + posts[i]);
  131.                 }
  132.             }
  133.             if (!isNameFind)
  134.             {
  135.                 Console.WriteLine("\nТакого сотрудника нет.");
  136.             }
  137.             Console.WriteLine("\nНажмите любую клавишу для продолжения...");
  138.             Console.ReadKey();
  139.         }
  140.     }
  141. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement