Преобразование чисел из римской системы в десятичную и обратно - Pascal
Формулировка задачи:
Составить программу преобразования натуральных чисел из римской системы счисления в десятичную и обратно.
Вообще не понимаю как делать
Решение задачи: «Преобразование чисел из римской системы в десятичную и обратно»
textual
Листинг программы
uses crt,ar_rim;
var ar:word;
rm:string;
k:char;
begin
clrscr;
repeat
clrscr;
writeln('Направление перевода 1-арабские-римские 2-римские-араьские другое-выход');
readln(k);
case k of
'1':begin
writeln('Arabskoe chislo=');
readln(ar);
writeln('Rimskoe chislo=',ArToRim(ar));
readln;
end;
'2':begin
Writeln ('Liczba rzymska');
Readln(rm);
Writeln ('Arabska = ',RimToAr(rm));
Readln;
end;
else exit;
end;
until not (k in ['1','2']);
end.
Объяснение кода листинга программы
- Подключение библиотеки
crtдля работы с функциями консольного ввода-вывода иar_rimдля работы с преобразованием чисел. - Объявление переменных:
ar, тип данных word (целое без знака) - для хранения арабского числаrm, тип данных string (строка) - для хранения римского числаk, тип данных char (символ) - для выбора направления перевода (1 - арабское в римское, 2 - римское в арабское, другой символ - выход)
- Очистка экрана.
- Цикл повторяется до тех пор, пока пользователь не выберет выход (не введет другой символ).
- Пользователь выбирает направление перевода.
- В зависимости от выбора пользователя выполняются соответствующие действия:
- Если выбрано
1, то программа запрашивает арабское число, переводит его в римскую систему и выводит результат. - Если выбрано
2, то программа запрашивает римское число, переводит его в арабскую систему и выводит результат. - Иначе (если выбран другой символ) происходит выход из программы.
- Если выбрано
- Цикл повторяется, пока пользователь не выберет выход.