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

نام تاپیک: چرا توابع در خروجي نمايش داده نميشند؟

  1. #1
    کاربر تازه وارد
    تاریخ عضویت
    اسفند 1389
    محل زندگی
    تهران - باراجين
    سن
    31
    پست
    56

    Question چرا توابع در خروجي نمايش داده نميشند؟

    چرا توابع (سورت و پرينت) در خروجي نمايش داده نميشند؟
    در واقع ميخوام اول سورت بشه نمايش داده بشه بعد انديس عدد پيدا شده نمايش داده بشه بعد تابع پرينت نايش داده بشه


    برنامه اصلي :


    #include<iostream.h>
    #include<conio.h>


    //----search----

    int binerysearch(int A[],int key)
    {
    int mid,low=0,high=9;
    while(low<=high)
    {
    mid=(low+high)/2;
    if(key<A[mid])
    high=mid-1;
    else
    if(key>A[mid])
    low=mid+1;
    else
    return mid;
    }
    }





    //----print----

    void print(void)
    {
    cout<<"khaste nabashid";
    }




    //----sort----

    int sortb(int A[])
    {
    int temp;
    for(int i=0;i<10;i++)
    for(int j=i+1;j<10;j++)
    if(A[i]<A[j])
    {
    temp=A[i];
    A[i]=A[j];
    A[j]=temp;
    }
    for (int x=0;x<10;x++)
    cout<<A[x]<<"\t";
    return 0;
    }




    //----main----

    main()
    {
    int A[10];
    int b;
    cout<<"input 10 numbers: \n";
    for(int i=0;i<10;i++)
    cin>>A[i];
    cout<<"input search key: \n";
    cin>>b;
    int sortb(int A);
    int element=binerysearch(A,b);
    if(element!=(-1))
    cout<<"found vale : "<<element;
    else
    cout<<"not found";
    cout<<endl;
    void print();
    getch();
    }


    كامپايلر turbo C++‎ / borland

    خروجي (تو عكس ضميمه) :



    عکس های ضمیمه عکس های ضمیمه

  2. #2
    کاربر دائمی آواتار هم دانشگاهی
    تاریخ عضویت
    شهریور 1389
    محل زندگی
    بیرجند
    پست
    326

    نقل قول: چرا توابع در خروجي نمايش داده نميشند؟

    سلام دوست عزیز !

    ببین تابع main رو این طوری تغییر بده :

    //----main----

    main()
    {
    int A[10];
    int b;
    cout<<"input 10 numbers: \n";
    for(int i=0;i<10;i++)
    cin>>A[i];
    cout<<"input search key: \n";
    cin>>b;
    sortb(A);
    int element=binerysearch(A,b);
    if(element!=(-1))
    cout<<"found vale : "<<element;
    else
    cout<<"not found";
    cout<<endl;
    print();
    getch();
    }


    شما اومدی تو تابع main تابع ها رو اعلان کردی ولی اون جاباید اون ها رو فرا خونی کنی که در هنگام فراخونی نیازی به اعلان نیست !!!!

    موفق باشی

  3. #3
    کاربر تازه وارد
    تاریخ عضویت
    اسفند 1389
    محل زندگی
    تهران - باراجين
    سن
    31
    پست
    56

    نقل قول: چرا توابع در خروجي نمايش داده نميشند؟

    دمت گرم خيلي آقايي اون مشكل حل شد.
    الان يه مشكل ديگه تو تابع سرچ اگه عددي رو خارج اون اعداد در مجموعه وارد كني ميگه پيدا شد و انديش رو نشون ميده 10 در صورتي كه بايد پيغام پيدا نشدن رو بده چرا؟

  4. #4
    کاربر دائمی آواتار هم دانشگاهی
    تاریخ عضویت
    شهریور 1389
    محل زندگی
    بیرجند
    پست
    326

    نقل قول: چرا توابع در خروجي نمايش داده نميشند؟

    خب تو تابعsortb گفتی > بعد میومد به صورت نزولی مرتب میکرد

    که اگر تو sortb این طوری بنویسی :
    if(A[i]>A[j])

    درست میشه !!!

    موفق باشی

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

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