Исправление ошибок. Угадывание числа - C#
Формулировка задачи:
какой должен быть результат.
для ввода нажмите Enter
для завершения Esc
ваш вариант -> 123 Угадано: 0. на своих местах: 0
ваш вариант -> 456 Угадано: 1. на своих местах: 0
ваш вариант -> 654 Угадано: 2. на своих местах: 2
ваш вариант -> 657 Угадано: 2. на своих местах: 2
ваш вариант -> 658 Угадано: 3. на своих местах: 3
***Вы Угадали !***
у меня считывается код неправильно. исправте меня
bool b = true; string number = null; string[] numberList; int nomer = 0; int count = 0; int sum = 0; Console.WriteLine("После ввода числа нажимайте <Enter>"); Console.WriteLine("Для завершения работы нажмите <Esc>"); ConsoleKey k = Console.ReadKey().Key; do { Console.Write("-> "); if (k == ConsoleKey.Escape) break; number = Console.ReadLine(); numberList = number.Split(); for (int j = 0; j < numberList.Length; j++) { for (int i = j; i < numberList.Length; i++) { nomer = Convert.ToInt32(numberList[i]); if (nomer >= 600 && nomer < 700) { count++; } else if (nomer > 50 && nomer < 60) { count++; } else if (nomer == 8) { count++; } } sum += count; if (sum == 3) { Console.WriteLine("*** ВЫ УГАДАЛИ !***"); b = false; } Console.WriteLine("Ваш вариант -> {0} Угадано: {1} На своих местах: {2}", nomer, count, sum); } } while (b);
Решение задачи: «Исправление ошибок. Угадывание числа»
textual
Листинг программы
void Main() { string answer = "658"; string guess = "456"; int cowsCount = 0; int oxesCount = 0; for(int i = 0; i < answer.Length; i++) { for(int j = 0; j < guess.Length; j++) { if(answer[i] == guess[j]) { if(i == j) { oxesCount++; } else { cowsCount++; } } } } Console.WriteLine("Угадано: {0}. на своих местах: {1}", oxesCount + cowsCount, oxesCount); }
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д