
С# 1) Цикл while Дано число. Визначити, чи є це число степенем двійки. 2) Цикл do/while Скласти
програму-гру «Більше-Менше». Комп’ютер генерує випадкове ціле число, а користувач намагається вгадати згенероване число. Комп’ютер надає користувачу підказку, чи є введене число більшим або меншим від загаданого. Також з клавіатури вводиться максимальна кількість спроб.

Ответы на вопрос

1)
using System;
class Program {
static void Main() {
int num = 16;
bool isPow2 = true;
while (num > 1){
if (num % 2 == 0){
num /= 2;
} else {
isPow2 = false;
break;
}
}
if (isPow2)
Console.WriteLine("Является");
else
Console.WriteLine("Не является");
}
}
2)
using System;
class Program {
static Random rnd = new Random();
static void Main() {
int min = 1;
int max = 100;
int numOfAttempts = 8;
int x = rnd.Next(min, max);
bool isWin = false;
Console.WriteLine("Игра \"Больше-Меньше\"");
Console.Write("Задайте число попыток: ");
numOfAttempts = Convert.ToInt32(Console.ReadLine());
Console.WriteLine("Отгадайте число от {0} до {1}", min, max);
Console.WriteLine("Попытки: {0}\n", numOfAttempts);
int input;
do {
Console.Write("Введите число: ");
input = Convert.ToInt32(Console.ReadLine());
numOfAttempts--;
if (input > x)
Console.WriteLine("x < {0} [попытки: {1}]", input, numOfAttempts);
if (input < x)
Console.WriteLine("x > {0} [попытки: {1}]", input, numOfAttempts);
if (input == x){
isWin = true;
break;
}
} while (numOfAttempts > 0);
if (isWin){
Console.WriteLine("\nПобеда!");
} else {
Console.WriteLine("\nПроигрыш! Загаданное число: {0}", x);
}
}
}



Добре, нижче наведено дві програми на мові C# для виконання завдань, які ви описали.
- Програма, що перевіряє, чи є число степенем двійки за допомогою циклу
while
:
csharpusing System;
class Program
{
static void Main()
{
Console.Write("Введіть число: ");
int number = int.Parse(Console.ReadLine());
int powerOfTwo = 1;
while (powerOfTwo < number)
{
powerOfTwo *= 2;
}
if (powerOfTwo == number)
{
Console.WriteLine("Число є степенем двійки.");
}
else
{
Console.WriteLine("Число не є степенем двійки.");
}
}
}
- Програма-гра "Більше-Менше" з використанням циклу
do/while
:
csharpusing System;
class Program
{
static void Main()
{
Random random = new Random();
int targetNumber = random.Next(1, 101); // Загадане число випадковим чином в межах [1, 100]
int maxAttempts;
Console.Write("Введіть максимальну кількість спроб: ");
while (!int.TryParse(Console.ReadLine(), out maxAttempts) || maxAttempts <= 0)
{
Console.WriteLine("Некоректний ввід. Введіть додатнє ціле число.");
Console.Write("Введіть максимальну кількість спроб: ");
}
int attempts = 0;
int guess;
do
{
Console.Write("Введіть вашу догадку: ");
while (!int.TryParse(Console.ReadLine(), out guess))
{
Console.WriteLine("Некоректний ввід. Введіть ціле число.");
Console.Write("Введіть вашу догадку: ");
}
attempts++;
if (guess == targetNumber)
{
Console.WriteLine($"Вітаємо, ви вгадали число {targetNumber} за {attempts} спроб!");
break;
}
else if (guess < targetNumber)
{
Console.WriteLine("Загадане число більше вашої догадки.");
}
else
{
Console.WriteLine("Загадане число менше вашої догадки.");
}
if (attempts == maxAttempts)
{
Console.WriteLine($"Ви використали всі спроби. Загадане число було {targetNumber}.");
break;
}
} while (true);
}
}
Ці програми допоможуть вам перевірити, чи є введене число степенем двійки і відтворити гру "Більше-Менше".


Похожие вопросы
Топ вопросов за вчера в категории Информатика








Последние заданные вопросы в категории Информатика
-
Математика
-
Литература
-
Алгебра
-
Русский язык
-
Геометрия
-
Английский язык
-
Химия
-
Физика
-
Биология
-
Другие предметы
-
История
-
Обществознание
-
Окружающий мир
-
География
-
Українська мова
-
Информатика
-
Українська література
-
Қазақ тiлi
-
Экономика
-
Музыка
-
Право
-
Беларуская мова
-
Французский язык
-
Немецкий язык
-
МХК
-
ОБЖ
-
Психология
-
Физкультура и спорт
-
Астрономия
-
Кыргыз тили
-
Оʻzbek tili