پروژه برنامه مویسی

پروژه برنامه نویسی

پروژه برنامه مویسی

پروژه برنامه نویسی

8-5 سوالاتی درباره ی اشاره گرها و رشته ها

درستی عبارات زیر را بررسی کرده و در صورت نادرست بودن علت آن را ذکر کنید.


الف) نمی توان دو اشاره گر را که به آراریه های متفاوتی اشاره می کنند با هم مقایسه کرد.

جواب: درست

------------

ب) چون نام آرایه به اولین عنصر آن آرایه اشاره می کند. دقیقا همان کارهایی را که با اشاره گرها می توانیم انجام دهیم با نام آرایه نیز می توانیم همان کارها را انجام دهیم.

جواب: نادرست. از تان آرایه نمی توانیم برای مراجعه کردن به قسمت های مختلف حافظه استفاده کنیم.

46-3 آیا می شود تابع main را به صورت بازگشتی فراخواند؟

آیا می شود main را به صورت بازگشتی فراخواند؟ برنام های شامل یک تابع main بنویسید و متغیر محلی و static به نام count معرفی کنید و مقدار اولیه ی آن را یک قرار دهید. سپس مقدار متغیر count را در هر بار فراخوانی main افزایش داده و چاپ نمایید. بعد از اجرای برنامه چه اتفاقی می افتد؟


#include<iostream>

#include<conio.h>

using namespace std;


int main()

{

static int count = 1;

++count;

cout << count << endl;

main();

getch();

return 0;

}

45-3 بزرگ ترین مقسوم علیه دو عدد

بزرگ ترین مقسوم علیه دو عدد با استفاده از تابع بازگشتی



#include<iostream>

#include<conio.h>

using namespace std;


unsigned gcd(unsigned int, unsigned int);


int main()

{

unsigned x, y, gcD1v;

cout << "Enter two integers: ";

cin >> x >> y;

gcD1v = gcd(x, y);

cout << "Greatest common divisor of " << x << " and "

<< y << " is " << gcD1v << endl;

getch();

return 0;

}

//

unsigned gcd(unsigned xMatch, unsigned yMatch)

{

return yMatch == 0 ? xMatch : gcd(yMatch, xMatch % yMatch);

}