ورود ثبت‌نام راهنما درباره‌ی کاهو
پرسش‌ها برچسب‌ها کاربر‌ها سوال بپرسید!

آمار پرسش:

  • پرسیده شده: 2014-12-29 07:42:58 -0500
  • مشاهده شده: 182 بار
  • بروز شده: 2014-12-29 08:23:55 -0500

پرسش‌های مشابه:

وبسایت مسابقه‌های برنامه نویسی

یافتن کوتاه ترین دور در گراف ساده

راهنمایی برای برنامه نویسی

کد مساله هشت وزیر با استفاده از الگوریتم ژنتیک

مجموع ارقام ! 100

مرجع فارسی برای الگوریتم های هندسی و 2sat

نظریه اعداد لازم برای المپیاد کامپیوتری ها

برای مرحله سوم، تا چه سطحی باید برنامه نویسی بلد باشیم؟

اولین جمله از دنباله ی فیبوناچی که 1000رقم داشته باشد چیست؟

چه جاج‌هایی برای المپیاد کامپیوتر خوب هستند؟

نکاتی در مورد نوشتن پاسخ:

در این قسمت می‌تونی به یک پرسش پاسخ بدی. اگه می‌خوای در مورد پرسش بحث و اظهار نظر کنی از قسمت «ثبت نظر» استفاده کن.
پاسخت رو دقیق و کامل بنویس، از عکس استفاده کن و اگه لازمه به منابع (کتاب یا سایت) ارجاع بده.
اگه پرسش یا پاسخ‌ها مفید هستند حتما بهشون رای بده تا پرسش‌ها و پاسخ‌های خوب مشخص بشن.

استفاده از ویرایشگر:

توی قسمت پیش‌نمایش می‌تونی ببینی متنی که نوشتی چجوری روی سایت دیده میشه.
خیلی مهم: برای اینکه به خط بعد بری باید دوتا Enter بزنی.
می‌تونی از تگ‌های معمولی و ساده‌ی html هم استفاده کنی.
با دکمه‌هایی که بالای ویرایش‌گر قرار دارند کلی کار می‌شه کرد. از عکس‌گذاشتن بگیر تا لیست شماره‌دار. حتما امتحان‌شون کن.

علائم ریاضی:

برای نوشتن علائم ریاضی می‌تونی از Mathjax استفاده کنی. راهنمای Mathjax رو از سایت math.stackexchange بخون.
برای نوشتن عبارت ریاضی وسط جمله، اون عبارت رو بین دوتا $ قرار بده.
برای نوشتن عبارت ریاضی تو یه خط جدید اون رو بین دوتا $$ قرار بده.

تعریف عملگر های معروف برای struct

0

سلام.

میخواستم بدونم چطوری میشه برای یه struct عملگر هایی مثل کوچیکتر و بزرگتر تعریف کرد.مثلا struct زیرو برای یه آدم داریم و میخوایم عملگر های مقایسه ای رو( <=>) رو این طور تعریف کنیم که اول افراد بر اساس قدشون و بعد براساس وزنشون مقایسه بشن.ویا عملگرهای جمع و تفریق رو این طور تعریف کنیم که قد دو نفرو با هم و وزن دو نفر رو هم با هم جمع کنه و به جای قد و وزن نفر سوم بزاره:

image description

برنامه-نویسی
2014-12-29 07:42:58 -0500
روبیک 2379 ● 13 ● 27 ● 44
پاک‌کردن   ویرایش سوال
نظرات

سلام میدونستید انجمن علمی نخبگان دانشگاه صنعتی شریف مسابقه تخصصی مهارت سنجی برنامه نویسی و داده کاوی گذاشته است آدرس سایتش www.fanavard.com

2015-08-06 07:59:58 -0500 امیر شکری

سلام میگم یک سر به سایت www.fanavard.ir بزنید. مسابقات برنامه نویسی شون شروع شده. گواهی رسمی از طرف دانشگاه شریف می ده. 50 تا سکه هم جایزشه

2016-10-26 06:35:19 -0500 امیر شکری

1 پاسخ

3

به درد آزمون مرحله ٣ كه نمي خوره. اما براي اطلاعات عموميتون مي گم

در سي كه امكان نداره. اما در C++ اين امكان وجود داره. بايد يك تابع بسازيد با نام operator> (يا هر كدوم از علامت ها) و خروجيش bool باشه. حالا توي تابع تمام if ها و اينارو تعريف كنيد و خروجي هم true كه همون ١ هست يا false كه صفره معلوم مي شه و با چك كردن مقدار تابع مسئله ي مورد نظر شما به دست مس ياد.

در واقع >> و << هم كه براي cin و cout تعريف شدن اينطورن. يا ++ و --

توي سايت هاي برنامه نويسي C++ رفرنس كاملش با نام operator يا defining operator هست.

يه مثال كه بهتر متوجه بشيد در C++ مي شه تابع هارو با يك نام و ورودي هاي متفاوت تعريف كرد مثلا يك تابع داريم به نام add كه فرض كنيد همون جمع معموليه كه براي a+b استفاده مي شه. حالا ما مي خوايم براي struct man كه مشخصات يك فرد هست + تعريف كنيم. تابعي با نام operator+ و با ورودي struct man و خروجي void تعريف مي كنيم. حالا داخل تابع مي گيم كه برو قد را بش اينقدر اضافه كن. وقتي بين دو struct man كه مثلا اسم هاشون a,b هست a+b مي گيم تابع + پيشفرض C++ صدا زده نمي شه چون اين تابع براي struct معني نداره در عوض تابعي كه ما ساختيم فراخوانده مي شه و قد a و b با هم جمع مي شه. يا مثلا فكر مي كنم در C++ 11 جمع رشته ها موجود باشه. جمع رشته ها معني نداره پس خودشون اومدن تابع جمع براي رشته را دوباره نوشتن كه در اصطلاح بش overloading fuction مي گن و كار مارو ساده كردن و وقتي از علامت جمع در بين رشته استفاده مي كنيم كامپايلر مي ره و تابعي كه مربوطه را اجرا مي كنه و دو رشته رو به هم مي چسبونه.

خوب توضي ندادم اميد وارم متوجه شده باشيد.

موفق باشيد. يا علي.

2014-12-29 08:13:28 -0500
دوردورترازدسترس 249 ● 9
پاک‌کردن   ویرایش پاسخ
نظرات

ممنون.ولی بهتر بود یه مثال میزدید.

2014-12-29 09:28:34 -0500 روبیک

منظورتون اينه كد بذارم؟

2014-12-29 09:59:34 -0500 دوردورترازدسترس

بله.

2014-12-29 10:37:00 -0500 روبیک

http://www.tutorialspoint.com/cplusplus/cpp_overloading.htm

2014-12-29 11:17:40 -0500 دوردورترازدسترس

يك مثال box داره بد نيست.

2014-12-29 11:18:14 -0500 دوردورترازدسترس

پاسخ شما

فقط در صورتی که پاسخی برای این پرسش دارید، آن را اینجا بنویسید و برای بحث کردن از قسمت «ثبت‌ نظر» استفاده کنید. شما می‌توانید قبل از وارد شدن به سایت پاسخ خود را بنویسید. این پاسخ ذخیره می‌شود و زمانی که شما وارد سایت شدید یا ثبت‌نام کردید منتشر می‌شود.

پیش‌نمایش:

کلیه‌ی حقوق این سایت متعلق به کمیته‌ی ملی المپیاد کامپیوتر است.