4 / 4 / 0
Регистрация: 09.02.2011
Сообщений: 26
|
||||||
1 | ||||||
задача на C++18.12.2011, 17:17. Показов 1627. Ответов 17
Метки нет (Все метки)
Написать программу, которая получает случайное целое типа int, выводит его двоичное представление на экран. Если в числе встречается последовательность битов 000, программа заменяет её на 0110 (лишние разряды сдвигает влево)
Писать всю программу не обязательно, нужно хотя бы приблизительное направление в котором работать. Заранее спасибо. Добавлено через 44 минуты
с остальным запара...
0
|
18.12.2011, 17:17 | |
Ответы с готовыми решениями:
17
Задача: В некотором государстве ввели компьютерный паспорт гражданина.(задача) Задача на k-тую цифру последовательности, задача на схему Горнера. Задача на перебор вариантов. Задача Л.Эйлера. Про чиновника Первая смешанная задача для волнового уравнения на отрезке (задача о колебаниях ограниченной струны) методом Фурье |
5 / 5 / 2
Регистрация: 17.12.2011
Сообщений: 148
|
|
18.12.2011, 17:33 | 2 |
Я думаю что здесь нужно использовать инструкцыю "if"или "switch" но вполне возможно что я ошыбаюсь 50на50
0
|
4 / 4 / 0
Регистрация: 09.02.2011
Сообщений: 26
|
|
18.12.2011, 17:37 [ТС] | 3 |
я больше к while склоняюсь
пока число не станет кратным 1000 (то есть 8) сдвигать по битово в право потом заменить числа 000 на 0110 и сбросить самый старший единичный бит и все это скорее всего в цикле, на случай если у нас будет две последовательности 000
0
|
4 / 4 / 0
Регистрация: 09.02.2011
Сообщений: 26
|
||||||
18.12.2011, 18:15 [ТС] | 4 | |||||
циклический сдвиг вправо
0
|
4 / 4 / 0
Регистрация: 09.02.2011
Сообщений: 26
|
|
18.12.2011, 19:03 [ТС] | 6 |
она должна искать нули слева столько раз пока все последовательности 000 не исчезнут
то есть: 1 000 000 0 -> 1 0110 000 0 ->0110 000 0-> 0110 0110 0-> 11001100 число генерируются случайно в диапазоне от 0 до 255. (то есть 8 бит)
0
|
18.12.2011, 19:16 | 7 | |||||
Вот на 2-й случай
А почему не сначала ищем нули?
1
|
4 / 4 / 0
Регистрация: 09.02.2011
Сообщений: 26
|
|
18.12.2011, 19:21 [ТС] | 8 |
если вместо ввода а с клавиатуры, вставлять код генерации случайного числа - не компилируется.
да и сам код довольно странно реагирует на числа. или он в десятиричной выводит? сообразил с кодом. благодарю! что на счет случайных чисел?
0
|
18.12.2011, 19:25 | 9 |
Имхо, задание составлено некорректно. Не указано, с какой стороны искать нули. Не сказано, как искать нули. Вот как минимум 4 случая
0000 0100 0000 0000 1000 0110 0001 0011 0110 0000 0100 0000 0000 1000 0110 0001 0110 0110 0000 0100 0000 0000 1011 0000 0001 0110 1100 0000 0100 0000 0000 1011 0000 0001 0110 0110
0
|
4 / 4 / 0
Регистрация: 09.02.2011
Сообщений: 26
|
|
18.12.2011, 19:29 [ТС] | 10 |
00 000 1 000 000
я думаю всё-таки это оптимальный вариант когда всё берется за один раз
0
|
829 / 352 / 64
Регистрация: 30.01.2009
Сообщений: 1,204
|
||||||
18.12.2011, 19:34 | 11 | |||||
1
|
4 / 4 / 0
Регистрация: 09.02.2011
Сообщений: 26
|
|
18.12.2011, 19:34 [ТС] | 12 |
insolent спасибо, но не пойдет такой код
0
|
18.12.2011, 19:36 | 13 | |||||
Ну и мы получим 102, или 0110 0110, если отбросить биты больше 8-го
Прототип примерно такой.
0
|
829 / 352 / 64
Регистрация: 30.01.2009
Сообщений: 1,204
|
|
18.12.2011, 19:38 | 14 |
Sibar, чего не подойдет? Нужно на С?
0
|
4 / 4 / 0
Регистрация: 09.02.2011
Сообщений: 26
|
||||||
18.12.2011, 19:41 [ТС] | 15 | |||||
как то так?
0
|
18.12.2011, 19:47 | 16 | |||||
1
|
4 / 4 / 0
Регистрация: 09.02.2011
Сообщений: 26
|
|
18.12.2011, 19:49 [ТС] | 17 |
результат работы программы
194 - случайное число 154 - число которое получилось после замены 000 на 0110 а вот 10011010А это двоичное представление числа 154. но что за стрелочка? о_О
0
|
18.12.2011, 19:52 | 18 |
Код
soon@bt:~/Desktop$ ./main 194 154 10011010 soon@bt:~/Desktop$
0
|
18.12.2011, 19:52 | |
18.12.2011, 19:52 | |
Помогаю со студенческими работами здесь
18
Задача о размещении весов по ящикам (задача о рюкзаках) Задача Дам или задача Восьми Задача на файл и задача на создание очереди Задача линейного программирования, транспортная задача Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |