PDA

View Full Version : سوال مهم و مشکل من



x.xoma
یک شنبه 02 اسفند 1388, 17:35 عصر
چطور میشه چندین برنامه که خودش تابع و کلاس داره رو تو یه برنا مه کلی نوشت و اجرا کرد؟ دستور goto هم استفاده نکنیم ؟

r00tkit
یک شنبه 02 اسفند 1388, 17:42 عصر
میشه یه مثال بزنید

x.xoma
یک شنبه 02 اسفند 1388, 18:04 عصر
سلام.
ببین عزیزم مثلا شما میخوای یه برنامه بنویسی که چند برنامه مثل مثاث خیام و کار با رشته ها و ماشین حساب و غیره توش باشه که وقتی کاربر اونو اجرا میکنه همه این ها در دسترس اون باشن و اون بتونه با انتخاب برنامه مورد نظرش اونو اجرا کنه و سورس کد هر برنا مه رو ببینه.

Salar Ashgi
یک شنبه 02 اسفند 1388, 19:40 عصر
دوست عزیز شرط اول جواب گرفتن یک سوال تو تالار ، عنوان مناسب اونه . پس به این

مورد حتما دقت کنید .

اما در مورد سوالاتون ، زیاد کاری رو که میخواید انجام بدید معقول نیست . تو کنسول که اینکار زیاد عملی

نیست ، که شما چند تا برنامه رو تو یه برنامه اجرا کنید ، ولی خوب فقط برای نشان دادن سورس ها میتونید

اونا رو تو فایل ذخیره کرده و تو برنامه از فایل بخوانید !

amin1softco
یک شنبه 02 اسفند 1388, 21:23 عصر
منم یک روش به ذهنم رسید که شما اگه سورس این برنامه ها رو دارید یک جوری تغیریش بدید که با اجرا شدن یک تابع برنامه مورد نظر اجرا بشه مثلا شما سورس مثلث خیام را با برنامه ماشین حساب داری تابع مینه ماشین حساب رو به یک تابع تبدیل کن و تابع مثلث خیام رو همینطور به یک تابع دیگه و در منوی اصلی یک چند گزینه طراحی کن که این تابع ها را مطابق در خواست کاربر اجرا کنه

x.xoma
یک شنبه 02 اسفند 1388, 21:40 عصر
منم یک روش به ذهنم رسید که شما اگه سورس این برنامه ها رو دارید یک جوری تغیریش بدید که با اجرا شدن یک تابع برنامه مورد نظر اجرا بشه مثلا شما سورس مثلث خیام را با برنامه ماشین حساب داری تابع مینه ماشین حساب رو به یک تابع تبدیل کن و تابع مثلث خیام رو همینطور به یک تابع دیگه و در منوی اصلی یک چند گزینه طراحی کن که این تابع ها را مطابق در خواست کاربر اجرا کنه

مرسی از لطفت دوست عزیز ؛ این فرمایش شما کاملا درسته بنده هم برای تمام برنامه ها از همین روش استفاده کردم ولی درست هم هست ولی این کار برای برنامه هایی که خودشان تابع یا کلاس دارند عملی نیست.

x.xoma
یک شنبه 02 اسفند 1388, 21:58 عصر
دوست عزیز شرط اول جواب گرفتن یک سوال تو تالار ، عنوان مناسب اونه . پس به این

مورد حتما دقت کنید .

اما در مورد سوالاتون ، زیاد کاری رو که میخواید انجام بدید معقول نیست . تو کنسول که اینکار زیاد عملی

نیست ، که شما چند تا برنامه رو تو یه برنامه اجرا کنید ، ولی خوب فقط برای نشان دادن سورس ها میتونید

اونا رو تو فایل ذخیره کرده و تو برنامه از فایل بخوانید !


سلام .
ممنو از لطف زیادت عزیز. در مورد برنامه هم عرض کنم که مجبورم که چند برنامه رو تو هم بنویسم و اجرا کنم. یه سوال دیگه این که دستور goto محدوده خاصی فقط داره ؟

