Форум программистов, компьютерный форум, киберфорум
C# для начинающих
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.88/8: Рейтинг темы: голосов - 8, средняя оценка - 4.88
0 / 0 / 0
Регистрация: 03.05.2011
Сообщений: 6

Задана 32-х битная переменная и набор 32-битных флагов. Если бит в заданной переменной равен единице то считать,что соответствующий флаг установлен...

10.05.2011, 23:43. Показов 1736. Ответов 2
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Задана 32-х битная переменная и набор 32-битных флагов. Если бит в заданной переменной равен единице то считать,что соответствующий флаг установлен.Cо значением флага ассоциирована строка - порядковое число на английском языкею Напишите програму кторая выводит на консоль соотвестуюшую строку, если в переменно установлен соотвествующий флаг. Подумайте о пути унификации программы.
0
Лучшие ответы (1)
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
10.05.2011, 23:43
Ответы с готовыми решениями:

Дано f. Найти площадь сектора, радиус которого равен 13.75, а соответствующий центральный угол равен f . Считать, что f - градусная мера угла.
Дано f. Найти площадь сектора, радиус которого равен 13.75, а соответствующий центральный угол равен f . Считать, что f - градусная мера...

Проверить равен ли 4-й бит байта [022A] единице. Если – да, то – программно сделать очистку памяти в адресах 0200-02DE, иначе – заполнить область памя
Проверить равен ли 4-й бит байта единице. Если – да, то – программно сделать очистку памяти в адресах 0200-02DE, иначе – заполнить область...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
2
Почетный модератор
Эксперт .NET
 Аватар для NickoTin
8725 / 3677 / 404
Регистрация: 14.06.2010
Сообщений: 4,513
Записей в блоге: 9
11.05.2011, 01:58
Лучший ответ Сообщение было отмечено Nixonix как решение

Решение

Цитата Сообщение от Nixonix Посмотреть сообщение
Задана 32-х битная переменная и набор 32-битных флагов. Если бит в заданной переменной равен единице то считать,что соответствующий флаг установлен.Cо значением флага ассоциирована строка - порядковое число на английском языкею Напишите програму кторая выводит на консоль соотвестуюшую строку, если в переменно установлен соотвествующий флаг.
C#
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
using System;
 
namespace ConsoleApplication16
{
    class Program
    {
        static int value;
 
        static string[] flags = {
            "Zero", "One", "Two", "Three",
            "Four", "Five", "Six", "Seven",
            // и т.д. 32 значения
                                };
 
        static void Main ( string[] args ) {
            Console.WriteLine("Введите значение:");
            while(true) {
                if (int.TryParse(Console.ReadLine(), out value))
                    break;
                
                Console.Clear();
                Console.WriteLine("Неверное значение! Повторите ввод:");
            }
 
            string read = null;
            int    flag = 0;
 
            Console.WriteLine("Введите номер флага, от 0 до 31 включительно\r\n" + 
                "или end для завершения работы приложения:");
            while(!string.Equals(read = Console.ReadLine(), "end",
                StringComparison.CurrentCultureIgnoreCase)) {
 
                if (!int.TryParse(read, out flag) || (flag > 31 || flag < 0)) {
                    Console.Clear();
                    Console.WriteLine("Неверное значение! Повторите ввод:");
                    continue;
                }
 
                if (IsFlagSet(flag))
                    Console.WriteLine("Флаг установлен: {0}.\r\nВвод:", flags[flag]);
                else
                    Console.WriteLine("Флаг не установлен.\r\nВвод:");
            }
        }
 
        static bool IsFlagSet(int bitPosition) {
            if (bitPosition > 31)
                throw new IndexOutOfRangeException("Значение bitPosition должно быть от 0 до 31!");
 
            return (value | (1 << bitPosition)) == value;
        }
    }
}
Допишите только все цифры на английском до 31 включительно.
Цитата Сообщение от Nixonix Посмотреть сообщение
Подумайте о пути унификации программы.
Вот это не понял...
0
334 / 270 / 18
Регистрация: 19.01.2011
Сообщений: 597
11.05.2011, 10:18
C#
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
class Program
{
    [Flags]
    enum Numbers
    {
        Zero = 0,
        One = 1,
        Two = 2,
        Three = 4,
        Four = 8,
        Five = 16,
        Six = 32,
        Seven = 64,
 
        //далее до 32-го названия, т.к. это флаги - значение енума - предыдущее значение*2
        //если кто не понял почему - смотрим двоичное отображение.
    }
 
    static void Main(string[] args)
    {
        int value = 127; //переменная c флагами
        Console.WriteLine("{0,3} - {1}", value, ((Numbers)value).ToString());//Вывод флагов в переменной
        Console.ReadLine();
    }
}
Вывод программы -
127 - One, Two, Three, Four, Five, Six, Seven
100 - Three, Six, Seven
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Ответ Создать тему
Новые блоги и статьи
SDL3 для Web (WebAssembly): Обработчик клика мыши в браузере ПК и касания экрана в браузере на мобильном устройстве
8Observer8 02.02.2026
Содержание блога Для начала пошагово создадим рабочий пример для подготовки к экспериментам в браузере ПК и в браузере мобильного устройства. Потом напишем обработчик клика мыши и обработчик. . .
Философия технологии
iceja 01.02.2026
На мой взгляд у человека в технических проектах остается роль генерального директора. Все остальное нейронки делают уже лучше человека. Они не могут нести предпринимательские риски, не могут. . .
SDL3 для Web (WebAssembly): Вывод текста со шрифтом TTF с помощью SDL3_ttf
8Observer8 01.02.2026
Содержание блога В этой пошаговой инструкции создадим с нуля веб-приложение, которое выводит текст в окне браузера. Запустим на Android на локальном сервере. Загрузим Release на бесплатный. . .
SDL3 для Web (WebAssembly): Сборка C/C++ проекта из консоли
8Observer8 30.01.2026
Содержание блога Если вы откроете примеры для начинающих на официальном репозитории SDL3 в папке: examples, то вы увидите, что все примеры используют следующие четыре обязательные функции, а. . .
SDL3 для Web (WebAssembly): Установка Emscripten SDK (emsdk) и CMake для сборки C и C++ приложений в Wasm
8Observer8 30.01.2026
Содержание блога Для того чтобы скачать Emscripten SDK (emsdk) необходимо сначало скачать и уставить Git: Install for Windows. Следуйте стандартной процедуре установки Git через установщик. . . .
SDL3 для Android: Подключение Box2D v3, физика и отрисовка коллайдеров
8Observer8 29.01.2026
Содержание блога Box2D - это библиотека для 2D физики для анимаций и игр. С её помощью можно определять были ли коллизии между конкретными объектами. Версия v3 была полностью переписана на Си, в. . .
Инструменты COM: Сохранение данный из VARIANT в файл и загрузка из файла в VARIANT
bedvit 28.01.2026
Сохранение базовых типов COM и массивов (одномерных или двухмерных) любой вложенности (деревья) в файл, с возможностью выбора алгоритмов сжатия и шифрования. Часть библиотеки BedvitCOM Использованы. . .
SDL3 для Android: Загрузка PNG с альфа-каналом с помощью SDL_LoadPNG (без SDL3_image)
8Observer8 28.01.2026
Содержание блога SDL3 имеет собственные средства для загрузки и отображения PNG-файлов с альфа-каналом и базовой работы с ними. В этой инструкции используется функция SDL_LoadPNG(), которая. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru