Форум программистов, компьютерный форум, киберфорум
Наши страницы
С++ для начинающих
Войти
Регистрация
Восстановить пароль
 
Рейтинг 4.75/4: Рейтинг темы: голосов - 4, средняя оценка - 4.75
123...
0 / 0 / 0
Регистрация: 07.01.2010
Сообщений: 17
1

Определить, является ли симметричным двоичное представление длинного целого числа

16.10.2010, 19:00. Просмотров 784. Ответов 3
Метки нет (Все метки)

Обработку двоичного числа делать без преобразование к строковому массиву, только сдвигами и битовыми операциями (&, | и т.д.)

-Определить, является ли симметричным двоичное представление длинного целого числа N.

Заказываю контрольные, курсовые, дипломные и любые другие студенческие работы здесь.

0
Лучшие ответы (1)
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
16.10.2010, 19:00
Ответы с готовыми решениями:

Получить двоичное строковое представление целого неотрицательного числа
Помогите пожалуйста с программой, очень надо. Описать функцию DecToBin(N)...

Определить число единиц в каждом байте длинного целого числа N
Задали сделать программу:Определить число единиц в каждом байте длинного целого...

Двоичное представление числа
Введите целое положительное N и выведите его двоичное представление. Ниже...

Определить, является ли введенная тестовая строка записью отрицательного целого числа
Определить, является ли введенная тестовая строка записью отрицательного целого...

Определить, является ли введенная строка правильной записью отрицательного целого числа
Определить, является ли введенная строка правильной записью отрицательного...

3
Day
1161 / 966 / 83
Регистрация: 29.10.2009
Сообщений: 1,386
16.10.2010, 20:50 2
Лучший ответ Сообщение было отмечено Памирыч как решение

Решение

Предположим, что "длинное" - это "unsigned long" - 32 бита
C
1
2
3
4
5
6
7
8
9
10
11
12
13
  for(i=31; i>0; i--)
    if (N&(1L<<i))) break;  // Ищем старшую цифру
    if (i==0) {   // Число содержит 0 или 1 значащих цифр
      cout << "Simmetrichno";
      return;
   }
    for (j=0; j<i/2; j++)
      if ((N&(1L<j)) != ((N&(1L<<(i-j)))) break;
    if (j==i/2) {
      cout << "Simmetrichno"
      return;
   }
   else cout << "Net";
Не проверял.
Это просто идея.
Возможно, потребуется отладка и уточнения, но это уж ты сам.
1
123...
0 / 0 / 0
Регистрация: 07.01.2010
Сообщений: 17
17.10.2010, 23:40  [ТС] 3
спасибо)
0
123...
0 / 0 / 0
Регистрация: 07.01.2010
Сообщений: 17
22.10.2010, 03:35  [ТС] 4
а да и еще эта работа не на С++ а на С.
0
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
22.10.2010, 03:35

Необходимо вывести двоичное представление числа на экран.
Собственно само задание.. Код вроде вполне правильный, но все же не работает((...

Посчитать 2 в степени целого длинного числа
#include &lt;iostream&gt; #include &lt;stdlib.h&gt; using namespace std; int main()...

Определить, является ли массив симметричным?
Символьный тип данных Введите массив символов из 7 элементов. Определите,...


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

Или воспользуйтесь поиском по форуму:
4
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2018, vBulletin Solutions, Inc.
Рейтинг@Mail.ru