پاسخ : مشکل در برنامه نویسی c
سلام
دوستان یه مشکل تو برنامه نویسی به زبان c بوجود اومده که انتظاری که از برنامه دارم با چیزی که در عمل اتفاق میوفته متفاوت هست
این کد رو نگاه کنید
در این کد عدد 800 به 312 به صورت اعشاری تقسیم شده و نتیجه تو متغیر a ( از نوع float هست ) ریخته شده
خط بعدی عدد 500 رو به a به صورت اعشاری تقسیم کردیم و نتیجه رو تو متغیر b ( از نوع صحیح هست ) ریختیم ( هدف این بوده که قسمت اعشاری از بین بره )
انتظاری که دارم اینه که مقدار متغیر b بشه عدد 195
اما وقتی این متغیر رو روی پورت میکرو میریزم عدد 250 بدست میاد !!
کسی میتونه دلیل این مسئله رو توضیح بده ؟؟؟؟
سلام
دوستان یه مشکل تو برنامه نویسی به زبان c بوجود اومده که انتظاری که از برنامه دارم با چیزی که در عمل اتفاق میوفته متفاوت هست
این کد رو نگاه کنید
کد:
[FONT=Yekan] [/FONT][FONT=Yekan] a=(float)(800/312); [/FONT][FONT=Yekan] [/FONT][FONT=Yekan]b=(float)(500/a);[/FONT]
خط بعدی عدد 500 رو به a به صورت اعشاری تقسیم کردیم و نتیجه رو تو متغیر b ( از نوع صحیح هست ) ریختیم ( هدف این بوده که قسمت اعشاری از بین بره )
انتظاری که دارم اینه که مقدار متغیر b بشه عدد 195
اما وقتی این متغیر رو روی پورت میکرو میریزم عدد 250 بدست میاد !!
کسی میتونه دلیل این مسئله رو توضیح بده ؟؟؟؟
دیدگاه