![]() |
|
Модераторы: Daevaorn |
![]()
|
|
| powerfox |
|
|||
![]() I wanna fork() ![]() ![]() ![]() ![]() Профиль Группа: Комодератор Сообщений: 3990 Регистрация: 1.10.2005 Где: Санкт-Петербург Репутация: 2 Всего: 97 |
У Страуструпа есть интересное упражнение - только не пойму метод шифрования:
Программа читает из cin и записывает в cout, кодом соответствующему 'c' будет c^ket[i], где key - строка, переданная в качестве аргумента ком. стр. Программа циклически перебирает символы из key, пока есть ввод. Приблизительно:
Получается непечатаемый символ У меня есть символ c типа char, представление его в таблице будет int( с ). А как представить в двоичном и двоичном виде? Может хорировать надо двоичные представления? |
|||
|
||||
| Void |
|
||||
![]() λcat.lolcat ![]() ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 2206 Регистрация: 16.11.2004 Где: Zürich Репутация: 40 Всего: 173 |
Ну и правильно
XOR всегда оперирует с побитовым представлением. -------------------- “Coming back to where you started is not the same as never leaving.” — Terry Pratchett |
||||
|
|||||
| powerfox |
|
|||
![]() I wanna fork() ![]() ![]() ![]() ![]() Профиль Группа: Комодератор Сообщений: 3990 Регистрация: 1.10.2005 Где: Санкт-Петербург Репутация: 2 Всего: 97 |
Для чего программа шифрования, создающая пустоту?
Не нашёл в разделе лит-ры: упражнения для С++(сборник задач в электронном виде) |
|||
|
||||
| Void |
|
||||
![]() λcat.lolcat ![]() ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 2206 Регистрация: 16.11.2004 Где: Zürich Репутация: 40 Всего: 173 |
Например, так:
-------------------- “Coming back to where you started is not the same as never leaving.” — Terry Pratchett |
||||
|
|||||
| powerfox |
|
|||
![]() I wanna fork() ![]() ![]() ![]() ![]() Профиль Группа: Комодератор Сообщений: 3990 Регистрация: 1.10.2005 Где: Санкт-Петербург Репутация: 2 Всего: 97 |
Вы, не могли бы пояснить шестую строку.
|
|||
|
||||
| Void |
|
|||
![]() λcat.lolcat ![]() ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 2206 Регистрация: 16.11.2004 Где: Zürich Репутация: 40 Всего: 173 |
powerfox
hex, setw и setfill - это так называемые манипуляторы. Среди перегруженных вариантов оператора << класса std::ostream есть такой, который принимает ф-цию, модифицирующую состояние потока. Применение манипулятора выглядит как ввод/вывод какого-то значения, но на деле устанавливает некие флаги. Эта строчка указывает, что целые числа будут выводиться в шестандцатеричном формате, причем вывод должен занимать не менее двух символов, и при необходимости дополняться слева символом '0'. Поэтому программа выведет "0f". Коль скоро ты читаешь Страуструпа, все это подробно описано в главе 21.4 (3-е издание). -------------------- “Coming back to where you started is not the same as never leaving.” — Terry Pratchett |
|||
|
||||
| powerfox |
|
|||
![]() I wanna fork() ![]() ![]() ![]() ![]() Профиль Группа: Комодератор Сообщений: 3990 Регистрация: 1.10.2005 Где: Санкт-Петербург Репутация: 2 Всего: 97 |
Спасибо Void. Просто я до той главы не дошёл, а в упражнении потребовалось.
|
|||
|
||||
| megabist |
|
|||
![]() Mart Slaaf ![]() ![]() Профиль Группа: Участник Сообщений: 455 Регистрация: 3.4.2006 Где: Мск Репутация: нет Всего: 31 |
А нельзя ли пояснить как тоже самое для билдера...
тоесть вывести char *ch="hello"; Label1->Caption="ch[0]"; // ну или что-то типа того, здесь он должен выводить ASCI значение данного символа. -------------------- Don't panic! Жди, и Фатум тебя приведёт... |
|||
|
||||
| Earnest |
|
|||
![]() Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Экс. модератор Сообщений: 5962 Регистрация: 17.6.2005 Где: Рязань Репутация: 53 Всего: 183 |
Билдер - это тоже C++, и та же стандартная библиотека.
-------------------- ... |
|||
|
||||
| megabist |
|
|||
![]() Mart Slaaf ![]() ![]() Профиль Группа: Участник Сообщений: 455 Регистрация: 3.4.2006 Где: Мск Репутация: нет Всего: 31 |
в основном непонятно, куда тут приписывать хекс и тому подобное.
-------------------- Don't panic! Жди, и Фатум тебя приведёт... |
|||
|
||||
| likehood |
|
|||
|
666 ![]() ![]() Профиль Группа: Участник Сообщений: 536 Регистрация: 21.12.2005 Репутация: 8 Всего: 24 |
можно так:
Это сообщение отредактировал(а) baronp - 10.10.2006, 09:53 |
|||
|
||||
| megabist |
|
|||
![]() Mart Slaaf ![]() ![]() Профиль Группа: Участник Сообщений: 455 Регистрация: 3.4.2006 Где: Мск Репутация: нет Всего: 31 |
[C++ Error] Unit1.cpp(165): E2268 Call to undefined function 'sprintf'
-------------------- Don't panic! Жди, и Фатум тебя приведёт... |
|||
|
||||
| bsa |
|
|||
![]() Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 9185 Регистрация: 6.4.2006 Где: Москва, Россия Репутация: 63 Всего: 196 |
|
|||
|
||||
| megabist |
|
|||
![]() Mart Slaaf ![]() ![]() Профиль Группа: Участник Сообщений: 455 Регистрация: 3.4.2006 Где: Мск Репутация: нет Всего: 31 |
Так и последнее, несмотря и на что не могу онять, как ограничить размер строки до двух??
-------------------- Don't panic! Жди, и Фатум тебя приведёт... |
|||
|
||||
| bsa |
|
|||
![]() Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 9185 Регистрация: 6.4.2006 Где: Москва, Россия Репутация: 63 Всего: 196 |
Чего?!? Что значит "ограничить размер"? Уменьшить? У класса AnsiString есть метод SetLength, который изменяет размер строки.
|
|||
|
||||
![]()
|
| Правила форума "С++:Общие вопросы" | |
|
|
Добро пожаловать!
Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, Earnest Daevaorn |
| 0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
| 0 Пользователей: | |
| « Предыдущая тема | C/C++: Общие вопросы | Следующая тема » |
|
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |