View Full Version : فاصله بین دو زمان (HoursBetween)
AliReza Vafakhah
پنج شنبه 08 اسفند 1387, 01:34 صبح
سلام دوستان
قبل از اینکه تاپیک رو بزنم جستجو هم کردم و دوستمون آقای کشاورز تو یه پست درباره فاصله بین دو زمان تابع HoursBetween را معرفی کرده بودند
اما من که موفق نشدم (البته تابع درسته)
نمودنم چرا یه بار تابع یه عدد رو میده که میشه گفت 10 الی15 رقمی است و یه بار هم صحیح جواب میده (البته هر دو جواب با یه کد هست)
و به طور کل از دوستان یه نمونه کد می تونند قرار بدن
با تشکر
ghabil
پنج شنبه 08 اسفند 1387, 03:42 صبح
هیچوقت توی کامپیوتر اینطوری نیست که یکبار یک نتیجه رو بده دوباره دقیقا توی او شرایط همون نتیجه رو نده
، حتما یک چیزی داره تغییر میکنه، اگر نمیتونی پیداش کنی کد رو بزار شاید با کمک دوستان تونستیم مشکل رو پیدا کنیم.
AliReza Vafakhah
پنج شنبه 08 اسفند 1387, 09:34 صبح
دوست عزیز از کمکت ممنون (ghabil)
من خودم هم تو این موندم چرا دلفی این مشکلات رو داره
یه بار یه عدد گنده و یه بار یه عدد تک رقمی (دقیقا در یک کد) چرا ؟
Felony
پنج شنبه 08 اسفند 1387, 09:46 صبح
من خودم هم تو این موندم چرا دلفی این مشکلات رو داره
شما چطور به این نتیجه رسیدید که دلفی مشکل داره ؟!؟!؟!
به نظرتون کدتون مشکلی نداره و دلفی مشکل داره ؟!؟!؟!
یعنی گروهی به این بزرگی که روی IDE دلفی کار میکنن نتونستن یه تابع HoursBetween رو درست کدنویسی کنن ؟!؟!؟!
Batman
پنج شنبه 08 اسفند 1387, 11:22 صبح
Label1.Caption:=IntToStr(HoursBetween(StrToDate('2 008/10/10'),StrToDate('2010/10/10')));
موفق باشيد
AliReza Vafakhah
پنج شنبه 08 اسفند 1387, 20:08 عصر
شما چطور به این نتیجه رسیدید که دلفی مشکل داره ؟!؟!؟!
به نظرتون کدتون مشکلی نداره و دلفی مشکل داره ؟!؟!؟!
یعنی گروهی به این بزرگی که روی IDE دلفی کار میکنن نتونستن یه تابع HoursBetween رو درست کدنویسی کنن ؟!؟!؟!
دوست عزیز من هیج وقت بدون اطمینان یه حرفی رو نمی زنم
وقتی که من کد را تریس کردم یه بار یه عدد رو به من میداد که گفتم خیلی بزرگ بود یه بار هم عدد صحیح یا جواب درست رو میداد .
من خودم از طرفدارهای پروپاقرص دلفی و هر چیزی که به دلفی ربط داره هستم .
نگفتم که دلفی به درد نمی خورده
با تشکر از همه عزیزان این کد مشکلم را حل کرد
Procedure ....
var
TimeDifference: TDateTime;
DiffHours, DiffMinutes: Integer;
p,l:TDateTime;
begin
p:=StrToTime('00:52:12');
l:=StrToTime('03:0:12');
TimeDifference := l - p;
{ShowMessage(DateTimeToStr(TimeDifference);}
DiffHours := Trunc(TimeDifference * 24);
{ DiffMinutes := trunc((TimeDifference * 24 * 60) - (Trunc(TimeDifference * 24) * 60))}
DiffMinutes := Trunc((TimeDifference * 24 * 60) - (DiffHours * 60));
ShowMessage(IntToStr(DiffHours)+':'+IntToStr(DiffM inutes));
end;
vcldeveloper
جمعه 09 اسفند 1387, 03:22 صبح
وقتی که من کد را تریس کردم یه بار یه عدد رو به من میداد که گفتم خیلی بزرگ بود یه بار هم عدد صحیح یا جواب درست رو میداد .
احتمالا مشکل از دلفی نبود، یا کد شما جایی از متغیری استفاده می کرد که مقداردهی اولیه نشده بود، یا در کد از تابع محاسباتی استفاده می شده که در صورت دریافت ورودی اشتباه، بجای خطا، خروجی اشتباه میداده.
vBulletin® v4.2.5, Copyright ©2000-1404, Jelsoft Enterprises Ltd.