این رو امتحان کن و شاید دلیلش رو هم متوجه شدید
کد:برای مشاهده محتوا ، لطفا وارد شوید یا ثبت نام کنید
این رو امتحان کن و شاید دلیلش رو هم متوجه شدید
کد:برای مشاهده محتوا ، لطفا وارد شوید یا ثبت نام کنید
با [ برای مشاهده لینک ، با نام کاربری خود وارد شوید یا ثبت نام کنید ] موافقم چون اعداد 100 یا 10 رو کامپایلر بصورت صحیح در نظر می گیره ....
Last edited by samasara; 27-10-2012 at 01:18.
ولی من که از اول x رو float تعریف کرده بودم نه int!!!!!!!!
float مگه به معنی عدد اعشاری نیست؟!
Last edited by ashl7; 27-10-2012 at 02:28.
یه سوال دیگه با اجازه...کسی میدونه تابع fflush تو C کارش چیه؟!
و همچنین EOF که تو loop معمولا میاد!!!
Last edited by ashl7; 27-10-2012 at 10:37.
درودی دوباره بر دوستان!
من هر بار میخوام تو ++C دستور sqrt رو به کار ببرم، نمیشه!
میشه یکی بگه دقیقا چجوری باید به کار بردش؟ چه h فایلی رو باید زد؟
آخرین برنامه ای که میخواستم باهاش بنویسم اینه:
اشکالش چیه که نمیذاره؟
این Error هم میده:کد:برای مشاهده محتوا ، لطفا وارد شوید یا ثبت نام کنید
sqrt: more than one instance of overloaded function "sqrt" matches the argument list
(البته به کدی که نوشتم توجه نکنین، هنوز روش کار نکردم و نمیدونم چی به چیه!
باید از math.h استفاده کنی!!! مشکلت حل مشه
در ضمن خط آخر هم return 0; نگذاشته شده!!
Last edited by samasara; 27-10-2012 at 11:32. دليل: اشکال در نمایش
کلاس سوالات رفته بالا !!!!(شوخی کردم...) تابع fflush که گفتی یکی از بدترین خاطر های من نو زنده کرد چون این نکته کوچیک در ادامه به یک باگ بزرگ برای برنامم تبدیل شد اما من نمی فهمیدم و خیلی را حت سیستمم هکید!!!! .. نمی می خواستم جواب بدم!!!!! اما اون برای پاک کردن بافری که scanf متغیر ها رو داخل خودش ذخیره می کنه به کار می ره !!! لیلش هم اینه که وقتی شما با یک ورودی دومقدار رو میدی مثلا 1 3 رو دستور Scanf اول میاد مقادیر رو به بافر می ده و در دومین باری (یا حالا هر چند بار!!!) دیگه بیاز نداره که ببینه در ترمینال از کاربر بپرسه.... با همون مقدار 1 که در مثال اوردم کار رو ادامه می ده ..... EOF هم ماکرویی هست برای تست شرط پایان فایل به کار می رود وقتی که اشاره گر فایل به آخر برسه 1 در هر جایی 0 و در صورت وجود خطا 1- رو بر می گردانه.. فقط در dos و ویندوز کر برد داره به داخل unix و نه در حالت استاندارد سی استفاده می شه.
Last edited by samasara; 27-10-2012 at 12:45.
ببخشید بسیار میپرسم، ولی آخه هر سری انگار یه چیزی درست کار نمیکنه!
من کدمو کامل کردم:
همه چی درست کار میکنه به جز اونجاییش که cout<<counter ، یه عدد پرتی میده!کد:برای مشاهده محتوا ، لطفا وارد شوید یا ثبت نام کنید
اول فکر کردم دو برابر اون عددی که باید بده رو میده ولی بعد فهمیدم نه!!!!!!!! ربطی به عددی که باید بده نداره!
ویرایش:
یه پرسش متفرقه؟ چرا کد ها اینجا یه کم قاطی پاتی میشه؟ یه راهی نیست که هم کد ها رو درست بذاریم هم اون space های قبلش رو بذاره؟منظورم Tab هاییه که تو Visual Studio هر مرحله یه مرحله بیشتر میشه!
Last edited by A.I.V.I.O; 27-10-2012 at 14:13.
من واقعا می دونم چه لزمی داره که بخوای متغیر counter رو تعریف کنی یعنی می خواستی تعداد دفعات اجرا شدن for اصلی رو بشماری ؟؟ اما به هر حال عدد پرتی نیست تعداد اجرا شدن حقله ی تکرار for اصلیه(اولیه) اما کلا درست نوشتی فقط یکم بی سلیقگی کردی که برای اینکه برنامه به خط بعدی بره در آخرش از cin استفاده کردی میتونستی به جاش cout<<endl بزاریهمه چی درست کار میکنه به جز اونجاییش که cout<<counter ، یه عدد پرتی میده!
اول فکر کردم دو برابر اون عددی که باید بده رو میده ولی بعد فهمیدم نه!!!!!!!! ربطی به عددی که باید بده نداره!
فک کنم اشتباه متوجه شدی!
اون counter که گذاشتم میخواستم به کاربر بگم که تا اون عددی که وارد کردی counter تا عدد اول هست، یعنی تعداد عدد اولایی که نوشته رو بهش بدم!
ولی شما درست میگی، جای اشتباه گذاشتمش، اینجوری تعداد همه ی اعداد فرد رو میشمره، نه فقط اولا!
سپاس!
اون cin>>a یی هم که گذاشتم، میذارم که برنامه خارج نشه!آخه برنامه هامو با Console32 مینویسم! D: ببخشید اگه بی سلیقگیه!
هم اکنون 1 کاربر در حال مشاهده این تاپیک میباشد. (0 کاربر عضو شده و 1 مهمان)