Модераторы: bsa
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Поразрядные операции сдвига, помогите написать программу, прошу! 
:(
    Опции темы
elena1991
Дата 22.3.2014, 12:19 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 8
Регистрация: 22.3.2014

Репутация: нет
Всего: нет



Создать динамическую переменную и написать программу для работы с разрядами этой переменной в соответствии со своим вариантом индивидуального задания (Таблица 13) двумя способами: a. Используя операции поразрядного сдвига (§ 9.2) и поразрядные логические операции (§ 9.1). b. Используя структуру объединение (union) с использованием битовых полей (§ 9.3). 2. При программировании обоими способами выводить данные на экран в десятичном и двоичном форматах. Выводить на экран размер задаваемой переменной/структуры.  3. Корректно создать и уничтожить динамическую переменную. 
 Запрограммировать изменение четырехбайтного числа (unsigned int) так, чтобы ноль перемещался от разряда к разряду слева направо. 
PM   Вверх
borisbn
Дата 22.3.2014, 15:21 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Завсегдатай
Сообщений: 4875
Регистрация: 6.2.2010
Где: Ростов-на-Дону

Репутация: 21
Всего: 135



user posted image
Особенно улыбнуло то, что мы должны знать твой вариант индивидуального задания (Таблица 13), а ещё побегать и поискать, что это за параграфы 9.2, 9.1 и 9.3


--------------------
Женщины отличаются от программистов тем, что у них чары состоят из стрингов
PM MAIL Jabber   Вверх
elena1991
Дата 22.3.2014, 15:27 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 8
Регистрация: 22.3.2014

Репутация: нет
Всего: нет



нет, само задание "Запрограммировать изменение четырехбайтного числа (unsigned int) так, чтобы ноль перемещался от разряда к разряду слева направо. " я просто скопирывала так!!!! на параграфы и таблицы не обращйте внимания

Добавлено через 9 минут и 15 секунд
помогите!!!

Добавлено через 9 минут и 41 секунду
помогите написать, пожалуйсто

Это сообщение отредактировал(а) elena1991 - 22.3.2014, 15:28
PM   Вверх
borisbn
Дата 22.3.2014, 15:44 (ссылка) |    (голосов:1) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Завсегдатай
Сообщений: 4875
Регистрация: 6.2.2010
Где: Ростов-на-Дону

Репутация: 21
Всего: 135



У меня страничка создания новой темы на форуме выглядит так
user posted image
У тебя как-то по-другому ?


--------------------
Женщины отличаются от программистов тем, что у них чары состоят из стрингов
PM MAIL Jabber   Вверх
feodorv
Дата 22.3.2014, 17:17 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Комодератор
Сообщений: 2214
Регистрация: 30.7.2011

Репутация: 12
Всего: 45



Цитата(elena1991 @  22.3.2014,  16:27 Найти цитируемый пост)
Запрограммировать изменение четырехбайтного числа (unsigned int) так, чтобы ноль перемещался от разряда к разряду слева направо.

Так, что ли?
Код

#include <stdio.h>

void printVariable( unsigned int variable )
{
  unsigned int i;

  for( i = 0; i < 32; i++)
  {
    printf( "%d", (variable & 0x80000000u) != 0 ? 1 : 0);
    variable <<= 1;
  }

  printf( "\n" );
}

int main( void )
{
  unsigned int variable = 0x7fffffffu;
  unsigned int i;

  for( i = 0; i < 32; i++)
  {
    printVariable( variable );
    variable >>= 1;
    variable |= 0x80000000u;
  }
}



--------------------
Напильник, велосипед, грабли и костыли - основные инструменты программиста...
PM MAIL   Вверх
elena1991
Дата 22.3.2014, 18:44 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 8
Регистрация: 22.3.2014

Репутация: нет
Всего: нет



СПАСИБО!!!! smile а где здесь коректное удаление?
PM   Вверх
baldina
Дата 22.3.2014, 21:26 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Завсегдатай
Сообщений: 3433
Регистрация: 5.12.2007
Где: Москва

Репутация: 15
Всего: 101



меняем
Код

 unsigned int variable = 0x7fffffffu;
на 
Код

 unsigned int *variablePtr = new int;
 unsigned int& variable = *variablePtr;
 variable = 0x7fffffffu;


и в конце
Код

delete variablePtr;

это и будет "корректное удаление"

Это сообщение отредактировал(а) baldina - 22.3.2014, 21:26
PM MAIL   Вверх
elena1991
Дата 23.3.2014, 07:11 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 8
Регистрация: 22.3.2014

Репутация: нет
Всего: нет



c++ он не распознаёт new int - значение типа int нельзя использовать для инициализации существенного типа unsigned int
PM   Вверх
borisbn
Дата 23.3.2014, 12:48 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Завсегдатай
Сообщений: 4875
Регистрация: 6.2.2010
Где: Ростов-на-Дону

Репутация: 21
Всего: 135



Код
unsigned int *variablePtr = new unsigned int;



--------------------
Женщины отличаются от программистов тем, что у них чары состоят из стрингов
PM MAIL Jabber   Вверх
elena1991
Дата 23.3.2014, 12:57 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 8
Регистрация: 22.3.2014

Репутация: нет
Всего: нет



Код

delete variablePtr;
 вот так вставить? :
Код

int main( void )
{
  unsigned int *variablePtr = new unsigned int;
 unsigned int& variable = *variablePtr;
 variable = 0x7fffffffu;
 delete variablePtr; 
 unsigned int i;
  for( i = 0; i < 32; i++)
  {
    printVariable( variable );
    variable >>= 1;
    variable |= 0x80000000u; // побитовое OR 
  }
getch();
    return 0;
}

PM   Вверх
baldina
Дата 23.3.2014, 18:04 (ссылка) |    (голосов:2) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Завсегдатай
Сообщений: 3433
Регистрация: 5.12.2007
Где: Москва

Репутация: 15
Всего: 101



elena1991, вы же вообще ничего не знаете. вам либо учиться надо, с начала и основательно, либо спихивать, это - сюда
PM MAIL   Вверх
Нэраварин
Дата 24.3.2014, 21:29 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 46
Регистрация: 9.3.2009

Репутация: нет
Всего: нет



Комрады, это конечно ваше дело, но я бы  не стал помогать тупой блондинке(если это вообще она)
которая даже не потрудилась отредактировать текст выданного ей задания оно просто:
 "я просто скопирывала так!!!!"(с)elena1991
Влепить бы ей RO на недельку или  банить таких индивидов


Этот ответ добавлен с нового Винграда - http://vingrad.com
PM MAIL   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "C/C++: Для новичков"
JackYF
bsa

Запрещается!

1. Публиковать ссылки на вскрытые компоненты

2. Обсуждать взлом компонентов и делиться вскрытыми компонентами

  • Действия модераторов можно обсудить здесь
  • С просьбами о написании курсовой, реферата и т.п. обращаться сюда
  • Вопросы по реализации алгоритмов рассматриваются здесь


Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, JackYF, bsa.

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | C/C++: Для новичков | Следующая тема »


 




[ Время генерации скрипта: 0.0570 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.