public void NotEquals_DifferentData(ConsoleKeyInfo left, ConsoleKeyInfo right) { Assert.False(left == right); Assert.False(left.Equals(right)); Assert.False(left.Equals((object)right)); Assert.True(left != right); }
public void Equals_SameData(ConsoleKeyInfo cki) { ConsoleKeyInfo other = cki; // otherwise compiler warns about comparing the instance with itself Assert.True(cki.Equals((object)other)); Assert.True(cki.Equals(other)); Assert.True(cki == other); Assert.False(cki != other); Assert.Equal(cki.GetHashCode(), other.GetHashCode()); }
public void EqualTest() { var ckiA = new ConsoleKeyInfo('a', ConsoleKey.A, false, false, false); var ckiB = new ConsoleKeyInfo('b', ConsoleKey.B, false, false, false); var ckiA2 = new ConsoleKeyInfo('a', ConsoleKey.A, false, false, false); Assert.IsFalse(ckiA == ckiB, "#1"); Assert.IsTrue(ckiA != ckiB, "#2"); Assert.IsFalse(ckiA.Equals(ckiB), "#3"); Assert.IsTrue(ckiA == ckiA2, "#4"); Assert.IsFalse(ckiA != ckiA2, "#5"); Assert.IsTrue(ckiA.Equals(ckiA2), "#6"); }
private static void ThreadVoid() { bool reqstoptimer = false; while (!reqstoptimer) { ConsoleKeyInfo s = Console.ReadKey(); if (!s.Equals(null)) { reqstoptimer = true; Timer.Stop(); Console.WriteLine($"Timer stoped! Time solved -> {Timer.LastTimeSolved}"); } } Console.WriteLine("Press enter to start timer again or press Esc to exit the timer."); var key = Console.ReadKey(); if (key.Key.Equals(ConsoleKey.Enter)) { Console.Clear(); Main(null); } if (key.Key.Equals(ConsoleKey.Escape)) { Console.Clear(); Environment.Exit(0); } }
static void Main(string[] args) { int max_value = 100000000; DateTime start_time = DateTime.Now; for (int i = 0; i < max_value; i++) { if ((i % 100000) == 0) { Console.WriteLine(i); } } DateTime finish_time = DateTime.Now; Console.WriteLine("Run time : " + Math.Round((finish_time - start_time).TotalSeconds), 2); Console.WriteLine(""); Console.WriteLine("Press any key to exit."); ConsoleKeyInfo keyPressed = Console.ReadKey(); if (!keyPressed.Equals(null)) { Console.WriteLine("Exiting"); Thread.Sleep(1000); } else { Console.WriteLine("Oups"); } }
} // функция вывода блюд и работы с блюдами static public void PrintTypeFood() { string enteredTypeFood = ""; while (true) { Console.Clear(); Console.WriteLine("Выберите тип блюда: "); int i = 1; for (i = 1; i <= TypesFood.Count; i++) { Console.WriteLine(i + ". " + TypesFood[i - 1]); } ConsoleKeyInfo enteredSymbol = Console.ReadKey(true); if (enteredSymbol.Key == ConsoleKey.Escape) { goto EndPrintTypeFood; } int stringToInt; char enteredChar = enteredSymbol.KeyChar; string enteredString = ""; enteredString = enteredString + enteredChar; Console.Clear(); if (int.TryParse(enteredString, out stringToInt)) { if ((i - stringToInt) > 0) { enteredTypeFood = TypesFood[stringToInt - 1]; var searchedFoodMenu = from query in foodMenu where query.Value.Type.Contains(enteredTypeFood) select query; Dictionary <int, Dish> printedFoodMenuClone = new Dictionary <int, Dish>(); foreach (var temp in searchedFoodMenu) { printedFoodMenuClone.Add(temp.Key, temp.Value); } PrintFoodMenu(printedFoodMenuClone); break; } else { Console.WriteLine("Нет такого типа. Нажмите любую клавиш для возврата..."); Console.ReadKey(true); } } else { if (enteredSymbol.Equals("Esc")) { goto EndPrintTypeFood; } Console.WriteLine("Нет такого типа. Нажмите любую клавиш для возврата..."); Console.ReadKey(true); } } EndPrintTypeFood: Console.WriteLine(); } // функция вывода блюд определённого типа
static void Main(string[] args) { // Welcom Screen Console.Clear(); Console.Write("Welcome to The Jumper Game \n\nDodge obstacles by jumping (Space Bar) \n\nPress Space Bar to begin..."); char begin = Console.ReadKey().KeyChar; while (!ConsoleKeyInfo.Equals(begin, ' ')) { begin = Console.ReadKey().KeyChar; } // ConsoleKeyInfo input = Console.ReadKey(true); jumperGame jumper = new jumperGame(); jumper.Start(); jumper.Resume(); //while loop boolean var z = true; //Loops until the Q key is pressed. Console.WriteLine("Press \'q\' to quit the sample."); while (z) { if (Console.KeyAvailable) { var input = Console.ReadKey(true); switch (input.Key) { case ConsoleKey.Q: case ConsoleKey.Escape: z = false; break; case ConsoleKey.P: jumper.Stop(); Console.WriteLine("Press C to continue."); break; case ConsoleKey.C: jumper.Resume(); break; case ConsoleKey.R: // Clear Grid and print grid jumper.Restart(); break; default: jumper.setInput(input); break; } } } }
private void HandleKey(ConsoleKeyInfo pressedKey) { OnKeyPress(); foreach (Command currentCommand in commands) { if (pressedKey.Equals(currentCommand.key) && (Program.navigation.GetCurrentScreen() == currentCommand.screen || currentCommand.screen.Equals(Context.Full))) { currentCommand.command.Invoke(); } } // switch (GetCurrentScreen()) // { // // Toolbar // case (Context.Toolbar): // if (pressedKey.Key == ConsoleKey.Escape) // SwitchToScreen(Context.First); // if (pressedKey.Key == ConsoleKey.RightArrow) // { // ButtonCollection.Button nextButton = ButtonCollection.GetNextButton(); // SetCursor(nextButton.position.X, nextButton.position.Y); // } // if (pressedKey.Key == ConsoleKey.LeftArrow) // { // ButtonCollection.Button prevButton = ButtonCollection.GetPreviousButton(); // SetCursor(prevButton.position.X, prevButton.position.Y); // } // break; // // First screen // case (Context.First): // if (pressedKey.Key == ConsoleKey.Escape) // SwitchToScreen(Context.Toolbar); // if (pressedKey.Key == ConsoleKey.Enter) // LabelCollection.ChangeDirectory(); // if (pressedKey.Key == ConsoleKey.UpArrow) // MoveCursorBy(0, 1); // if (pressedKey.Key == ConsoleKey.DownArrow) // MoveCursorBy(0, -1); // if (pressedKey.Key == ConsoleKey.RightArrow) // SetCursor(1, 53); // break; // // First search // case (Context.FirstSearch): // break; // default: // break; // } }
static void Main(string[] args) { // Текстовый файл text.txt должен лежать в папке с .exe string path = Path.GetFullPath("text.txt"); List <Triple> triples = new List <Triple>(); Stopwatch sWatch = new Stopwatch(); sWatch.Start(); CancellationTokenSource cts = new CancellationTokenSource(); Task task = ProcessingText.ProcessAsync(path, triples, cts.Token); ConsoleKeyInfo cki = new ConsoleKeyInfo(); Console.WriteLine("Нажмите любую клавишу для прерывания обработки текста"); // Цикл ожидания ввода пользователем while (true) { if (Console.KeyAvailable == true) { cki = Console.ReadKey(true); // Если cki считал нажатие и не равен пустому обьекту if (!cki.Equals(new ConsoleKeyInfo())) { if (!task.IsCompleted) { ProcessingText.SortTriples(triples); // Отмена операции подсчета триплетов cts.Cancel(); } break; } } } sWatch.Stop(); Console.WriteLine("Основной поток завершился за " + sWatch.ElapsedMilliseconds.ToString() + " миллисекунд"); Console.ReadKey(true); }
} // программа инфляция. Необходима чтобы проект соответствовал ДЗ static public void ChangeFood() { while (true) { Console.Clear(); List <int> indexOfDish = new List <int>(); foreach (KeyValuePair <int, Dish> keyValue in foodMenu) { Console.Write(keyValue.Key + ". " + keyValue.Value.Name + " " + keyValue.Value.Price + " руб"); indexOfDish.Add(keyValue.Key); Console.WriteLine(); } Console.WriteLine("Выберите номер блюда, который хотите изменить. Esc для выхода "); string enteredIDDish = EnterString(); int enteredIDDishToInt; if (int.TryParse(enteredIDDish, out enteredIDDishToInt)) { if (foodMenu.ContainsKey(enteredIDDishToInt)) { Console.Clear(); Console.WriteLine("Вы меняете " + foodMenu[enteredIDDishToInt].Name); Console.WriteLine("Выберите тип, который хотите изменить: "); Console.WriteLine("1. Название"); Console.WriteLine("2. Тип блюда"); Console.WriteLine("3. Цена"); Console.WriteLine("4. Время готовки"); Console.WriteLine("5. Описание"); ConsoleKeyInfo enteredSymbol = Console.ReadKey(true); string enteredSymbolToString = ""; enteredSymbolToString += enteredSymbol.KeyChar; int stringToInt; Console.Clear(); if (int.TryParse(enteredSymbolToString, out stringToInt)) { switch (stringToInt) { case 1: foodMenu[enteredIDDishToInt].ChangeName(); SaveInTxtFoodMenu(); goto EndChangeDish; case 2: foodMenu[enteredIDDishToInt].ChangeType(); SaveInTxtFoodMenu(); goto EndChangeDish; case 3: foodMenu[enteredIDDishToInt].ChangePrice(); SaveInTxtFoodMenu(); goto EndChangeDish; case 4: foodMenu[enteredIDDishToInt].ChangeTimeCooking(); SaveInTxtFoodMenu(); goto EndChangeDish; case 5: foodMenu[enteredIDDishToInt].ChangeDescription(); SaveInTxtFoodMenu(); goto EndChangeDish; default: Console.WriteLine("Нет такого блюда. Нажмите любую клавиш для возврата..."); Console.ReadKey(true); goto EndChangeDish; } } else { if (enteredSymbol.Equals("Esc")) { goto EndChangeDish; } Console.WriteLine("Нет такого типа. Нажмите любую клавиш для возврата..."); Console.ReadKey(true); } } else { Console.WriteLine("Нет такого блюда. Нажмите любую клавиш для возврата..."); Console.ReadKey(true); } } else { if (enteredIDDish.Equals("Esc")) { goto EndChangeDish; } Console.WriteLine("Нет такого блюда. Нажмите любую клавиш для возврата..."); Console.ReadKey(true); } } EndChangeDish: Console.WriteLine(); } // Изменение имеющегося блюда в меню
} // Переход в корзиеу и взаимодействие с ним static public void AddFood() { string enteredTypeFood = ""; while (true) { Console.Clear(); Console.WriteLine("Выберите тип блюда: "); int i = 1; for (i = 1; i <= TypesFood.Count; i++) { Console.WriteLine(i + ". " + TypesFood[i - 1]); } Console.WriteLine("Для добавления нового типа введите " + i); ConsoleKeyInfo enteredSymbol = Console.ReadKey(true); if (enteredSymbol.Key == ConsoleKey.Escape) { goto EndAddingDish; } int stringToInt; char enteredChar = enteredSymbol.KeyChar; string enteredString = ""; enteredString = enteredString + enteredChar; Console.Clear(); if (int.TryParse(enteredString, out stringToInt)) { if ((i - stringToInt) >= 0) { if (stringToInt == i) { AddTypeFood(); } else { enteredTypeFood = TypesFood[stringToInt - 1]; break; } } else { Console.WriteLine("Нет такого типа. Нажмите любую клавиш для возврата..."); Console.ReadKey(true); } } else { if (enteredSymbol.Equals("Esc")) { goto EndAddingDish; } Console.WriteLine("Нет такого типа. Нажмите любую клавиш для возврата..."); Console.ReadKey(true); } } Console.WriteLine("Тип: " + enteredTypeFood); Console.WriteLine("Введите название блюда: "); string enteredNameFood = EnterString(); if (enteredNameFood == "Esc") { goto EndAddingDish; } int enteredPriceFood; Console.WriteLine("Введите цену блюда: "); while (true) { string enteredStringPrice = EnterString(); int stringToIntPrice; if (int.TryParse(enteredStringPrice, out stringToIntPrice)) { if (stringToIntPrice > 0) { enteredPriceFood = stringToIntPrice; break; } else { Console.WriteLine("Цена не может быть отрицательной"); } } else { if (enteredStringPrice.Equals("Esc")) { goto EndAddingDish; } Console.WriteLine("Неверное значение. Попробуйте ещё раз: "); } } Console.WriteLine("Введите время готовки: "); int enteredTimeCooking; while (true) { string enteredStringTimeCooking = EnterString(); int stringToIntTimeCooking; if (int.TryParse(enteredStringTimeCooking, out stringToIntTimeCooking)) { if (stringToIntTimeCooking > 0) { enteredTimeCooking = stringToIntTimeCooking; break; } else { Console.WriteLine("Время не может быть отрицательным"); } } else { if (enteredStringTimeCooking.Equals("Esc")) { goto EndAddingDish; } Console.WriteLine("Неверное значение. Попробуйте ещё раз: "); } } Console.WriteLine("Введите описание блюда: "); string enteredDescription = EnterString(); foodMenu.Add((foodMenu.Count + 1), new Dish(enteredNameFood, enteredTypeFood, enteredPriceFood, enteredTimeCooking, enteredDescription)); Console.WriteLine("Блюдо добавлено! Для перехода в меню нажмите любую клавишу..."); SaveInTxtFoodMenu(); Console.ReadKey(true); EndAddingDish: Console.WriteLine(); } //добавление нового блюда в меню