Лидеры рейтинга

ID: 401284

Михаил Александров

Советник

376

Россия, Санкт-Петербург


ID: 259041

Алексеев Владимир Николаевич

Мастер-Эксперт

357

Россия, пос. Теплоозёрск, ЕАО


ID: 401888

puporev

Профессор

215

Россия, Пермский край


ID: 405338

vovaromanov.jr

1-й класс

125


ID: 400669

epimkin

Профессионал

111


ID: 242862

Hunter7007

Мастер-Эксперт

29

Россия, Омск


ID: 137394

Megaloman

Мастер-Эксперт

25

Беларусь, Гомель


8.10.2

13.10.2021

JS: 2.10.2
CSS: 4.6.0
jQuery: 3.6.0
DataForLocalStorage: 2021-10-20 22:46:01-standard


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

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

Консультация онлайн # 160427

Раздел: Pascal / Delphi / Lazarus
Автор вопроса: Челпанников Алексей Алексеевич
Дата: 14.02.2009, 09:15 Консультация закрыта
Поступило ответов: 2

Примногоуважаемые эксперты, помогите ПОЖАЛУЙСТА!!! Нужно написать программу вычитания чисел в 16-ричной системе счисления под Паскаль ABC. Использование оператора GOTO не допускается. Оформить в виде ПОДПРОГРАМ... Предидущий ответ не подходит не по виду, не по построению.

Program aaa;

type....

var....

procedure (var...; .....);

begin....

И так далее. ЗАРАНЕЕ СПАСИБО,
исполненный таки надеждой, Алексей.

Приложение:

Ответ # 243781 от Boriss
Здравствуйте, Челпанников Алексей Алексеевич!
Наконец-то исправил усе! Торопился - времени меньше чем нет, но вроде работает правильно
Но успеваю написать вариант только с положительными числами, хотя ввод отрицательных организовать несложно (хотя что такое будет -FFFF?)

Приложение:


Boriss

Посетитель
16.02.2009, 16:01
Здравствуйте, Челпанников Алексей Алексеевич!

Программа работающая в 16-ой СС(ввод-вывод), в приложении(под pascalABC).
По функциям:
HexToBin рекурсивная функция преобразовывающая число в 16-ой системе в двоичную запись.
inputHex подпрограмма вводит число в 16-ой системе и возвращающая число в двоичной, запись двоичного числа производится в обратном порядке, с помощью этого достигается выравнивание чисел, т.е. разряды с одинаковым весом имеют одинаковые позиции в строке.
outputHex рекурсивная процедура выводит число в 16-ой системе. При рекурсии каждый раз обрабатывается одна 16-я цифра.
doSummaBin процедура суммирования двух двоичных чисел.
rangeBin процедура выравнивает введенные числа на размер определенный в разделе констант.
convertBin процедура перевода двоичного числа в дополнительный код.
Рабочие числа в программе - двоичные, а ввод и вывод производится в 16-ой системе(сокращенная запись двоичных чисел), практически как и в самом процессоре.

Удачи!

Приложение:


Зенченко Константин Николаевич

Старший модератор
16.02.2009, 16:03
Мини-форум консультации # 160427
неизвестный

1

= общий =    14.02.2009, 09:58

Ответ тоже в 16 СС. И еще, поясните пожалуйста что это за выражения в предыдущей программе: WhereY и ch = #13.

Boriss

2

= общий =    14.02.2009, 12:19

WhereY - это функция из модуля CRT нормального Паскаля. Определяет номер строки, где находится курсор
ch = #13; - каждый символ имеет свой код. Знак "решетка" = # значит в Паскале "символ с кодом 13". Это код клавиши ENTER.
То есть, если нажата клавиша ENTER, то ввод прекращается
Такой код был использован, чтобы была программная возможность коррекции ввода
И еще в минифоруме я давал вариант это функции, где это не используется
Можно предложить еще несколько вариантов правильности ввода.
И ЕЩЕ!!! В PascalABC?

неизвестный

3

= общий =    14.02.2009, 13:45

Да. Смысл в том, что как вы говорите "в нормальном" паскале много всего того, что мы просто не изучали.

Boriss

4

= общий =    14.02.2009, 14:07

Нет проблем - пишу в ём. Но отрывают постоянно ...
ЗЫ: если не секрет, то где в этом Паскале учат? Я смотрю, это самодельная российская .... изделие

неизвестный

5

= общий =    14.02.2009, 14:20

Да нет, в общем, смысл как раз в том что он понимает, turbo включает в себя уйму того, чего мы не знаем((((

неизвестный

6

= общий =    15.02.2009, 01:49

Ау, ужо горит smile Оооочень.... smile

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

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

puporev

Профессор

Рейтинг: 215

Зенченко Константин Николаевич

Старший модератор

Рейтинг: 164

Gluck

8-й класс

Рейтинг: 60

Лысков Игорь Витальевич

Мастер-Эксперт

Рейтинг: 0

Асмик Гаряка

Советник

Рейтинг: 0

Орловский Дмитрий

Мастер-Эксперт

Рейтинг: 0