
Программа перевода из 10 сс в 16 сс на Паскале.(как можно проще, используя функции,
процедуры...)Заранее спасибо.

Ответы на вопрос

d, n: longint;
h: string;
begin
write('n? ');
readln(n);
repeat
d := n mod 16;
if d < 10 then
h := chr(ord('0') + d) + h
else
h := chr(ord('A') - 10 + d) + h;
n := n div 16;
until n = 0;
writeln(h, 'h');
end



Вот пример программы на языке Pascal, которая выполняет перевод числа из 10-й системы счисления в 16-ю систему счисления:
```pascal program DecimalToHexadecimal; uses crt;
var decimalNumber, remainder: integer; hexadecimalNumber: string;
procedure ConvertToHexadecimal(decimal: integer); begin hexadecimalNumber := ''; while decimal > 0 do begin remainder := decimal mod 16; case remainder of 10: hexadecimalNumber := 'A' + hexadecimalNumber; 11: hexadecimalNumber := 'B' + hexadecimalNumber; 12: hexadecimalNumber := 'C' + hexadecimalNumber; 13: hexadecimalNumber := 'D' + hexadecimalNumber; 14: hexadecimalNumber := 'E' + hexadecimalNumber; 15: hexadecimalNumber := 'F' + hexadecimalNumber; else hexadecimalNumber := IntToStr(remainder) + hexadecimalNumber; end; decimal := decimal div 16; end; end;
begin clrscr; write('Enter a decimal number: '); readln(decimalNumber); ConvertToHexadecimal(decimalNumber); writeln('Hexadecimal number: ', hexadecimalNumber); readln; end. ```
Программа начинается с объявления необходимых переменных и процедуры `ConvertToHexadecimal`, которая выполняет перевод числа из 10-й системы счисления в 16-ю систему счисления. Внутри процедуры используется цикл `while`, который выполняется, пока значение переменной `decimal` больше нуля. Внутри цикла происходит вычисление остатка от деления числа на 16 и добавление соответствующей цифры в строку `hexadecimalNumber` с помощью оператора `case`. Затем значение переменной `decimal` делится на 16 и цикл повторяется до тех пор, пока `decimal` не станет равным нулю.
В основной части программы осуществляется ввод числа с клавиатуры, вызов процедуры `ConvertToHexadecimal` и вывод результата на экран.
Надеюсь, данное объяснение поможет вам понять программу. Если у вас возникнут какие-либо вопросы, не стесняйтесь задавать.


Топ вопросов за вчера в категории Информатика
Последние заданные вопросы в категории Информатика
-
Математика
-
Литература
-
Алгебра
-
Русский язык
-
Геометрия
-
Английский язык
-
Химия
-
Физика
-
Биология
-
Другие предметы
-
История
-
Обществознание
-
Окружающий мир
-
География
-
Українська мова
-
Информатика
-
Українська література
-
Қазақ тiлi
-
Экономика
-
Музыка
-
Право
-
Беларуская мова
-
Французский язык
-
Немецкий язык
-
МХК
-
ОБЖ
-
Психология
-
Физкультура и спорт
-
Астрономия
-
Кыргыз тили
-
Оʻzbek tili