clover
یک شنبه 02 اسفند 1388, 22:17 عصر
ولی این کار برای برنامه هایی که خودشان تابع یا کلاس دارند عملی نیست.
میشه بفرمایید چرا عملی نیست ؟
من از ابتدا که تاپیک شما را مشاهده کردم این راه به ذهنم رسید - استفاده از منو و قرار دادن برنامه ها در توابع مختلف - و همینطور تعجب کردم از اینکه چرا از این روش استفاده نمی کنید. اگر امکان داره توضیح بفرمایید که مشکلتون با این روش چیه ؟

x.xoma
یک شنبه 02 اسفند 1388, 22:31 عصر
میشه بفرمایید چرا عملی نیست ؟
من از ابتدا که تاپیک شما را مشاهده کردم این راه به ذهنم رسید - استفاده از منو و قرار دادن برنامه ها در توابع مختلف - و همینطور تعجب کردم از اینکه چرا از این روش استفاده نمی کنید. اگر امکان داره توضیح بفرمایید که مشکلتون با این روش چیه ؟

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

clover
یک شنبه 02 اسفند 1388, 22:46 عصر
ممنون دوست عزیز که لا اقل حالا جواب دادی.
علت پاسخ ندادنم عنوان نامناسب تاپیک شما بود -هم این تاپیک و هم تاپیک قبلی- چون این تاپیک ها حذف خواهند شد و حتی اگر هم حذف نشوند و با فرض اینکه به نتیجه برسند، باز هم برای کاربران بعدی قابل استفاده نخواهند بود -در جستجو ها اغلب به دلیل عنوان نامناسب، توسط کاربران نادیده گرفته می شوند-.

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

#include <iostream>
using namespace std;

int main()
{
void PrintNum(); // define PrintNum function
PrintNum(); // call PrintNum function
// cout << makeNum(); // error : error C3861: 'makeNum': identifier not found
return 0;
}

void PrintNum()
{
int makeNum(); // define makeNum function
int n = makeNum(); // call makeNum function
cout << n;
}

int makeNum()
{
return 56;
}
در ضمن در این مثال تمام توابع در یک فایل تعریف شدند. در صورتی که شما می توانید برای جلوگیری از شلوغی و به هم ریختگی کد، توابع مرتبط را در فایل های جداگانه تعریف کنید.

x.xoma
یک شنبه 02 اسفند 1388, 23:02 عصر
mr.clover
به واقع و با تمام وجود از شما ممنون هستم . شما لطف بزرگی کردید قربان. بین دو براکت ؛ واقعا موضوع ظریفی بود. با این که بسیار ازش استفاده کرده بودم ولی تو این مورد به هیچ عنوان.از خودم نا امید شدم!!! . راستی یه لطفی بکنید بفر مایید که یک عنوان خوب و کاربر پسند چه مشخصه ای دارند؟ بازم ممنون .

clover
یک شنبه 02 اسفند 1388, 23:17 عصر
به واقع و با تمام وجود از شما ممنون هستم .
خواهش می کنم. کاری نکردم.

بفر مایید که یک عنوان خوب و کاربر پسند چه مشخصه ای دارن

فرض کنید بخواهید در مورد مشکل یا سوالتون در این سایت جستجو کنید. چه عباراتی را در کادر جستجو تایپ می کنید ؟ آیا می نویسید : یک سوال مهم ؟ یا : سوال مهم و مشکل من ؟
مسلما می دونید که چیزی پیدا نمی کنید. چون هزاران تاپیک وجود داره که توی عنوان یا متن اونها این کلمات به کار رفته.
حالا فرض کنید یه عبارت مربوط به سوالتون را سرچ می کنید. مثلا : تعریف توابع تو در تو. یا استفاده از تابع داخل تابع دیگر. حالا از بین 300 عنوان یافت شده آیا تاپیکی با عنوان "سوال مهم و مشکل من" را انتخاب می کنید ؟
کافیه به این فکر کنید که کدام تاپیک را -با چه عنوانی- انتخاب می کنید و بعد همین عنوان را برای تاپیک خودتون استفاده کنید.

x.xoma
یک شنبه 02 اسفند 1388, 23:23 عصر
شما لطف دارید.
به روی چشم جناب . توضیحات شما عالی بود . مطمئنا در موارد بعدی از یک نام مناسب استفاده میکنم.