PDA

نسخه کامل مشاهده نسخه کامل : تبديل يك عدد real به integer



mohsenpj
31-07-2006, 00:43
من در برنامه ام نياز دارم كه عدد real را به integer تبديل كنم...

يعني برنامه عدد صحيح آنرا به صورت integer بفهمد..
البته من دستورات mod را امتحان كردم ولي جواب نميدهد...
اطفا راهنمايي كنيد..

mohsenpj
31-07-2006, 00:45
يعني عدد 12.75 را تبديل به عدد 12 كرده و آنرا نيز به صورت integer در برنامه استفاده كنم....

Mahmood_N
31-07-2006, 05:28
سلام دوست من ...
دلفی یه تابعی داره که این کار رو انجام میده :
به این صورت :
اول یه متغیر معرفی می کنی و بعد اون مقدار Real رو بهش می دی :

برای مشاهده محتوا ، لطفا وارد شوید یا ثبت نام کنید
بعد باید از تابع زیر استفاده کنی :

برای مشاهده محتوا ، لطفا وارد شوید یا ثبت نام کنید
نکته مهم: برای نشون دادن عدد بدست اومده روی یه Label یا Edit یا کلا به عنوان یه رشته ، نباید از تابع IntToStr استفاده کنی بلکه باید از FloatToStr استفاده کنی :

برای مشاهده محتوا ، لطفا وارد شوید یا ثبت نام کنید
یه چیز دیگه : اگه می خوای که به صورت Integer ازش استفاده کنی باید همون String به دست اومده رو به Integer تبدیل کنی ...
کلش میشه این :

برای مشاهده محتوا ، لطفا وارد شوید یا ثبت نام کنید
بازم اگه مشکلی بود بگو ...
موفق باشی ...

soldier
31-07-2006, 07:44
سلام
من از روش ديگه استفاده ميكنم.
ببين شايد بدردت خورد عددي كه مي خواهي integer بشه
دستور Round بهش ميدي.مثلآ :
Caption:=IntToStr(Round(12.7));

Mahmood_N
31-07-2006, 08:08
سلام
من از روش ديگه استفاده ميكنم.
ببين شايد بدردت خورد عددي كه مي خواهي integer بشه
دستور Round بهش ميدي.مثلآ :
Caption:=IntToStr(Round(12.7));
سلام سولجر جان ...
درسته ... ، اين جوري هم مي شه ...
ولي اين عدد اعشاري رو به نزديكترينشون رند مي كنه ...
ولي آقا محسن مي خواستن كه عدد اعشاريشون به عددي كه توي اعشار هست رند بشه ...
موفق باشيد ...

soldier
31-07-2006, 08:29
سلام آقا محمود
خود ايشون فرمودند : يعني عدد 12.75 را تبديل به عدد 12 كرده و آنرا نيز به صورت integer در برنامه استفاده كنم....
توي پست 2.پس يعني رند بشه كه بهترين روش همون دستور Round هست.
اگر هم من اشتباه برداشت کردم ببخشید.

Mahmood_N
31-07-2006, 08:51
خود ايشون فرمودند : يعني عدد 12.75 را تبديل به عدد 12 كرده و آنرا نيز به صورت integer در برنامه استفاده كنم....
توي پست 2.پس يعني رند بشه كه بهترين روش همون دستور Round هست.
اگر هم من اشتباه برداشت کردم ببخشید
سلام سولجر جان ...
شما درست مي گيد ولي :
اگه با Round این کار رو انجام بدیم عدد 13 بدست میاد ولی آقا محسن 12 رو می خواستن ...
کلا هر دو درسته دیگه ... ( ولش کن حالا خودش هرکدوم رو خواست برمی داره )
موفق باشی ...

soldier
31-07-2006, 09:02
سلام
پس حالا که اینطوره (می خواهد اعشار رو بندازه)
از دستور Trunc استفاده کن.:)
حتمآ بدرد مي خوره :). ممنون.

Mahmood_N
31-07-2006, 11:38
سلام
پس حالا که اینطوره (می خواهد اعشار رو بندازه)
از دستور Trunc استفاده کن.
حتمآ بدرد مي خوره . ممنون.
سلام ...
عالي بود ...
منم ياد گرفتم ...
دستت درد نكنه ...

hp1361
31-07-2006, 18:34
سلام

يه توضيح كوچيك گفتم شايد بدرد دوستان بخوره


برای مشاهده محتوا ، لطفا وارد شوید یا ثبت نام کنید

اينها رو توي راهنماي دلفي هفت نوشته

موفق باشيد

soldier
31-07-2006, 19:14
سلام
چه فرقي داشت با دستوراتي كه من گفتم؟
خوب همون ها هستند.

mohsenpj
31-07-2006, 22:37
از همتون ممنونم ...
خيلي چيزها ياد گرفتم...
مرسي.. دقيقا منظورم همون كاركرد trunc بود...

hp1361
01-08-2006, 16:51
سلام

خوب معلومه كه همون دستوراته اما با توضيحي كه زيرش نوشته نوع خروجي زيربرنامه براي كسي كه نوعش مهمه مشخص شده

(دو تا دستور آخر رو مي گم )

موفق باشيد

soldier
01-08-2006, 17:04
سلام
خوب من هم دقيقآ كارشونو گفتم ديگه به اينا لازم نبود.
خيلي خوب حالا كه گذاشتي روي گذاشتنشون بحث كنيم!!!
ديگه كسي اينجا پست نده.چون دوست عزيزمون به جوابش رسيد.