نمایش نتایج 1 تا 10 از 10

نام تاپیک: divide & conqur

  1. #1
    کاربر دائمی
    تاریخ عضویت
    فروردین 1387
    محل زندگی
    شمال
    پست
    115

    divide & conqur

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

  2. #2

    نقل قول: divide & conqur

    سلام ، روش اینطوری هستش که شما آرایه رو به دو قسمت تقسیم می کنید ، و بطور بازگشتی

    Min , Max هریک از این دو قسمت رو پیدا می کنید و Min , Max کل میشه Min , Max این دو قسمت !!!

    موفق و پیروز باشید !!!

  3. #3
    کاربر دائمی
    تاریخ عضویت
    فروردین 1387
    محل زندگی
    شمال
    پست
    115

    نقل قول: divide & conqur

    درسته منم تا این قسمتش رو میدونستم.
    ولی حالا چه جوری میشه این تابع رو پیاده کرد؟

  4. #4
    کاربر دائمی آواتار SamaPic
    تاریخ عضویت
    مهر 1387
    محل زندگی
    مشهد مقدس
    پست
    329

    نقل قول: divide & conqur

    با سلام.
    آرایه را به روش بازگشتی مرتب کن.
    عناصر اول و آخر موارد درخواستی میشوند.
    خدانگهدار.

  5. #5
    کاربر دائمی
    تاریخ عضویت
    فروردین 1387
    محل زندگی
    شمال
    پست
    115

    نقل قول: divide & conqur

    من این کد رو با راهنمایی های دوستان نوشتم ولی نمیدونم مشکلش چیه؟
    چون اجرا میشه ولی وسط کار erorr میده.
    اینم سورسش:
    void maxmin(int *max, int *min,int n)
    {
    if( n == 1)
    *min = *max = a[0];
    else if( n == 2)
    {
    if(a[0] < a[1])
    {
    *min = a[0];
    *max = a[1];
    }
    else
    {
    *min = a[1];
    *max = a[0];
    }
    }
    else
    {
    maxmin(max,min,n/2);
    maxmin(&max1,&min1,n - n/2);
    if( min1 < *min)
    *min = min1;
    if( max1 > *max)
    *max = max1;
    }
    }

  6. #6
    کاربر دائمی
    تاریخ عضویت
    فروردین 1387
    محل زندگی
    شمال
    پست
    115

    نقل قول: divide & conqur

    کسی نظری نداره.................

  7. #7

    نقل قول: divide & conqur

    فکرکنم تو داخل تابع باید بجای *min بنویسی &min

    درست نمیگم؟

  8. #8

    نقل قول: divide & conqur

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

  9. #9

    نقل قول: divide & conqur

    کسی نیست یه توضیح در مورد این کد بده ؟

  10. #10
    کاربر دائمی
    تاریخ عضویت
    فروردین 1388
    محل زندگی
    ایران سرای من است
    پست
    2,655

    نقل قول: divide & conqur

    سلام :
    کد زیر رو امتحان کن امیدوارم مشکلت حل بشه.
    موفق باشید.

    #include <iostream.h>
    void MinMax(int *Min, int *Max, int *a, int n)
    {
    if(--n>=0 ){
    if( *Max < a[n] ) *Max = a[n];
    if( *Min > a[n] ) *Min = a[n];
    MinMax( Min, Max, a, n);
    }
    }
    #define MaxNum 5
    int main()
    {
    int max, min, a[MaxNum];
    for(int i=0; i<MaxNum; i++)
    cin>>a[i];
    max = min = a[0];
    MinMax( &min, &max, a, MaxNum);
    cout<<"Max="<<max<<" Min="<<min;
    return 0;
    }

قوانین ایجاد تاپیک در تالار

  • شما نمی توانید تاپیک جدید ایجاد کنید
  • شما نمی توانید به تاپیک ها پاسخ دهید
  • شما نمی توانید ضمیمه ارسال کنید
  • شما نمی توانید پاسخ هایتان را ویرایش کنید
  •