Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > IT форум > Помощь студентам
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 16.05.2016, 19:18   #1
Sergey777157
Новичок
Джуниор
 
Регистрация: 08.04.2016
Сообщений: 2
По умолчанию Помоги доделать калькулятор

Код:
unit Unit1; 
interface 
uses 
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, 
Dialogs, StdCtrls; 
type 
TForm1 = class(TForm) 
Edit1: TEdit; 
Button1: TButton; 
Button2: TButton; 
Button3: TButton; 
Button4: TButton; 
Button5: TButton; 
Button6: TButton; 
Button7: TButton; 
Button8: TButton; 
Button9: TButton; 
Button10: TButton; 
Button11: TButton; 
Button12: TButton; 
Button13: TButton; 
Button16: TButton; 
Button17: TButton; 
ComboBox1: TComboBox; 
Button18: TButton; 
Button19: TButton; 
Button20: TButton; 
Button21: TButton; 
Button22: TButton; 
Button23: TButton; 
Button24: TButton; 
procedure Button1Click(Sender: TObject); 
procedure Button2Click(Sender: TObject); 
procedure Button3Click(Sender: TObject); 
procedure Button5Click(Sender: TObject); 
procedure Button6Click(Sender: TObject); 
procedure Button10Click(Sender: TObject); 
procedure Button7Click(Sender: TObject); 
procedure Button8Click(Sender: TObject); 
procedure Button9Click(Sender: TObject); 
procedure Button13Click(Sender: TObject); 
procedure FormKeyDown(Sender: TObject; var Key: Word; 
Shift: TShiftState); 
procedure FormShow(Sender: TObject); 
procedure Button17Click(Sender: TObject); 
procedure Button16Click(Sender: TObject); 
procedure Button12Click(Sender: TObject); 
procedure Button11Click(Sender: TObject); 
procedure Button4Click(Sender: TObject); 
procedure Button23Click(Sender: TObject); 
procedure Button18Click(Sender: TObject); 
procedure Button19Click(Sender: TObject); 
procedure Button20Click(Sender: TObject); 
procedure Button21Click(Sender: TObject); 
procedure Button22Click(Sender: TObject); 
procedure Button24Click(Sender: TObject); 
private 
{ Private declarations } 
OneVod: Integer; One: integer; 
Oper: Byte; 
Valuel1: String; 
function BinToInt (Value: integer): double; //обьявляемздесьнашифункции. 
function IntToBin(x: Integer): string; 
function IntToHex(a:integer):string; 
function HexToInt(HexNum: string): LongInt; 
public 
{ Public declarations } 
end; 
var 
Form1: TForm1; 
implementation 
{$R *.dfm} 
function TForm1.BinToInt (Value: integer): double; //функцияпереводаиздвоичнойсистемывдесятичную. 
var i,x,g,h,u,kol:integer; f,k: double; 
begin 
kol:=0; 
u:=Value; 
while u>0 do //выполняемпокапер. u большенуля. 
begin 
u:=u div 10; // считаем в счетчик Kol сколько раз наше число u сможет поделиться на (10). 
kol:=kol + 1; 
end; 
begin 
f:=0; x:=0; 
for i:=1 to kol do // запускаем For выполняет пока i не будет равно kol. 
Begin 
g:=Value mod 10; // делим наше число на 10 и присваиваем g остаток деления. 
h:=Value div 10; // делим наше число на 10 и присваиваем h целую часть после деления. 
Value:=h; 
k:=g*exp(x*ln(2)); // умножаем g на 2 в степени x. 
f:=f+k; // суммируем все значения. 
x:=x+1; // счетчик степени x. 
end; 
end; 
BinToInt:=f; // присваиваем конечное значение функции BinToInt. 
end; 
function TForm1.IntToBin(x: Integer): string; // Функция перевода из десятичного числа в двоичную систему счисления. 
const t:array[0..1] of char = ('0','1'); // Массив с 2 уже заполнеными ячейками 1 и 0, когда мы будем делить наше число mod 2 в переменную res будет + записывать 0 либо 1. 
var res:string; 
d: integer; 
begin 
res:=''; 
d:=0; 
while (x<>0) do // выполняем пока наше число x неравно 0. 
begin 
d:=x mod 2; // делим наше число x на 2, и присваимваем остаток после деления пер. d. 
res:=t[d]+res; // присваиваем строковому типо res 1 или 0. 
x:=x div 2; // берем целую часть после деления на 2. 
end; 
IntToBin:=res; // присваиваем конечное значение функции Bin. 
end; 
function TForm1.IntToHex(a:integer):string; // функция перевода из десятичной в шестнадцатиричную систему счисления. 
const figures:array[1..15] of char = ('1','2','3','4','5','6','7','8','9','a','b','c','d','e','f'); // Описываем массив и заполняем его значениями шестнадцатиричной системы счисления. 
begin 
result:=''; 
while a>0 do // выполняется пока наше значение a больше нуля. 
begin 
result:=figures[a mod 16] +

Последний раз редактировалось Аватар; 16.05.2016 в 20:34.
Sergey777157 вне форума Ответить с цитированием
Старый 17.05.2016, 08:18   #2
min@y™
Цифровой кот
Старожил
 
Аватар для min@y™
 
Регистрация: 29.08.2014
Сообщений: 7,656
По умолчанию

Это шутка, да?
Расскажу я вам, дружочки, как выращивать грибочки: нужно в поле утром рано сдвинуть два куска урана...
min@y™ вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Калькулятор (Помогите пожалуйста переделать/доделать) Alex7033052 HTML и CSS 2 17.06.2015 16:26
Помогите доделать калькулятор NewLamer&Programer Общие вопросы C/C++ 0 06.10.2014 19:46
[Delphi] Доделать калькулятор Alsazius Помощь студентам 6 16.12.2012 00:01
Помогите доделать Калькулятор Ivanich Помощь студентам 12 18.12.2007 06:26