1. Заголовок темы должен быть информативным. В противном случае тема удаляется ... 2. Все тексты программ должны помещаться в теги [code=pas] ... [/code], либо быть опубликованы на нашем PasteBin в режиме вечного хранения. 3. Прежде чем задавать вопрос, см. "FAQ", если там не нашли ответа, воспользуйтесь ПОИСКОМ, возможно такую задачу уже решали! 4. Не предлагайте свои решения на других языках, кроме Паскаля (исключение - только с согласия модератора). 5. НЕ используйте форум для личного общения, все что не относится к обсуждению темы - на PM! 6. Одна тема - один вопрос (задача) 7.Проверяйте программы перед тем, как разместить их на форуме!!! 8.Спрашивайте и отвечайте четко и по существу!!!
Двоично-десятичная форма, перевести в двоично-десятичную форму
Помогите пожалуйста! Я даже толком не поняла задание но оно звучит так: Исходная информация: натуральное число записано в виде строки десятичных цифр(можно предполагать, что оно размещается в формате longint). Задание: перевести это число в двоично-десятичную форму и вывести в виде строки(каждый соответствует двум десятичным цифрам). Подскажите пожалуйста я буду вам очень благодарна! Заранее спасибо!
Вероника, не совсем понятно, что именно тебе нужно получить... Как вариант могу привести функцию, получающую число (LongInt), и возвращающую визуальное представление BCD-числа, т.е. то, как выглядят сами биты этого двоично-десятичного числа:
function get_bcd_visual(n: longint): string; const quart: array['0' .. '9'] of string[4] = ('0000', '0001', '0010', '0011', '0100', '0101', '0110', '0111', '1000', '1001'); delim: array[boolean] of string = ('', ' '); var s: string; b: boolean; begin s := ''; b := true; while n > 0 do begin s := quart[chr(48 + (n mod 10))] + delim[b] + s; n := n div 10; b := not b; end; if not b then s := quart['0'] + s; get_bcd_visual := s; end;
begin writeln( get_bcd_visual(12345) ); end.
Если нужно получить само BCD-число, то непонятно, как будет определяться правильность работы программы, т.к. упакованное число 23, например, будет выглядеть как символ с кодом 35, т.е. "#"