Вопрос по типу Int64

Модераторы: Duncon, Naeel Maqsudov, Игорь Акопян, Хыиуду

Ответить
oif
Сообщения: 42
Зарегистрирован: 09 ноя 2006, 21:03

Почему при изменении типа integer на int64,программа все равно не может работать с большими числами?
Вот код программы.
Помогите кто знает.

unit Unit1;

interface

uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, StdCtrls;

type
TForm1 = class(TForm)
Edit1: TEdit;
Button1: TButton;
Edit2: TEdit;
Label1: TLabel;
Label2: TLabel;
procedure Button1Click(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;

var
Form1: TForm1;

implementation

{$R *.dfm}

procedure TForm1.Button1Click(Sender: TObject);
var a,b,r,m,n,d: (integer)int64;
begin
Randomize;
m:=strtoint(edit2.text);
d :=random(m);
n:=d;

while n<>1 do begin
a:=m;b:=n;

while b<>0 do begin
r:= a mod b;
a:=b;b:=r;
end;
if a=1 then begin edit1.text:=inttostr(n);exit; end;
n:=n-1;
end;
end;
end.
oif
Сообщения: 42
Зарегистрирован: 09 ноя 2006, 21:03

oif писал(а):Почему при изменении типа integer на int64,программа все равно не может работать с большими числами?
Вот код программы.
Помогите кто знает.
Вопрос исчерпан.
Надо было строковые значения переводить в переменные с помощью strtoint64.
Аватара пользователя
Duncon
Сообщения: 2085
Зарегистрирован: 10 окт 2004, 14:11
Откуда: Питер
Контактная информация:

Ну если у тебя Int64 то и юзай StrToInt64
Далее зачем Randomize; вызываешь? если следом random...
И что сделать в итоге хочешь?
И зачем столько лишних переменных если можно с одной играться...
oif
Сообщения: 42
Зарегистрирован: 09 ноя 2006, 21:03

Да этот пример который я постоянно меняю,поэтому столько абро кадабры.
Спасибо за замечания.
Аватара пользователя
Oleg_Rus
Сообщения: 335
Зарегистрирован: 16 окт 2006, 09:56
Откуда: г.Улан-Удэ, респ.Бурятия, Российская Федерация
Контактная информация:

&quot писал(а):зачем Randomize; вызываешь? если следом random...
в некоторых случаях Random не реагирует если не вызван Randomize
e-mail: garmayev@yandex.ru
---------------------------------------------------------------------------
<a href="http://nick-name.ru/sertificates/711965/"><img src="http://nick-name.ru/img.php?nick=Garmay ... =2&text=t5" alt="Никнейм Garmayev зарегистрирован!" /></a>
Аватара пользователя
Игорь Акопян
Сообщения: 1440
Зарегистрирован: 13 окт 2004, 17:11
Откуда: СПБ
Контактная информация:

если мне склероз не изменяет - Randomize нужен один раз (например в начале программы) для инициализации генератора.
Изображение
Ответить