Форум программистов, компьютерный форум CyberForum.ru

Странное поведение (сдвиг) - C++

Восстановить пароль Регистрация
Другие темы раздела
C++ Соединение отрезков http://www.cyberforum.ru/cpp-beginners/thread92988.html
Дан массив целых чисел x..x, рассматриваемый как соединение двух его отрезков: начала x..x длины m и конца x..x длины n. Не использую дополнительных массивов переставить начало и конец.(число действий порядка m+n);
C++ The variable 'pp' is being used without being initialized В visual C++ 2008 EE создаю всё как надо ,в файле .cpp пишу вот такой текст программы: #include<iostream> #include<cmath> using namespace std; int main(){ double principal,intrate,pp,numyers,peyment,numer,denom,b,e; setlocale( LC_ALL,"Russian" ); http://www.cyberforum.ru/cpp-beginners/thread92966.html
C++ Что это означает?
if (!fgets(str,STRLEN, stdin)) и еще for(cnt=0,p=strtok(str,SPCHARS); p!=NULL;p= strtok(NULL,SPCHARS)) прокоментируете пожалуйста if(*p == *(p+strlen(p)-1)) ++cnt; плиззз
Прога на СИ!1!! C++
Распечатать введенную строку, удалив из нее символы, не являющиеся буквами и цифрами, и заменив каждую цифру на ‘*’. Очень нужна помощь кто может помочь буду благодарен... можно на почту или тут...
C++ Фибоначчи http://www.cyberforum.ru/cpp-beginners/thread92952.html
14. В заданном целочисленном массиве распечатать те элементы, порядковые номера которых – числа Фибоначчи, а также определить количество перемен знаков
C++ У меня контрольная(((( на с++ !Определить, сколько слов во введенном тексте начинаются и оканчиваются одной и той же буквой. Слова разделены пробелами!. подробнее

Показать сообщение отдельно
Alex83
 Аватар для Alex83
13 / 13 / 0
Регистрация: 06.02.2010
Сообщений: 19
07.02.2010, 03:21  [ТС]     Странное поведение (сдвиг)
Да ,конечно же.
Мне нужен кусок кода, который введеное значение (0<= число <=127) переводит в последовательность бит , его составляющих... НО левый("старший") бит идет первым.
Так , бит за битом переходим к выбору последовательности действий.
если 0 - то одни ;если 1-ца - другие...
Я сделал так:
выполняю логическое "и" по маске 128(извините , если не так выражаюсь)-т.е с 6-м битом(первый ведь 0 ?) -- & -- со значением адреса , которое с каждой итерацией "сдвигается" влево.
Естественно , что если подставленный бит ,в уже смещенном адресе, установлен .... получаем еденицу на опреции сранения...(у меня в ифах) и выполняем соответств. действия.Так и с нулем.

Я понимаю , что можно и проще - например делить 128 на 2 ,пока >1 в каждой итерации и будем получать новую маску.(у меня всего 7 бит надо выделить =7 масок) Тогда адрес не трогаем... опять сравниваем...

Так 7(семь =)) раз - такова специфика задачи (я выше писал про память на 93с46) .
Но , я не могу понять , что не так ! Убейте меня пожалуйста.
Но сперва обьясните. Скомпилим пример товарища выше.... Работает !!!!
меняем размерность адреса (8,7, 6 или5).... Работает !!!! В цикле (просто от 0 до Х) подставляем на вход функции разные адреса..... Работает гадина !!!!
Окей. Ставим кусок в код. Шлем адреса и всё снова так , как было с первых строк этой зпопеи.
Скажите ,пожалуйста , как лучше. "Сдвигать" адрес , маску , как ?
 
Текущее время: 15:09. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru