![]() |
1. Заголовок или название темы должно быть информативным !
2. Все тексты фрагментов программ должны помещаться в теги [code] ... [/code] или [code=pas] ... [/code].
3. Прежде чем задавать вопрос, см. "FAQ" и используйте ПОИСК !
4. НЕ используйте форум для личного общения!
5. Самое главное - это раздел теоретический, т.е. никаких задач и программ (за исключением небольших фрагментов) - для этого есть отдельный раздел!
![]() |
Trofimov Artur |
![]()
Сообщение
#1
|
Гость ![]() |
Товарищи!!!
Помогите пожалуйста. До сессии мне ныжно написать программу перевода числа из одной системы счисления в другую (bin, oct, dec, hex). Сам почему-то не могу :о( Не получается. Помогите пожалуйста. Все должно выглядеть примерно так: Сначала забается из какой сис-мы ныжно совершить перевод, а потом в какую. Далее выводится результат. Или так: Вводится число в определенной сис-ме счисления и выводется его значение в других сис-мах. |
![]() ![]() |
mj |
![]()
Сообщение
#2
|
![]() Adminь ![]() ![]() ![]() ![]() Группа: Администраторы Сообщений: 803 Пол: Мужской Реальное имя: Евгений Репутация: ![]() ![]() ![]() |
Вот клёвенький пример
Program Perevod; Uses Crt; Const P1='Перевод из '; { константы для начального меню } s:array [1..7] of string[50]=(p1+'десятеричного кода в двоичный.', p1+'двоичного кода в десятеричный.', p1+'десятеричного кода в шестнадцатиричный.', p1+'шестнадцатиричного кода в десятеричный.', p1+'двоичного кода в шестнадцатиричный.', p1+'шестнадцатиричного кода в двоичный.', ' ESC - ВЫХОД В DOS'); Var Promeg,Chast:Longint; Znach,j:Integer; Klav:Char; i,Stroka,Isx,Kon,y,Kol,Help:Byte; Keys: Set of '0'..'F'; a: Array [1..255] of Char; Otv,Pom: string; Procedure Zast; { процедура вывода меню } begin Window(1,1,80,24); { выделить окно 80х24 } ClrScr; { очистить окно } TextColor(15); { установить цвет - белый } FOR I:=1 TO 7 do begin { цикл по строкам } GoToXY (15,I*2); Write (s[i]); { формирование меню } end; end { zast }; { конец процедуры меню } Function Stepen (Chis,St: Byte): Longint; { функция возведения в степень } var c: Byte; Res: longint; begin Res:=1; For c:=1 to st do Res:=Res*chis; Stepen:=Res; { присвоение функции значения } End { Stepen }; { конец функции возведения в сепень } Begin { НАЧАЛО ОСНОВНОЙ ПРОГРАММЫ } y:=1; { y - текущая строка в меню } Zast; { вывести меню } Repeat { цикл для перемещения в меню } TextColor(13); GoToXY (13,y*2); Write(Chr(16)); { вывести метку текущей строки меню } klav:=ReadKey; { считывание клавиши в klav } GoToXY (13,y*2); Write(' '); { стирание старой метки текущей строки } if Ord(Klav)=72 then if y > 1 then y:=y-1 else y:= 7; { если клавиша ВВЕРХ } if Ord(Klav)=80 then if y < 7 then y:=y+1 else y:= 1; { если клавиша ВНИЗ } if Ord(Klav)=27 then begin y:=7; klav:=Chr(13) end; { если клавиша ESC } if (Ord(Klav)=13) and (y<7) then begin { если клавиша ВВОД не на выходе } ClrScr; { очистить экран } TextCOLOR (13); GoToXY (20, 1); Write (s[y]); { вывести название перевода } TextCOLOR (10); GoToXY (31,24); Write ('ESC - ВЫХОД В МЕНЮ'); { вывести клавишу для выхода } TextColor(15); { поменять цвет - белый } Window(1,2,80,23); { установить окно со 2 по 23 строки } Stroka:=2; { текущая строка } |
![]() ![]() |
![]() |
Текстовая версия | 26.07.2025 8:11 |