Другие языки программирования и технологии
Turbo Pascal 7.0 помогите пожалуйста!!!
Помогите пожалуйста!!!!Заранее всем огромное спасибо)))))))))Ввести число. Вывести строку, представляющую собой запись этого числа в шестнадцатиричной системе ичисления.Проблема в том, что в школе мы не проходили эту системы ичисления, и я даже не знаю что это такое!!!!Если можете объяснити пожалуйста!!!
Доброго времени суток.
Здесь все просто. Обычно мы пользуемся десятичной системой в которой для обозначения любого числа достаточно 10 цифр (от 0 до 9). Аналогично, в 16-ричной системе потребуется 16 цифр. 10 уже есть, это 0..9, а в качестве остальных 6 принято использовать буквы латинского алфавита от A до F. Т. е. таблица перевода такая.
0 - 0
1 - 1
....
9 - 9
10 - A
11 - B
12 - C
13 - D
14 - E
15 - F
В шестнадцатиричной системе числа записываются строками. Преобразовать число из десятичной в шестнадцатиричную систему можно с помощью такого массива
const DecToHex : array[0..15] of Char = ('0','1','2','3','4','5','6','7','8','9','A','B','C','D','E','F');
где индексом является десятичное число, а элементом массива - соответствующее ему шестнадцатиричное. Сам процесс преобразования представляет собой последовательное делени числа на 16 и запись соответствующих остатков от деления в виде шестнадцатиричных цифр справа налево.
Это легко реализуется таким циклом
S := '';
while n > 0 do begin
S := DecToHex[n mod 16] + S; {получаем остаток от деления числа на 16 и записываем соотв. символ}
n := n div 16; {делим число на 16}
end;
Удачи!
Здесь все просто. Обычно мы пользуемся десятичной системой в которой для обозначения любого числа достаточно 10 цифр (от 0 до 9). Аналогично, в 16-ричной системе потребуется 16 цифр. 10 уже есть, это 0..9, а в качестве остальных 6 принято использовать буквы латинского алфавита от A до F. Т. е. таблица перевода такая.
0 - 0
1 - 1
....
9 - 9
10 - A
11 - B
12 - C
13 - D
14 - E
15 - F
В шестнадцатиричной системе числа записываются строками. Преобразовать число из десятичной в шестнадцатиричную систему можно с помощью такого массива
const DecToHex : array[0..15] of Char = ('0','1','2','3','4','5','6','7','8','9','A','B','C','D','E','F');
где индексом является десятичное число, а элементом массива - соответствующее ему шестнадцатиричное. Сам процесс преобразования представляет собой последовательное делени числа на 16 и запись соответствующих остатков от деления в виде шестнадцатиричных цифр справа налево.
Это легко реализуется таким циклом
S := '';
while n > 0 do begin
S := DecToHex[n mod 16] + S; {получаем остаток от деления числа на 16 и записываем соотв. символ}
n := n div 16; {делим число на 16}
end;
Удачи!
Виндовскиц калькулятор переставь в эту систему )
не знаю как в паскале в делфи есть функция inttohex
Похожие вопросы
- Для тех кто разбирается в Turbo Pascal 7.0 помогите плиз))))
- turbo pascal 7.0 Определить принадлежность к области точек с заданными координатами!!!
- turbo pascal 7.0!
- Turbo pascal 7.0,задача
- В чём разница С++,С#,Turbo Pascal 7.0!И что лучше и легче?
- Для чего в школах преподают Turbo Pascal 7.0?
- Какой язык програмирования выбрать? Уже заканчиваю изучение Turbo pascal 7.0, какой изучать потом? Напишите поконкретнее
- Как вставить текст в Turbo Pascal 7.1???
- Помогите с Pascal 7.0!Кто чем может!
- Подскажите пожалуйста Turbo Pascal 7. Создал