Форум программистов
 
О проблемах, например, с регистрацией пишите сюда - alarforum@yandex.ru, проверяйте папку спам! Обязательно пройдите активизацию e-mail, а тут можно восстановить пароль.

Вернуться   Форум программистов > Delphi > Общие вопросы Delphi
Регистрация

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

Здесь нужно купить рекламу за 20 тыс руб в месяц! ) пишите сюда - alarforum@yandex.ru
Без учёта ботов - 20000 человек в день, 350000 в месяц.

Ответ
 
Опции темы
Старый 03.05.2014, 19:02   #1
UKRtortik
Форумчанин
 
Регистрация: 25.02.2014
Сообщений: 366
По умолчанию сложить число из edit1+edit1, потом удалить последние 3 символа (Поиск ошибки)

Нужно сложить число из edit1+edit1, потом удалить последние 3 символа зашифровать в md5 и сохранить в файл.

Код:
var
f:System.Text;
A,C:Integer;
x,b,z:string;
begin
A:=StrToInt(edit1.text);
C:=A+A;
z:=IntToStr(C);
showmessage (z);
b:=copy(z,1,length(z)-3);
x:=md5(b);
AssignFile(f,edit1.Text+'.txt');
Rewrite(f);
Write(f,x);
CloseFile(f);
end;
UKRtortik вне форума Ответить с цитированием
Старый 03.05.2014, 19:11   #2
STRELOK-2007
Форумчанин
 
Регистрация: 06.08.2009
Сообщений: 144
По умолчанию

Судя по скриншоту, выходит число больше чем 2147483647. Наверное это и причина. Ибо больше integer вместить не может.

Если надо 4 байтовое число - используй Cardinal или лучше NativeUINT. Если не важно количество байт - int64.

NativeUINT кстати автоматически при 64битной компиляции станет 8 байтным.
STRELOK-2007 вне форума Ответить с цитированием
Старый 03.05.2014, 19:25   #3
UKRtortik
Форумчанин
 
Регистрация: 25.02.2014
Сообщений: 366
По умолчанию

А как тут отнять последние 3 символа от SerialNum

Код:
var
SerialNum:Dword;
begin
//Тут отнять
keys:=(IntToStr(SerialNum+SerialNum));
UKRtortik вне форума Ответить с цитированием
Старый 03.05.2014, 19:40   #4
denis76560
Форумчанин
 
Регистрация: 13.01.2010
Сообщений: 121
По умолчанию

А как тут отнять последние 3 символа от SerialNum

var
SerialNum:Dword;
begin
keys:=(IntToStr(SerialNum+SerialNum ));
keys:=copy(keys,0,length(keys)-3)
denis76560 вне форума Ответить с цитированием
Старый 03.05.2014, 19:55   #5
UKRtortik
Форумчанин
 
Регистрация: 25.02.2014
Сообщений: 366
По умолчанию

мне сначало надо отнять от SerialNum 3 последних символа, а потом только сложить.
UKRtortik вне форума Ответить с цитированием
Старый 04.05.2014, 01:03   #6
BDA
Модератор
Заслуженный модератор
 
Аватар для BDA
 
Регистрация: 09.11.2010
Сообщений: 5,568
По умолчанию

Код:
SerialNum:=SerialNum div 1000;
keys:=(IntToStr(SerialNum+SerialNum));
Пишите язык программирования - это форум программистов, а не экстрасенсов. (<= это подпись )
BDA на форуме Ответить с цитированием
Ответ

Здесь нужно купить рекламу за 20 тыс руб в месяц! ) пишите сюда - alarforum@yandex.ru
Без учёта ботов - 20000 человек в день, 350000 в месяц.

Опции темы


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Удалить Edit1 при нажимание на button alman12 Общие вопросы Delphi 11 15.03.2014 19:31
[Делфи]Как удалить последний символ в edit1.text? zotox Помощь студентам 3 05.08.2009 12:05
Копирование данных с Edit1 в Edit1 Girl Общие вопросы Delphi 1 02.06.2009 09:19
Выдача ошибки при вводе 2 нулей в Edit1..Edit5 prikolist Общие вопросы C/C++ 5 11.04.2009 22:44
Поиск символа в Edit1.text Alar Компоненты Delphi 0 29.10.2006 20:02


Проекты отопления, пеллетные котлы, бойлеры, радиаторы
интернет магазин respective.ru
Пеллетный котёл Emtas
котлы EMTAS