![]() |
|
|
Регистрация | << Правила форума >> | FAQ | Пользователи | Календарь | Поиск | Сообщения за сегодня | Все разделы прочитаны |
![]() |
|
Опции темы | Поиск в этой теме | Опции просмотра |
#1
|
|||
|
|||
![]() Доброго времени суток, как можно реализовать DecToBin калькулятор на delphi? в интернете искал, не нашел. Обьясню: есть 2 edit'та и кнопка допустим вводим число 37 в первый, и надо чтоб во 2 edit'е появлялся ответ
в 2 системе (10 0101), и на оборот. Заранее спасибо) Желательно код))) ![]() |
#2
|
||||
|
||||
![]() Сдвиги и битовые операции. Простенький цикл из shl и and.
Что конкретно не получается сделать? А за готовым кодом не сюда писать надо, а в спец разделы. jmp $ ; Happy End! The Cake Is A Lie. |
#3
|
|||
|
|||
![]() Цитата:
|
#4
|
||||
|
||||
![]() Цитата:
Цитата:
Для этого есть разделы "код на шару!" и "Работа". jmp $ ; Happy End! The Cake Is A Lie. |
#5
|
|||
|
|||
![]() Цитата:
теперь вы можете с кодом помочь? |
#6
|
||||
|
||||
![]() Цитата:
Встроенных функций перевода в двоичную систему - в дельфи нет. Но можно написать свою. Или взять готовую. Гуглим "delphi превратить число в двоичное", находим, например http://otvet.mail.ru/question/23910910 Берем оттуда функцию, дописываем к ее заголовку "TForm1." и вставляем в код unit1.pas: Код:
function TForm1.IntToBinary(x: integer): string; var str: string; begin str:=''; while x>1 do begin if x mod 2=0 then str:='0'+str else str:='1'+str; x:=x div 2; end; if x=0 then str:='0'+str else str:='1'+str; Result:=str; end; Пусть на форме у нас Edit1, Edit2 и Button1. В событии по клику для Button1 пишем: Код:
Edit2.Text := IntToBinary(StrToInt(Edit1.Text)); И еще вверху unit1.pas, там где все заголовки функций юнита описываются (включая заголовок нашей функции обработки нажатия на кнопку "procedure Button1Click(Sender: TObject);"), надо добавить заголовок функции нашей самодельной, но уже без "TForm1.": Код:
type TForm1 = class(TForm) Button1: TButton; procedure Button1Click(Sender: TObject); function IntToBinary(x: integer): string; private { Private declarations } public { Public declarations } end; Итоговый код Unit1.pas (Delphi 7): Код:
unit Unit1; interface uses Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, StdCtrls; type TForm1 = class(TForm) Button1: TButton; Edit1: TEdit; Edit2: TEdit; procedure Button1Click(Sender: TObject); function IntToBinary(x: integer): string; private { Private declarations } public { Public declarations } end; var Form1: TForm1; implementation {$R *.dfm} function TForm1.IntToBinary(x: integer): string; var str: string; begin str:=''; while x>1 do begin if x mod 2=0 then str:='0'+str else str:='1'+str; x:=x div 2; end; if x=0 then str:='0'+str else str:='1'+str; Result:=str; end; procedure TForm1.Button1Click(Sender: TObject); begin Edit2.Text := IntToBinary(StrToInt(Edit1.Text)); end; end. |
Этот пользователь сказал Спасибо blackstrip за это полезное сообщение: | ||
MrZerO (07.09.2014)
|
#7
|
|||
|
|||
![]() Цитата:
|