اطلاعیه

Collapse
No announcement yet.

چند تا سوال برنامه نویسی ++c

Collapse
X
 
  • فیلتر
  • زمان
  • Show
Clear All
new posts

    چند تا سوال برنامه نویسی ++c

    سلام خدمت دوستان عزیز
    اول این که از کجا میشه نرم افزاری برای برنامه نویسی ++c دانلود کرد
    و چند تا سوال برنامه نویسی ، البته میدونم خیلی ساده هستش.
    ولی اگه کمک کنید ممنون میشم:

    1) تابعی بنویسید که یک عدد صحیح را بگیرد وعدد صحیح با رقم های معکوس آن بازگرداند؟
    مثال: 2731 <----- 1372

    2)تابعی بنویسید که یک عدد صحیح بگیرد و اگر عدد اول باشد مقدار 1 و در غیر این صورت عدد 0 برگرداند. با استفاده از تابع های فوق اعداد اول بین 0 تا500 را توسط یک برنامه تعیین کنید؟

    3)تابع بازگشتی به نام gcd (اسم) بنویسید که دو عدد صحیح را دریافت کند و بزرگترین مقسوم علیه مشترک آنها را بازگرداند؟

    تشکر
    در كودكي مي خواستم جهان را عوض كنم ، جوان كه شدم مي خواستم كشورم را عوض كنم ، به ميانسالي كه رسيدم مي خواستم شهرم را عوض كنم ، اكنون كه به پيري رسيدم فهميدم كه اگر خودم را عوض مي كردم شايد مي توانستم جهان را عوض كنم

    #2
    پاسخ : چند تا سوال برنامه نویسی ++c

    سلام
    دوست عزیز این برنامه اول تا بقیه را بنویسم
    int ma***e adad (n){
    for(int=i; i>-1; i--)
    retern i;
    }

    n تعداد اعداد وارد شده است

    دیدگاه


      #3
      پاسخ : چند تا سوال برنامه نویسی ++c

      نوشته اصلی توسط محمد مینائیان
      سلام
      دوست عزیز این برنامه اول تا بقیه را بنویسم
      int ma***e adad (n){
      for(int=i; i>-1; i--)
      retern i;
      }

      n تعداد اعداد وارد شده است
      فکر نمی کنم تابعی که نوشتین بتونه اون کارهای خواسته شده رو انجام بده
      It's not the Strongest that Survive, Nor the Most Intelligence, But the ones Most Responsive to Change
      گونه هایی که شانس بقا دارند ، نه قویترین هستند و نه باهوشترین بلکه آنهایی هستند که بیشترین آمادگی تغییرات را دارند !
      چارلز داروین - بنیانگذار نظریه تکامل

      دیدگاه


        #4
        پاسخ : چند تا سوال برنامه نویسی ++c

        سلام راستش چون من دو ترم پیش برنامه نویسی داشتم یادم رفته دقیقا چه طوری بود الگوریتمشو می ذارم خودت تابعشو درس کن ( عدد اول )

        cnt=0
        for ( i=0 ; i<=n/2 ; i=i+1 )
        r=n % i
        if ( r=0 )
        cnt=cnt+1
        if ( cnt=0)
        cout="1" else cout="0"

        دیدگاه


          #5
          پاسخ : چند تا سوال برنامه نویسی ++c

          سلام سوال 1:



          #include <conio.h>
          #include <iostream>
          using namespace std;

          int invert(int num) {
          int inv=0;
          bool neg=(inv<0)?true:false;
          while (num) { inv*=10; inv+=num%10; num/=10; }
          return (neg)?-inv:inv;
          } //end invert()

          int main() {
          cout<<"Enter a number to see it inverted : ";
          int num;
          cin>>num;
          cout<<invert(num);
          getch();
          return 0;
          } //end main()

          Upload your files Here. Great Azeri Resumable File Host: http://endir.az/index.php?lang=5

          دیدگاه


            #6
            پاسخ : چند تا سوال برنامه نویسی ++c

            سلام
            برنامه دومی رو نوشتم. تو این تاپیک کاملترشو گذاشتم. با سرعت فوق العاده بالا.
            http://www.eca.ir/forum2/index.php?topic=21435.0
            Upload your files Here. Great Azeri Resumable File Host: http://endir.az/index.php?lang=5

            دیدگاه


              #7
              پاسخ : چند تا سوال برنامه نویسی ++c

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



              #include <conio.h>
              #include <iostream>
              using namespace std;
              #include <cmath>
              using namespace std;

              int gcd(int max,int min) {
                if ((max<0)||(min<0)) return 0;
                int tmp=(max>min)?max:min;
                min=(max<min)?max:min;
                max=tmp;
                if (!(max%min)) return min;
                int sq=(int)sqrt(min); //to calculate once
                for (tmp=2;tmp<=sq;tmp++) {
                  if ((!(min%tmp))&&(!(max%(min/tmp)))) return (min/tmp);
                  } //end for
                return 1;
                } //end gcd()


              int main() {
                int a=0,b=0;
                while((a<1)||(b<1)) {
                  cout<<"Enter two numbers to calculate their greatest common divisor : ";
                  cin>>a>>b;
                  } //end while
                cout<<gcd(a,b);
                getch();
                return 0;
                } //end main()


              Upload your files Here. Great Azeri Resumable File Host: http://endir.az/index.php?lang=5

              دیدگاه

              لطفا صبر کنید...
              X