Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- using System;
- namespace Lesson_5_2
- {
- class Program
- {
- static void Main()
- {
- //База данных игроков. Реализовать базу данных игроков и методы для работы с ней.
- //У игрока может быть порядковый номер, ник, уровень, флаг – забанен ли он(флаг - bool).
- //Реализовать возможность добавления игрока, бана игрока по порядковому номеру,
- //разбана игрока по порядковому номеру и удаление игрока.
- int[] number = new int[0];
- string[] name = new string[0];
- int[] level = new int[0];
- bool[] flag = new bool[0];
- DataBase dataBase = new DataBase();
- Console.WriteLine("Для начала пользования програмой необходимо внести в нее первого игрока");
- number = dataBase.AddPlayerNumber(number, ref name, ref level, ref flag);
- Console.WriteLine("Варианты событий");
- while (true)
- {
- Console.WriteLine("1. Добавить нового игрока\n" +
- "2. Удалить игрока\n" +
- "3. Забанить/разбанить игрока\n" +
- "4. Вывести список игроков\n" +
- "5. Выход");
- Console.Write("Ваш выбор ");
- int choise = Convert.ToInt32(Console.ReadLine());
- switch (choise)
- {
- case 1:
- number = dataBase.AddPlayerNumber(number, ref name, ref level, ref flag);
- Console.Clear();
- break;
- case 2:
- dataBase.Show(number, name, level, flag);
- number = dataBase.DelPlayerNumber(number, ref name, ref level, ref flag);
- Console.Clear();
- break;
- case 3:
- dataBase.Show(number, name, level, flag);
- flag = dataBase.ChangeFlag(ref number, ref name, ref level, flag);
- break;
- case 4:
- dataBase.Show(number, name, level, flag);
- break;
- case 5:
- Environment.Exit(0);
- break;
- default:
- break;
- }
- }
- }
- }
- class DataBase
- {
- public int[] AddPlayerNumber(int[] number, ref string[] name, ref int[] level, ref bool[] flag)
- {
- int[] tempNumber = new int[number.Length + 1];
- Console.Write("Введите номер игрока ");
- int xNumber = Convert.ToInt32(Console.ReadLine());
- string[] tempName = new string[name.Length + 1];
- Console.Write("Введите имя игрока ");
- string xName = Console.ReadLine();
- int[] tempLevel = new int[level.Length + 1];
- Console.Write("Введите уровень игрока ");
- int xLevel = Convert.ToInt32(Console.ReadLine());
- bool[] tempFlag = new bool[flag.Length + 1];
- Console.Write("Статус игрока (true or false)");
- bool xFlag;
- if (xFlag = Convert.ToBoolean(Console.ReadLine()) == true)
- {
- xFlag = true;
- }
- else
- {
- xFlag = false;
- }
- for (int i = 0; i < tempNumber.Length - 1; i++)
- {
- tempNumber[i] = number[i];
- tempName[i] = name[i];
- tempLevel[i] = level[i];
- tempFlag[i] = flag[i];
- }
- for (int i = number.Length; i <= number.Length; i++)
- {
- tempNumber[i] = xNumber;
- tempName[i] = xName;
- tempLevel[i] = xLevel;
- tempFlag[i] = xFlag;
- }
- number = tempNumber;
- name = tempName;
- level = tempLevel;
- flag = tempFlag;
- return number;
- }
- public void Show(int[] number, string[] name, int[] level, bool[] flag)
- {
- for (int i = 0; i < number.Length; i++)
- {
- Console.WriteLine("Номер игрока - {0} его имя {1} его уровень {2} статус {3}", number[i], name[i], level[i], flag[i]);
- Console.WriteLine();
- }
- }
- public int[] DelPlayerNumber(int[] number, ref string[] name, ref int[] level, ref bool[] flag)
- {
- int[] tempNumber = new int[number.Length - 1];
- string[] tempName = new string[name.Length - 1];
- int[] tempLevel = new int[level.Length - 1];
- bool[] tempFlag = new bool[level.Length - 1];
- Console.Write("Введите номер игрока, кого хотите удалить ");
- int x = Convert.ToInt32(Console.ReadLine());
- for (int i = 0, j = 0; i < number.Length; i++)
- {
- if (x == number[i])
- {
- continue;
- }
- else if (x != number[i])
- {
- tempNumber[j] = number[i];
- tempName[j] = name[i];
- tempLevel[j] = level[i];
- tempFlag[j] = flag[i];
- j++;
- }
- }
- number = tempNumber;
- name = tempName;
- level = tempLevel;
- flag = tempFlag;
- return number;
- }
- public bool[] ChangeFlag(ref int[] number, ref string[] name, ref int[] level, bool[] flag)
- {
- int[] tempNumber = new int[number.Length];
- string[] tempName = new string[name.Length];
- int[] tempLevel = new int[level.Length];
- bool[] tempFlag = new bool[level.Length];
- Console.Write("Введите номер игрока, статус которого необходимо изменить ");
- int x = Convert.ToInt32(Console.ReadLine());
- for (int i = 0; i < number.Length; i++)
- {
- if (x == number[i])
- {
- if (flag[i] == true)
- flag[i] = false;
- else
- flag[i] = true;
- }
- tempNumber[i] = number[i];
- tempName[i] = name[i];
- tempLevel[i] = level[i];
- tempFlag[i] = flag[i];
- }
- number = tempNumber;
- name = tempName;
- level = tempLevel;
- return flag;
- }
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement