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

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

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

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

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

Закрытая тема
Ваша тема закрыта, почему это могло произойти? Возможно,
Нет наработок или кода, если нужно готовое решение - создайте тему в разделе Фриланс и оплатите работу.
Название темы включает слова - "Помогите", "Нужна помощь", "Срочно", "Пожалуйста".
Название темы слишком короткое или не отражает сути вашего вопроса.
Тема исчерпала себя, помните, один вопрос - одна тема
Прочитайте правила и заново правильно создайте тему.
 
Опции темы Поиск в этой теме
Старый 14.09.2009, 16:04   #21
Xcopy
Форумчанин
 
Аватар для Xcopy
 
Регистрация: 03.02.2009
Сообщений: 126
По умолчанию

Все, я самый тупой в мире человек.
Проблема вообще не в том, что тип переполнен (в карденале был переполнен действительно), а в самом коде. Только вот в чем проблема разобраться не могу.
Xcopy вне форума
Старый 14.09.2009, 16:32   #22
Пепел Феникса
Старожил
 
Аватар для Пепел Феникса
 
Регистрация: 28.01.2009
Сообщений: 21,000
По умолчанию

а мы про integer говорили
а Int64 покажи как юзаешь
Хорошо поставленный вопрос это уже половина ответа. | Каков вопрос, таков ответ.
Программа делает то что написал программист, а не то что он хотел.
Функции/утилиты ждут в параметрах то что им надо, а не то что вы хотите.
Пепел Феникса вне форума
Старый 14.09.2009, 16:39   #23
Xcopy
Форумчанин
 
Аватар для Xcopy
 
Регистрация: 03.02.2009
Сообщений: 126
По умолчанию

Цитата:
var
a,b,c,d,q,nod,m,p,x,y,r:int64; //p-числитель, q-знаминатель (ответа)
t:real;
i:integer;
begin
a:=3; c:=4;
b:=2; d:=4;
for i:=1 to 23 do
begin
if button2.Tag=0 then
begin
a:=(b*c)-(d*a);
button2.Tag:=1;
end;
if button2.Tag=1 then
begin
a:=(b*c)+(d*a);
button2.Tag:=0;
end;
b:=b*d;
c:=c+1;
d:=d+2;
//nod
x:=a; y:=b;
repeat r:=x mod y; x:=y; y:=r; until
y=0; nod:=x;
//если НОД равен не 1 то упрощаем 1 дробь.
if nod<>1 then
begin
a:=a div nod; b:=b div nod;
end;
edit1.Text:=floattostr(a);
edit2.Text:=floattostr(b);
j2:=a; //запись числителя в переменную
k2:=b; //запись знаменателя в переменную
end;
end;
ответ:
3,83169077417614E17
---------------------
5057976
Но числитель какой-то фиговый получается =(
Xcopy вне форума
Старый 14.09.2009, 16:41   #24
DomiNick
Студент, не
Старожил
 
Аватар для DomiNick
 
Регистрация: 29.01.2009
Сообщений: 2,067
По умолчанию

Да епрст...
Цитата:
Сообщение от DomiNick Посмотреть сообщение
Цитата:
Сообщение от Xcopy Посмотреть сообщение
умножаю два числа (тип кардинал)
Почему "кардинал"-то?:
...
Используйте Int64...
Код:
Procedure TForm1.Button1Click(Sender: TObject);
Var a, b, c: Int64;
Begin
a:=536630939;
b:=60396797;
c:=a*b;
Form1.Caption:=IntToStr(c);
Button1.Caption:=IntToStr(a*b);
End;
I am the First of Cyber Evolution...
I am the First to Program your Future...
DomiNick вне форума
Старый 14.09.2009, 17:27   #25
Xcopy
Форумчанин
 
Аватар для Xcopy
 
Регистрация: 03.02.2009
Сообщений: 126
По умолчанию

DomiNick,
0_о
Да я ж уже сказал, что-то в коде не-то =((

Можете закрыть тему

Последний раз редактировалось Stilet; 15.09.2009 в 09:52.
Xcopy вне форума
Закрытая тема


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Что с компьютером? netbioz Компьютерное железо 10 11.06.2009 20:27
Подскажите что нетак при работе с LoadIcon CrazyProgramer Помощь студентам 6 01.08.2008 00:09
Компиляцая. наверно я чтото нетак делаю? Progn00ber Общие вопросы C/C++ 3 06.07.2008 16:19
то такое мастерство в программировании, что такое мастер программист и что он может? Cezar Свободное общение 29 02.06.2007 23:48
А что, если всем объедениться и создать что-нибудь глобальное? kuzmich Свободное общение 61 31.05.2007 21:01