19.02.2019, 21:16 [+3 UTC]
в нашей команде: 3 396 чел. | участники онлайн: 8 (рекорд: 21)

:: РЕГИСТРАЦИЯ

задать вопрос

все разделы

правила

новости

участники

доска почёта

форум

блоги

поиск

статистика

наш журнал

наши встречи

наша галерея

отзывы о нас

поддержка

руководство

Версия системы:
7.69 (10.02.2019)
JS-v.1.33 | CSS-v.3.35

Общие новости:
10.02.2019, 21:59

Форум:
16.02.2019, 15:03

Последний вопрос:
19.02.2019, 18:36
Всего: 148779

Последний ответ:
19.02.2019, 15:57
Всего: 257802

Последняя рассылка:
19.02.2019, 20:45

Писем в очереди:
0

Мы в соцсетях:

Наша кнопка:

RFpro.ru - здесь вам помогут!

Отзывы о нас:
09.03.2011, 19:51 »
Сергей К.
Спасибо за развернутый ответ! [вопрос № 182377, ответ № 266165]
21.09.2009, 23:13 »
Dimon4ik
Спасибо за помощь. Отличный ответ. [вопрос № 172418, ответ № 254471]
05.12.2010, 21:33 »
Барон Александр Михайлович
Я согласен с вашим ответом. Я пытался найти четкое обоснование того, что не требуется согласие остальных соарендаторов на внесение изменения в договор аренды со множественностью лиц на стороне арендатора. Это следует из толкования норм права в совокупности. Из-за отсутствия этого согласия юристы Росреестра грозятся отказать в регистрации доп. соглашения. Попросил отказать письменно, чтобы обжаловать в суд. Посмотрим, что произойдет на самом деле. [[url=http://rfpro.ru/ques tion/181051]вопрос № 181051, отв..

РАЗДЕЛ • Pascal / Delphi / Lazarus

Создание программ на языках Pascal, Delphi и Lazarus.

[администратор рассылки: Зенченко Константин Николаевич (Старший модератор)]

Лучшие эксперты в этом разделе

Зенченко Константин Николаевич
Статус: Старший модератор
Рейтинг: 429
zdwork
Статус: 1-й класс
Рейтинг: 111
puporev
Статус: Профессионал
Рейтинг: 105

Перейти к консультации №:
 

Консультация онлайн # 66350
Раздел: • Pascal / Delphi / Lazarus
Автор вопроса: Sarymian
Отправлена: 10.12.2006, 14:34
Поступило ответов: 1

Здравствуйте Эксперты.
Дана строка (перевод в Integer не вызывает проблем). Строка находится в Edit.text
Она представляет собой число в двоичной СС. Нужно перевести число в ВОСЬМЕРИЧНУЮ (8) СС, при этом нельзя использовать промежуточный перевод в десятичную(10) СС.
помогите плиз.

Состояние: Консультация закрыта

Ответ # 130878 от Вадим Исаев ака sir Henry (Мастер-Эксперт)

Здравствуйте, Sarymian!
Перевод в десятичную систему только усложнит задачу. :)
1. Разбиваете строку на триады, причем начинаете разбивку с конца.
2. Если в последней разбивке до триады не хватает одной или двух позиций, то дополняете нулями до триады.
3. Можно составить массив соответствия двоичного числа восьмеричному:
ar: array[0..7];
ar[1]:='000';
ar[1]:='001';
ar[2]:='010';
ar[3]:='011';
ar[4]:='100';
ar[5]:='101';
ar[6]:='110';
ar[7]:='111';
4. Посылаете каждую триаду в функцию, в которой в цикле проходит поиск в массиве:
Function BinToOct(s: string): string;
Var
i: integer;
Begin
For i:=0 To 7 do
If s=ar[i] Then
Begin
Result:=IntToStr(i);
Break;
End;
End;
5. В главной процедуре теперь только остается конкатенировать возвращаемое из функции и, если нужно, перевести в числовой формат.


Консультировал: Вадим Исаев ака sir Henry (Мастер-Эксперт)
Дата отправки: 10.12.2006, 17:58

Рейтинг ответа:

0

[подробно]

Сообщение
модераторам

Отправлять сообщения
модераторам могут
только участники портала.
ВОЙТИ НА ПОРТАЛ »
регистрация »

Мини-форум консультации № 66350
Сухомлин Кирилл Владимирович

# 1

= общий = | 12.12.2006, 09:07

А я бы сделал так:

const
 ar: array['0'..'1', '0'..'1', '0'..'1'] of char = ((('0', '1'), ('2', '3')), (('4', '5'), ('6', '7')));
var
 q,s: string;
 i,j: integer;

begin
 s := Edit1.Text;
 if (length(s) mod 3) <> 0 then s := '0' + s;
 if (length(s) mod 3) <> 0 then s := '0' + s;
 for i := length(s) downto 1 do begin
 j := i*3;
 q := q + ar[s[j-2], s[j-1], s[j]];
 end;
end;
Триады не передаются функции а прямо преобразовываются в нужные символы через массив.

 

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

Яндекс Rambler's Top100

главная страница | поддержка | задать вопрос

Время генерирования страницы: 0.14889 сек.

© 2001-2019, Портал RFPRO.RU, Россия
Калашников О.А.  |  Гладенюк А.Г.
Версия системы: 7.69 от 10.02.2019
Версия JS: 1.33 | Версия CSS: 3.35