پرسش و پاسخ پیرامون برنامه نویسی

شروع موضوع توسط max ‏2008/9/10 در انجمن برنامه نویسی

  1. atousa.a

    atousa.a کاربر فوق فعال

    ارسال‌ها:
    152
    امتیازات:
    +2,649 / -18
    نام مرکز سمپاد:
    فرزانگان ری
    شهر:
    تهران
    سال فارغ التحصیلی:
    93
    دانشگاه:
    پلی تکنیک
    رشته دانشگاه:
    نرم افزار
    پاسخ : پرسش و پاسخ پیرامون برنامه نویسی

    +من متوجه نشدم دقیقن برنامه قراره چه کاری انجام بده :-?

    +‌اول اینکه تعریف تابع مشکل داره. تابع نباید داخل مین تعریف بشه. باید خارج از مین باشه.
    از طرفی چون در داخل تابع از ارایه ی A هم استفاده کردیم باید اونرو هم به تابع پاس بدیم تا بشه ازش استفاده کرد. امضای تابع به این شکل میشه :
    کد:
    char Find(int L, int R, int A[] )
    + مشکل بعدی اینه که چیزی که نابه برمیگردونه یک کاراکتره ولی شما یک استرینگ رو دارید برمیگردونید که باهاش مشکل داره!

    + بستگی به استفاده ای که از تابع میشه میتونید چیزی که میخواید رو چاپ کنید یا با ریترن برگردونید
    الان تو این جا مستقیمن میشه چاپ کرد حاصل رو از خود تابع.
    اما بعضی وقتا شما از یک تابع استفاده میکنید که حاصلش الزامن نتیجه ی نهایی شما نیست و شما فقط از این تابع استفاده کردید تا یه عدد ( مثلن)‌ به دست بیارید و ازش برای محاسبه ی یه سری چیزای دیگه استفاده کنید. در واقع زمانی که خروجی نهایی شما الزامن خروجی تابع نباشه و از خروجی تابع برای به دست اوردن خروجی نهایی استاده بشه باید این مقدار جایی نگه داری بشه که توسط ریترن این کار انجام میشه.
     
    • لایک لایک x 1
  2. RezA19

    RezA19 کاربر فعال

    ارسال‌ها:
    64
    امتیازات:
    +284 / -9
    نام مرکز سمپاد:
    حقانی
    شهر:
    kermanshah-bnd-dezful
    سال فارغ التحصیلی:
    98
    دانشگاه:
    Razi university
    رشته دانشگاه:
    Computer Engineering
    پاسخ : پرسش و پاسخ پیرامون برنامه نویسی

    کد:
    char find(int A[] ,int L,int R) {
    int sum=0;
    for(int i=L;i<=R;i++)
    sum=sum+abs(A[i])
    if(sum%2==0)
    return "even";
    else
    return "odd";
    }
    
    
    int main(){
    int n , i , p , q;
    cin >> n;
    int a[n];
    for ( int i ;i <n ;i++){
    cin>>a[i] ;
    cout<<a [i] <<"\t";
    }
    cin>>p>>q;
    for(int i=p;i<=q;i++)
    cout<<find(a,p,q)<<"\t";
    return 0;
    }
    فک کنم منظورت این برنامه بوده :-? :)

    اگه با سی برنامه نویسی میکردی از printf استفاده میکنیم اگه سی ++ باشه cout
     
  3. ArtmisSoR

    ArtmisSoR کاربر حرفه ای

    ارسال‌ها:
    293
    امتیازات:
    +3,505 / -69
    نام مرکز سمپاد:
    فرزانگان‎امین
    شهر:
    Isf
    دانشگاه:
    پلی‌پیکنیک
    رشته دانشگاه:
    علوم کامپیوتر
    پاسخ : پرسش و پاسخ پیرامون برنامه نویسی

    مرسی٬ اون مشکل حل شد.

    سوال دیگه‌م اینه که همه‌ی جایگشت‌های یک کلمه (یا عدد) با حروف(یا ارقام) تکراری رو چطور باید تولید کرد؟
    مثلا همه‌ی جایگشت‌های عددی با دوتا ۴ ٬ دوتا ۵ و یکی ۶.
    ۴۴۵۵۶
    ۴۵۵۶۴
    ۵۵۶۴۴
    ۵۶۴۴۵
    ۶۴۴۵۵
    ۴۵۴۵۶
    ۵۴۵۴۶
    ۴۵۶۴۵
    ۵۴۶۵۴
    ...
     
  4. Anita H

    Anita H کاربر حرفه ای

    ارسال‌ها:
    568
    امتیازات:
    +2,913 / -42
    نام مرکز سمپاد:
    Hell(i) 2
    شهر:
    تهران
    سال فارغ التحصیلی:
    96
    دانشگاه:
    شریف
    رشته دانشگاه:
    مهندسی کامپیوتر
    پاسخ : پرسش و پاسخ پیرامون برنامه نویسی

    نحوه ی استفادش رو میتونید از اینجا یا اینجا و یا حتی اینجا و البته در کمال ناباروری اینجا ببینید ;;) ;;) ;;) ولی خب کلن این جوریه دیگه: دو تا آرگومان میگیره اولیش یه پوینتر به اول آرایه ای که میخاید جایگشت بعدیش رو به دست بیارید یکیش به یه خونه جلوتر از آخر آرایه تون. یعنی برای آرایه ی a که سایزش n هست این طوری مینویسید:
    کد:
    next_permutation(a, a + n);
    و برای وکتور v این طوری مینویسید
    کد:
    next_permutation(v.begin(), v.end());
     
    • لایک لایک x 5
  5. ArtmisSoR

    ArtmisSoR کاربر حرفه ای

    ارسال‌ها:
    293
    امتیازات:
    +3,505 / -69
    نام مرکز سمپاد:
    فرزانگان‎امین
    شهر:
    Isf
    دانشگاه:
    پلی‌پیکنیک
    رشته دانشگاه:
    علوم کامپیوتر
    پاسخ : پرسش و پاسخ پیرامون برنامه نویسی

    این سوال رو ببینید٬
    من با چیزی که از سوال فهمیدم یه کد بسیار پر شرط و شروط نوشتم٬ مشکل اینه که وقتی تعداد test case بیشتر از ۶ میشه٬ برنامه‌م فقط ۶تای اول رو خروجی میده! دوتا تست اول(که احتمالا کمتر از ۶تا test case داره) جواب درسته٬ تست سوم wrong answer و تست چهارم segmentation fault (احتمالاً تایم لیمیت)

    کد من اینه:
    کد:
    #include <cmath>
    #include <cstdio>
    #include <vector>
    #include <iostream>
    #include <algorithm>
    using namespace std;
    
    
    int main() {
        int t, n, m, posi[t];
        cin>>t;
        for(int i=0 ; i<t ; i++){
        	cin>>n>>m;
            if(n%2==1){ //N: fard 
              if(m%2==0 && (m%n)%2==1){
                posi[i]=(n-((m%n)+1)/2)+1;
              }
              else if(m%2==1 && (m%n)%2==1) {
                posi[i]=((m%n)+1)/2;
              }
              else if(m%2==0 && (m%n)%2==0 && m%n!=0){
                posi[i]=(n-((m%n)/2))+1;
              }
              else if(m%2==1 && (m%n)%2==0 && m%n!=0){
                posi[i]=(m%n)/2;
              }
              else {
                posi[i]=(n+1)/2;
              }
            }
            //***
            //**
            //*
            else if(n%2==0){ //N: zowj
                if(m%2==1){
                posi[i]=((m%n)+1)/2;
              }
               else if(m%2==0 && m%n!=0){
                posi[i]=n-((m%n)/2)+1;
              } 
              else {
                posi[i]=(n/2)+1;
              }
    
            }
            cout<<posi[i]<<" "<<(m-1)/n<<endl;
        }
       
        return 0;
    }
    

    و یه سوال کلّی ترم اینه که آیا این درسته که من توی همون حلقه‌ی for که باهاش ورودی میگیرم٬ خروجی چاپ کنم؟ به نظرم معقول نیومد٬ اما توی تست‌ها جواب داد (البته تست‌هایی با کمتر از ۶ test case)!
     
  6. Anita H

    Anita H کاربر حرفه ای

    ارسال‌ها:
    568
    امتیازات:
    +2,913 / -42
    نام مرکز سمپاد:
    Hell(i) 2
    شهر:
    تهران
    سال فارغ التحصیلی:
    96
    دانشگاه:
    شریف
    رشته دانشگاه:
    مهندسی کامپیوتر
    پاسخ : پرسش و پاسخ پیرامون برنامه نویسی

    اول t رو از ورودی بگیر بعد آرایه posi رو تعریف کن ;;) :‌))
     
    • لایک لایک x 1
  7. ArtmisSoR

    ArtmisSoR کاربر حرفه ای

    ارسال‌ها:
    293
    امتیازات:
    +3,505 / -69
    نام مرکز سمپاد:
    فرزانگان‎امین
    شهر:
    Isf
    دانشگاه:
    پلی‌پیکنیک
    رشته دانشگاه:
    علوم کامپیوتر
    پاسخ : پرسش و پاسخ پیرامون برنامه نویسی

    بعله. اشتباه واقعاً شرم‌آوری بود:|
    الآن سوال جدیدم اینه که پس چرا قبلش تا ۶تا تست‌کیس رو جواب میداد اصلاً؟!:))
     
  8. mahsa.n

    mahsa.n کاربر جدید

    ارسال‌ها:
    0
    امتیازات:
    +248 / -2
    نام مرکز سمپاد:
    فرزانگان 1
    شهر:
    شیراز
    پاسخ : پرسش و پاسخ پیرامون برنامه نویسی

    سلام دوستان!!!
    من كتاب چگونه با c++ برنامه نويسي كنيم دايتل ترجمه عليرضا انصاري رو گرفتم و خيلي هم راضي هستم!! :D
    مي خواستم بپرسم كتاب خوب اين مدلي براي python و هم چنين html وcss چي سراغ دارين؟؟؟
    (اگه منبع مورد نظرتون انگليسيه ميشه ترجمه خوبش رو هم بگيد؟؟ ممنون!!)
     
  9. Anita H

    Anita H کاربر حرفه ای

    ارسال‌ها:
    568
    امتیازات:
    +2,913 / -42
    نام مرکز سمپاد:
    Hell(i) 2
    شهر:
    تهران
    سال فارغ التحصیلی:
    96
    دانشگاه:
    شریف
    رشته دانشگاه:
    مهندسی کامپیوتر
    پاسخ : پرسش و پاسخ پیرامون برنامه نویسی

    کتاب چگونه با python برنامه نویسی کنیم دایتل
    کتاب چگونه برای وب برنامه نویسی کنیم دایتل
    :D
    ولی جدی شاید این کتابا خوب باشن با توجه به این که نویسنده های اولی دایتل و دایتل و دایتل هستن و نویسنده ی دومی دایتل هست:
    Internet & World Wide Web How to Program / Deitel & Deitel & Deitel
    Python How to Program / Deitel
     
    • لایک لایک x 2
  10. Agent 47

    Agent 47 کاربر حرفه ای

    ارسال‌ها:
    318
    امتیازات:
    +1,519 / -364
    نام مرکز سمپاد:
    شهید بهشتی
    شهر:
    تهران
    دانشگاه:
    شهید بهشتی
    رشته دانشگاه:
    علوم کامپیوتر
    پاسخ : پرسش و پاسخ پیرامون برنامه نویسی

    آقا کسی بلده با python وب کراولر ( crawler) بسازه؟ اگه آره یه پی ام بده :D


    پ ن: اومدم امتحان کنم ببینم چیه کف و خون قاطی کردم :|
    [​IMG]
     
  11. Majid1889

    Majid1889 کاربر نیمه حرفه ای

    ارسال‌ها:
    210
    امتیازات:
    +349 / -22
    نام مرکز سمپاد:
    حلیــــ2ـــــــ
    شهر:
    تهران
    سال فارغ التحصیلی:
    95
    رشته دانشگاه:
    نرم افزار
    پاسخ : پرسش و پاسخ پیرامون برنامه نویسی

    پایتون ؟! ( با لفظ اون بنفشه خونده بشه :D )
    با PHP اگه خواستی در خدمتم ! :|
     
  12. Agent 47

    Agent 47 کاربر حرفه ای

    ارسال‌ها:
    318
    امتیازات:
    +1,519 / -364
    نام مرکز سمپاد:
    شهید بهشتی
    شهر:
    تهران
    دانشگاه:
    شهید بهشتی
    رشته دانشگاه:
    علوم کامپیوتر
    پاسخ : پرسش و پاسخ پیرامون برنامه نویسی

    به خاطر کار مجبورم پایتون یاد بگیرم و فعلا فریوم ورک scrapy نظرمو جلب کرده. چیز خوبیه مث این که :-"
     
  13. Majid1889

    Majid1889 کاربر نیمه حرفه ای

    ارسال‌ها:
    210
    امتیازات:
    +349 / -22
    نام مرکز سمپاد:
    حلیــــ2ـــــــ
    شهر:
    تهران
    سال فارغ التحصیلی:
    95
    رشته دانشگاه:
    نرم افزار
    پاسخ : پرسش و پاسخ پیرامون برنامه نویسی

    من که به شخصه از اسمشم میترسم ... :D
    ولی در هر صورت فک کنم از لحاظ الگوریتمیک یکسان باشن ؛ مگه اینکه پایتون محدودیت توابع http و اینا داشته باشه !
     
  14. Agent 47

    Agent 47 کاربر حرفه ای

    ارسال‌ها:
    318
    امتیازات:
    +1,519 / -364
    نام مرکز سمپاد:
    شهید بهشتی
    شهر:
    تهران
    دانشگاه:
    شهید بهشتی
    رشته دانشگاه:
    علوم کامپیوتر
    پاسخ : پرسش و پاسخ پیرامون برنامه نویسی

    نه باو خیلی بچه خوبیه :D چیزای جالبی داره :-? من الان 2-3 هفتس دارم میخونم احساس می کنم هیچی بلد نیستم :))
     
  15. hastikhanoom

    hastikhanoom کاربر خاک انجمن خورده

    ارسال‌ها:
    1,819
    امتیازات:
    +14,631 / -175
    نام مرکز سمپاد:
    فرزانگان
    شهر:
    قم
    سال فارغ التحصیلی:
    97
    پاسخ : پرسش و پاسخ پیرامون برنامه نویسی

    یه مرجعی برای آموزش پایتون معرفی می کنین؟ یکم،فقط یکم بالاتر از لول مبتدی :-" قبلا کسی یادم میداد الان نیستش...
     
    • لایک لایک x 2
  16. -mina-

    -mina- کاربر نیمه حرفه ای

    ارسال‌ها:
    223
    امتیازات:
    +635 / -35
    نام مرکز سمپاد:
    فرزانگان
    شهر:
    میانه
    دانشگاه:
    اهواز
    رشته دانشگاه:
    دامپزشکی
    پاسخ : پرسش و پاسخ پیرامون برنامه نویسی

    کورس ارا ، یه کورس داشت بد نبود، ترافیک نتت چقدره ؟
     
  17. hastikhanoom

    hastikhanoom کاربر خاک انجمن خورده

    ارسال‌ها:
    1,819
    امتیازات:
    +14,631 / -175
    نام مرکز سمپاد:
    فرزانگان
    شهر:
    قم
    سال فارغ التحصیلی:
    97
    پاسخ : پرسش و پاسخ پیرامون برنامه نویسی

    نمی دونمم :D در جریانش نیستم،چون تا حالا دانلود آنچنانیی نکردم.... :-?
     
    • لایک لایک x 1
  18. Agent 47

    Agent 47 کاربر حرفه ای

    ارسال‌ها:
    318
    امتیازات:
    +1,519 / -364
    نام مرکز سمپاد:
    شهید بهشتی
    شهر:
    تهران
    دانشگاه:
    شهید بهشتی
    رشته دانشگاه:
    علوم کامپیوتر
    پاسخ : پرسش و پاسخ پیرامون برنامه نویسی

    http://learnpythonthehardway.org/book/
    http://www.learnpython.org/
    https://www.codecademy.com/tracks/python
     
  19. ArtmisSoR

    ArtmisSoR کاربر حرفه ای

    ارسال‌ها:
    293
    امتیازات:
    +3,505 / -69
    نام مرکز سمپاد:
    فرزانگان‎امین
    شهر:
    Isf
    دانشگاه:
    پلی‌پیکنیک
    رشته دانشگاه:
    علوم کامپیوتر
    پاسخ : پرسش و پاسخ پیرامون برنامه نویسی

    یه کد ساده‌ی بسط تیلور-مک‌لورن هست که نمی‌دونم چرا برای بیشتر از ۱۸ترم اول بسط جواب inf یا NaN می‌ده. متغیرهای اعشاری رو لانگ دابل تعریف کردم ولی نتیجه‌ی خاصی نگرفتم.
    [​IMG]
     
  20. Anita H

    Anita H کاربر حرفه ای

    ارسال‌ها:
    568
    امتیازات:
    +2,913 / -42
    نام مرکز سمپاد:
    Hell(i) 2
    شهر:
    تهران
    سال فارغ التحصیلی:
    96
    دانشگاه:
    شریف
    رشته دانشگاه:
    مهندسی کامپیوتر
    پاسخ : پرسش و پاسخ پیرامون برنامه نویسی

    با توجه به این که مقدار divisor از دو به توان سی و یک منهای دو بیشتر نمیشه، اورفلو میکنه. چون توش هیجده فاکتوریل رو هم ذخیره میکنید و این عدد بزرگیه!
    احتمالن کار این طوری پیش میره که:
    divisor از محدوده ی اینت که خارج میشه بعدش، به یه جایی میرسه که بیشتر از ۳۰ تا عامل ۲ داره و این یعنی که ۳۱ بیت سمت راست divisor صفر هستن، که اگه این طوری باشه، divisor صفر میشه و num / divisor میشه inf و توی مراحل بعدش هم nan!
     
    • لایک لایک x 2