• Tidak ada hasil yang ditemukan

ﺧﻼﺻﻪ درس ﺷﺸﻢ ١ ادﻏﺎم دو وﮐﺘﻮر ﻣﺮﺗﺐ

N/A
N/A
Protected

Academic year: 2024

Membagikan "ﺧﻼﺻﻪ درس ﺷﺸﻢ ١ ادﻏﺎم دو وﮐﺘﻮر ﻣﺮﺗﺐ"

Copied!
9
0
0

Teks penuh

(1)

٩٦ نﺎﺘﺴﻣز ‐ ﻪﺘﻓﺮﺸﯿﭘ ﺴﯾﻮﻧ ﻪﻣﺎﻧﺮﺑ یﺮﻫﻮﺟ ﻦﯿﺴﺣ :ﻂﺳﻮﺗ ﺲﯾرﺪﺗ ﺳﻮﻃ ﻦﯾﺪﻟاﺮﯿﺼﻧ ﻪﺟاﻮﺧ هﺎ ﺸﻧاد ‐ ﺿﺎﯾر هﺪ ﺸﻧاد

ﻢﺸﺷ سرد ﻪﺻﻼﺧ

:سرد ﻦﯾا ﻢﯿﻫﺎﻔﻣ ﺎﯾﻮﭘ ﻪﯾارآ ،ﺮﮔ هرﺎﺷا رﻮﺘﮐو ﺎﺑ رﺎﮐ زا ﻟﺎﺜﻣ

ﺐﺗﺮﻣ رﻮﺘﮐو ود مﺎﻏدا ١

و ﻢﯿﻨﮐ مﺎﻏدا ﻢﻫ رد ار B و A ﻢﯿﻫاﻮﺧ ﻣ .ﺪﻧا هﺪﺷ ﺐﺗﺮﻣ یدﻮﻌﺻ ترﻮﺼﺑ B و A یدﺪﻋ یﺎﻫرﻮﺘﮐو ﺪﯿﻨﮐ ضﺮﻓ .ﺪﻫد ﻣ مﺎﺠﻧا ار رﺎﮐ ﻦﯾا vectors_sorted_merge ﻊﺑﺎﺗ .ﺪﺷﺎﺑ ﺐﺗﺮﻣ ﻢﻫ C ﻪﮐ ﺗرﻮﺼﺑ ﻢﯾﺰﯾﺮﺑ C رﻮﺘﮐو رد void merge_sorted_vectors(vector<int>& A, vector<int>& B, vector<int>& C){

C.clear();

int c = A.size()+B.size();

int i=0,j=0;

for(int k=0;k <c; k++){

if((A[i]) <= B[j]){

C.push_back(A[i]);

i++;

}

else {

C.push_back(B[j]);

j++;

} } }

.ﻢﯿﻨﮐ ﻒﯾﺮﻌﺗ ﻊﺑﺎﺗ ﻞﺧاد ار C ﻢﯿﻧاﻮﺗ ﻣ دﺮﯿﮔ راﺮﻗ A رﻮﺘﮐو رد ﻞﺻﺎﺣ ﻢﯿﻫاﻮﺨﺑ ﺮﮔا

(2)

void merge_sorted_vectors(vector<int>& A, vector<int>& B){

vector <int> C;

int c = A.size()+B.size();

int i=0,j=0;

for(int k=0;k <c; k++){

if((A[i]) <= B[j]){

C.push_back(A[i]);

i++;

}

else {

C.push_back(B[j]);

j++;

} } A=C;

}

ﺳردآ هداد ٢

هداد ،(هﺮﯿﻏ و double ، int ﻞﯿﺒﻗ زا) هدﺎﺳ هداد عاﻮﻧا :ﺪﻧﻮﺷ ﻣ ﻢﯿﺴﻘﺗ ﻠﺻا ﻪﺘﺳد ﻪﺳ ﻪﺑ C++ رد هداد عاﻮﻧا رد .ﺮﮔ هرﺎﺷا و (ﺲﻧﺮﻓر) ﻊﺟﺮﻣ ﻪﻠﻤﺟ زا ﺳردآ یﺎﻫ هداد ﺎﺘﯾﺎﻬﻧ و سﻼﮐ و ﺖﮐاﺮﺘﺳا ،ﺎﻫ ﻪﯾارآ ﻞﺜﻣ ﻪﺘﻓﺎﯾرﺎﺘﺧﺎﺳ .ﻢﯾزاﺪﭘ ﻣ ﺳردآ هداد عﻮﻧ ﺳرﺮﺑ ﻪﺑ سرد ﻦﯾا

(3)

ﻌﺟﺮﻣ هداد ١ . ٢

ﻢﯿﻧاد ﻣ .ﻢﯾا هﺪﺷ ﺎﻨﺷآ pass by referenceعﺎﺟرا ﻖﯾﺮﻃ زا ﻊﺑﺎﺗ ﻪﺑ ﺮﺘﻣارﺎﭘ لﺎﺳرا مﻮﻬﻔﻣ ﺎﺑ ﻼﺒﻗ سرد ﻦﯾا رد رد ﺪﻫد خر هﺪﺷ لﺎﺳرا ﺮﺘﻣارﺎﭘ رد ﻊﺑﺎﺗ ﻪﻧﺪﺑ رد ﻪﮐ یﺮﯿﯿﻐﺗ ﺮﻫ دﻮﺷ لﺎﺳرا ﻊﺑﺎﺗ ﻪﺑ ﻊﺟﺮﻣ ترﻮﺼﺑ ﻪﮐ یﺮﺘﻣارﺎﭘ ﻪ ﯿﻟﺎﺣ رد ﻪﮐ دﻮﺷ ﻣ هداد ﻊﺑﺎﺗ ﻪﺑ ﻌﺟﺮﻣ ترﻮﺼﺑ لوا ﺮﺘﻣارﺎﭘ ﺮﯾز ﻊﺑﺎﺗ رد لﺎﺜﻣ یاﺮﺑ .دﻮﺷ ﻣ ﺲﮑﻌﻨﻣ نآ ﺎﺸﻨﻣ لوا ﺮﺘﻣارﺎﭘ رد ﻪﮐ یﺮﯿﯿﻐﺗ ﺮﻫ ﻊﺑﺎﺗ ﻪﻧﺪﺑ رد ﻪﮐ ﺖﺳا ﻨﻌﻣ ﻦﯾﺪﺑ ﻦﯾا .ﺖﺳا هﺪﺷ لﺎﺳرا راﺪﻘﻣ ترﻮﺼﺑ مود ﺮﺘﻣارﺎﭘ .ﺪﻨﮐ ﻤﻧ یﺮﯿﯿﻐﺗ مود ﺮﺘﻣارﺎﭘ ﺎﺸﻨﻣ ﺎﻣا دﻮﺷ ﻣ ﺲﮑﻌﻨﻣ نآ ﺎﺸﻨﻣ رد دﻮﺷ لﺎﻤﻋا void somefunction(int& d, int c){

d = d * 12;

c = c * 12;

}

int main(){

int x =2; int y = 2;

sumefunction(x,y);

cout <<"x =" <<x <<endl;

cout <<"y =" <<y <<endl;

}

output : x = 24 y = 2

زا ار x ﺮﯿﻐﺘﻣint& xلﺎﺜﻣ یاﺮﺑ .دﺮﮐ ﻒﯾﺮﻌﺗ ﺮ ﯾد هداد عاﻮﻧا یاﺮﺑ ﻊﺟﺮﻣ عﻮﻧ زا یﺮﯿﻐﺘﻣ ناﻮﺗ ﻣ ﻞﮐ رد .دﻮﺷ ﻣ ﻪﺟاﻮﻣ ﺮﻠﯾﺎﭙﻣﺎﮐ یﺎﻄﺧ ﺎﺑ و دراﺪﻧ ﯽﯾﺎﻨﻌﻣ ﯽﯾﺎﻬﻨﺗ ﻪﺑ ﺮﯾز رﻮﺘﺳد ﻪﺘﺒﻟا .ﺪﻨﮐ ﻣ ﻒﯾﺮﻌﺗ int یاﺮﺑ ﻌﺟﺮﻣ عﻮﻧ int & x;

عﻮﻧ زا یﺮﯿﻐﺘﻣ .ﺪﺷﺎﺑ ﻪﻈﻓﺎﺣ زا یﺮﺒﺘﻌﻣ یﺎﺟ ﻢﺳا و دﻮﺷ ﻪﯿﻟوا ﻫدراﺪﻘﻣ ﻪﺸﯿﻤﻫ ﺪﯾﺎﺑ ﻋﺎﺟرا هداد عﻮﻧ ﯾ (ﺪﺷﺎﺑ نآ عﻮﻨﻤﻫ ﺪﯾﺎﺑ ﻪﺘﺒﻟا ﻪﮐ) ﺪﻨﮐ ﻣ ﻞﻤﻋ ﺮ ﯾد یﺮﯿﻐﺘﻣ یاﺮﺑ رﺎﻌﺘﺴﻣ ﻢﺳا ﻞﺜﻣ reference ﻊﺟﺮﻣ ﺐﯿﺗﺮﺗ ﻦﯾا ﻪﺑ .ﺪﻨﮐ ﻣ ﻫدراﺪﻘﻣ y ﺎﺑ ار نآ و ﺪﻨﮐ ﻣ ﻒﯾﺮﻌﺗ int یاﺮﺑ ﻌﺟﺮﻣ عﻮﻧ زا ارxﺮﯿﻐﺘﻣ ﺮﯾز رﻮﺘﺳد

.دﻮﺷ ﻣxراﺪﻘﻣ ﺮﯿﯿﻐﺗ ﺚﻋﺎﺑyﺮﯿﯿﻐﺗ ،دﻮﺷ ﻣ ﻪﻈﺣﻼﻣ ﻪﮐ رﻮﻄﻧﺎﻤﻫ .دﻮﺷ ﻣyﺮﯿﻐﺘﻣ یاﺮﺑ رﺎﻌﺘﺴﻣ ﻤﺳاx

(4)

int main(){

int y=34;

int& x=y;

cout <<"x ="<<x<<endl;

y = 12;

cout <<"x ="<<x;

return 0;

}

output:

x = 34 x = 12

ﺮﮔ هرﺎﺷا ٢ . ٢

سردآ یوﺎﺣ xﻢﺳا ﻪﺑ یﺮﯿﻐﺘﻣ ﻪﮐ دﻮﺷ ﻣ ﺚﻋﺎﺑ ﺮﯾز نﻼﻋا .ﺪﻨﺘﺴﻫ ﻪﻈﻓﺎﺣ زا ﻠﺤﻣ سردآ یوﺎﺣ ﺎﻫﺮﮔ هرﺎﺷا .ﺪﻨﮐ ﻣ یراد ﻪﮕﻧ ار y ﺮﯿﻐﺘﻣ راﺪﻘﻣ ﻪﮐ ﺪﺷﺎﺑ ﻪﻈﻓﺎﺣ زا ﻠﺤﻣ int y = 22;

int * x = & y;

ﻞﺤﻣ یاﻮﺘﺤﻣ ﻪﻧ و دﻮﺷ ﻣ پﺎﭼ ﻪﻈﻓﺎﺣ ﻞﺤﻣ سردآ x پﺎﭼ ترﻮﺻ رد ،ﻊﺟﺮﻣ عﻮﻧ زا ﺮﯿﻐﺘﻣ فﻼﺧ ﺮﺑ ﻪﻈﻓﺎﺣ رد ﻪﻣﺎﻧﺮﺑ نﺎ ﻣ نﻮﭼ دﻮﺷ پﺎﭼ ﻒﻠﺘﺨﻣ یﺎﻬﺳردآ ﺖﺳا ﻦ ﻤﻣ ﻒﻠﺘﺨﻣ یﺎﻫاﺮﺟا رد ﺪﯿﻨﮐ ﺖﻗد .ﻪﻈﻓﺎﺣ

.دﻮﺷ ﺮﯿﯿﻐﺗ شﻮﺨﺘﺳد ﺖﺳا ﻦ ﻤﻣ int y = 22;

int * x = & y;

cout <<"x ="<<x;

output:

x =0x6ffe24

.دﻮﺷ ﻣ هداد نﺎﺸﻧ (16یﺎﻨﺒﻣ) لﺎﻤﯿﺳداﺰ ﻫ یﺎﻨﺒﻣ رد یدﺪﻋ ترﻮﺼﺑ سردآ دﻮﺷ ﻣ ﻪﻈﺣﻼﻣ ﻪﮐ رﻮﻄﻧﺎﻤﻫ ﻪﯿﻟوا ﻫدراﺪﻘﻣ ﺎﯾ دﺮﯿ ﺑ ﻬﺗ راﺪﻘﻣ ﺪﻧاﻮﺗ ﻣ ﺮﮔ هرﺎﺷا هداد عﻮﻧ زا ﺮﯿﻐﺘﻣ ،ﻊﺟﺮﻣ هداد عﻮﻧ زا ﺮﯿﻐﺘﻣ فﻼﺧ ﺮﺑ ﻊﺟﺮﻣ هداد عﻮﻧ یاﺮﺑ ﻦﯾا .ﺪﻨﮐ ﺮﯿﯿﻐﺗ ﺪﻧاﻮﺗ ﻣ ﺪﻨﮐ ﻣ هرﺎﺷا نآ ﻪﺑ x ﻪﮐ ﻠﺤﻣ ﻪﻣﺎﻧﺮﺑ لﻮﻃ رد ﻦﯿﻨﭽﻤﻫ .دﻮﺸﻧ

.(ﺪﻧا هدﺮﮐ ﻢﻫاﺮﻓ ار نﺎ ﻣا ﻦﯾا ﻪﺘﺒﻟا ﺎﻫﺮﻠﯾﺎﭙﻣﺎﮐ زا ﺧﺮﺑ) ﺖﺴﯿﻧ ﺮﯾﺬﭙﻧﺎ ﻣا

(5)

int y = 5, z;

int * x;

x = & y;

...

x= & z;

.دﻮﺷ ﻣ هدﺎﻔﺘﺳا *x ترﺎﺒﻋ زا ﺪﻨﮐ ﻣ هرﺎﺷا نآ ﻪﺑ x ﻪﮐ ﻠﺤﻣ یاﻮﺘﺤﻣ ﻪﺑ ﺳﺮﺘﺳد یاﺮﺑ int y = 5;

int * x;

x = & y;

cout << *x;

output:

5

ﺮﯿﯿﻐﺗ ار y راﺪﻘﻣ و ﺖﺳا ﺮﺒﺘﻌﻣ ﺮﯾز تارﻮﺘﺳد .دﺮﺑ رﺎ ﺑ y ﺮﯿﻐﺘﻣ یاﺮﺑ ﺮ ﯾد ﻤﺳا ﺪﻨﻧﺎﻣ ناﻮﺗ ﻣ ار *x ترﺎﺒﻋ .ﺪﻫد ﻣ int y = 12;

int* x = &y;

*x = 10;

cin >> *x;

ﺳردآ ﺮﻫ ﺪﻧاﻮﺗ ﻣ نآ راﺪﻘﻣ ،دﻮﺷ ﻤﻧ ﻪﯿﻟوا ﻫدراﺪﻘﻣ و دﻮﺷ ﻣ نﻼﻋا ﺮﮔ هرﺎﺷا عﻮﻧ زا یﺮﯿﻐﺘﻣ ﻪﮐ ﺘﻗو ﺮﺠﻨﻣ اﺮﺟا مﺎﮕﻨﻫ یﺎﻄﺧ ﻪﺑ هﺪﺸﻧ ﻫدراﺪﻘﻣ ﺮﮔ هرﺎﺷا ﯾ ﻪﻈﻓﺎﺣ یاﻮﺘﺤﻣ ﻪﺑ ﺳﺮﺘﺳد رد ﻌﺳ .ﺪﺷﺎﺑ ﻪﻈﻓﺎﺣ زا

.دﺮﮐ ﻫدراﺪﻘﻣ دراد ار ﺮﺛا نﺎﻤﻫ ﻪﮐ NULL ﺎﯾ0راﺪﻘﻣ ﺎﺑ ار ﺮﮔ هرﺎﺷا عﻮﻧ زا ﺮﯿﻐﺘﻣ ﯾ ناﻮﺗ ﻣ .دﻮﺷ ﻣ

ﺮﮔ هرﺎﺷا زا هدﺎﻔﺘﺳا ﺎﺑ ﻊﺑﺎﺗ ﻪﺑ ﺮﺘﻣارﺎﭘ لﺎﺳرا ٣ . ٢

ار ﻊﺟﺮﻣ هﻮﯿﺷ ﻪﺑ لﺎﺳرا ﺮﺛا نﺎﻤﻫ ﻦﯾا ﻞﻤﻋ رد .دﺮﮐ لﺎﺳرا ﻊﺑﺎﺗ ﻪﺑ ﺮﮔ هرﺎﺷا زا هدﺎﻔﺘﺳا ﺎﺑ ناﻮﺗ ﻣ ار ﺮﯿﻐﺘﻣ ﯾ ﻪﺑ ﺮﮔ هرﺎﺷا ﯾ (دﻮﺷ هداد ﻊﺑﺎﺗ ﻪﺑ نآ زا ﻌﺟﺮﻣ ﻢﺳا ﺎﯾ) دﻮﺷ هداد ﻊﺑﺎﺗ ﻪﺑ ﺮﯿﻐﺘﻣ دﻮﺧ ﻪﮑﻨﯾا یﺎﺟ ﻪﺑ ﺎﺠﻨﯾا رد .دراد لﺎﺜﻣ یاﺮﺑ .دﻮﺷ ﻣ هداد ﻊﺑﺎﺗ ﻪﺑ ﺮﯿﻐﺘﻣ

(6)

void function(double* d){

*d = 2.2;

}

int main(){

double y = 1.0;

double* x = &y;

function(x);

cout <<"y ="<<y;

return 0;

}

output:

y=2.2;

ﺖﺑﺎﺛ هداد ﻪﺑ ﺮﮔ هرﺎﺷا و ﺖﺑﺎﺛ ﺮﮔرﺎﺷا ۴ . ٢

رد ﻪﻃﻮﺑﺮﻣ ﺮﯿﻐﺘﻣ راﺪﻘﻣ ﻪﮐ ﺖﺳا ﻨﻌﻣ ﻦﯾا ﻪﺑ ﺮﯿﻐﺘﻣ عﻮﻧ یاﺪﺘﺑا رد const یﺪﯿﻠﮐ ﻪﻤﻠﮐ ﺮﮐذ ﺪﯿﻧاﺪﯿﻣ ﻪﮐ رﻮﻄﻧﺎﻤﻫ ﻫدراﺪﻘﻣ ار نآ و ﺪﻨﮐ ﻣ ﻒﯾﺮﻌﺗconst intعﻮﻧ زا ار pi ﺮﯿﻐﺘﻣ ﺮﯾز رﻮﺘﺳد لﺎﺜﻣ یاﺮﺑ .ﺪﻨﮐ ﺮﯿﯿﻐﺗ ﺪﯾﺎﺒﻧ ﻪﻣﺎﻧﺮﺑ لﻮﻃ .ﺖﺴﯿﻧ ﺮﯿﯿﻐﺗ ﻞﺑﺎﻗ ﻪﻣﺎﻧﺮﺑ لﻮﻃ رد pi ﺮﯿﻐﺘﻣ .ﺪﻨﮐ ﻣ ﻪﯿﻟوا const int pi = 3.1415;

عﻮﻧ زا ﻪﮐ ﺪﻨﮐ ﻣ ﻒﯾﺮﻌﺗ ptr مﺎﻧ ﻪﺑ یﺮﮔ هرﺎﺷا ﺮﯾز رﻮﺘﺳد .دﺮﮐ ﻒﯾﺮﻌﺗ ﺖﺑﺎﺛ ترﻮﺼﺑ ناﻮﺗ ﻣ ﻢﻫ ار ﺮﮔ هرﺎﺷا هرﺎﺷا نآ ﻪﺑ ptr ﻪﮐ ﻠﺤﻣ یاﻮﺘﺤﻣ دﻮﺟو ﻦﯾا ﺎﺑ .ﺖﺴﯿﻧ ﺮﯿﯿﻐﺗ ﻞﺑﺎﻗ ﻪﻣﺎﻧﺮﺑ لﻮﻃ رد ptr راﺪﻘﻣ .ﺖﺳا ﺖﺑﺎﺛ ﺮﮔ هرﺎﺷا

.ﺖﺳا ﺮﯿﯿﻐﺗ ﻞﺑﺎﻗ ﺪﻨﮐ ﻣ int y = 32;

int z = 12;

int * const ptr = &y ; ptr = &z; // ERROR!

*ptr = 17; //Changes the value of y to 17

ﻒﯾﺮﻌﺗ ﺖﺑﺎﺛ هداد عﻮﻧ ﻪﺑ یﺮﮔ هرﺎﺷا ﺪﯾﺎﺑ ﺪﺷﺎﺑ ﺖﺑﺎﺛ هداد دﻮﺧ ﻟو ﺪﺷﺎﺑ ﺮﯿﯿﻐﺗ ﻞﺑﺎﻗ ﺮﮔ هرﺎﺷا ﻪﮐ ﻢﯿﻫاﻮﺨﺑ ﺮﮔا .ﻢﯿﻨﮐ

(7)

const int y = 32;

int z = 12;

const int * ptr = &y ; ptr = &z;

*ptr = 17; // ERROR!

ﺮﮔ هرﺎﺷا و ﻪﯾارآ ٣

ﺲﻨﺟ زا ﻪﮐ a پﺎﭼ ﺮﯾز ﺪﮐ ﻪﻌﻄﻗ رد .ﺖﺳا ﺖﺑﺎﺛ ﺮﮔ هرﺎﺷا ﯾ ﻊﻗاو رد دﻮﺷ ﻣ ﻒﯾﺮﻌﺗ ﻪﯾارآ عﻮﻧ زا ﻪﮐ یﺮﯿﻐﺘﻣ یوﺎﺣ ﻪﻤﻫ b و&a[0]و a یﺎﻬﺗرﺎﺒﻋ ﻊﻗاو رد .ﺖﺳا ﻪﯾارآ عوﺮﺷ سردآ پﺎﭼ ﺎﺑ لدﺎﻌﻣ ﺖﺳا هﺪﺷ ﻒﯾﺮﻌﺗ ﻪﯾارآ .ﺪﻫد ﻣ ﺮﯿﯿﻐﺗ ار3هرﺎﻤﺷ ﺲﯾﺪﻧا ﺮﺼﻨﻋ ﺮﺧآ رﻮﺘﺳد .ﺪﻨﺷﺎﺑ ﻣ ﻪﯾارآ عوﺮﺷ سردآ int a[5] ={0,0,0,0,0};

int *b = a;

cout<< a << endl;

cout<< &a[0] << endl;

cout<< b <<endl;

*(b + 3) = 14; //changes the fourth element in the array cout << a[3];

Output:

0x23ef20 0x23ef20 0x23ef20 14

لﺎﺳرا ﻊﺑاﻮﺗ ﻪﺑ ﺮﮔ هرﺎﺷا زا هدﺎﻔﺘﺳا ﺎﺑ ناﻮﺗ ﻣ ار ﺎﻫ ﻪﯾارآ ،ﻪﯾارآ عﻮﻧ زا ﺮﯿﻐﺘﻣ و ﺮﮔ هرﺎﺷا ندﻮﺑ لدﺎﻌﻣ ﻞﯿﻟد ﻪﺑ .دﺮﮐ

(8)

void function(double* d, int size){

for(int i=0;i <size; i++) d[i] = 2;

}

int main(){

double a[10];

function(a);

for(int i=0;i <10; i++) cout<<a[i]<<',';

return 0;

}

Output:

2,2,2,2,2,2,2,2,2,2,

ﺎﯾﻮﭘ ﻪﯾارآ و ﺮﮔ هرﺎﺷا ﻪﺑ ﺮﮔ هرﺎﺷا ١ . ٣

ﺖﺳا ﺮﮔ هرﺎﺷا ﻪﺑ ﺮﮔ هرﺎﺷا عﻮﻧ زا یﺮﯿﻐﺘﻣ ﻪﯿﺒﺷ ﻊﻗاو رد ﺖﺳا هﺪﺷ ﻒﯾﺮﻌﺗ یﺪﻌﺑ ود ﻪﯾارآ ﯾ عﻮﻧ زا ﻪﮐ یﺮﯿﻐﺘﻣ ﺮﻠﯾﺎﭙﻣﺎﮐ یﺎﻄﺧ ﺎﺑ ﺮﯾز رﻮﺘﺳد دﻮﺷ ﺖﻗد ﺪﯾﺎﺑ ﻪﺘﺒﻟا .ﺖﺳا یﺪﻌﺑ ﯾ یﺎﻫ ﻪﯾارآ زا یا ﻪﯾارآ دﻮﺧ یﺪﻌﺑود ﻪﯾارآ نﻮﭼ ﺎﺑ یا ﻪﯾارآ ﻪﺑ یﺮﮔ هرﺎﺷا عﻮﻧ زا نآ ﺮﯿﻐﺘﻣ دﻮﺷ ﻣ ﻒﯾﺮﻌﺗ ﺖﺑﺎﺛ دﺎﻌﺑا ﺎﺑ یﺪﻌﺑ ود ﻪﯾارآ ﺘﻗو نﻮﭼ دﻮﺷ ﻣ ﻪﺟاﻮﻣ .دﻮﺷ ﻣ ﻒﯾﺮﻌﺗ ﺖﺑﺎﺛ هزاﺪﻧا int a[5][5];

int **b = a; //ERROR!

ﻊﻗﻮﻣ رد نآ هزاﺪﻧا ﻪﮐ دﺮﮐ هدﺎﻔﺘﺳا یﺪﻌﺑ ﺪﻨﭼ یا ﻪﯾارآ ﻒﯾﺮﻌﺗ یاﺮﺑ ناﻮﺗ ﻣ ﺮﮔ هرﺎﺷا ﻪﺑ ﺮﮔ هرﺎﺷا زا دﻮﺟو ﻦﯾا ﺎﺑ .ﺪﯿﻨﯿﺒﺑ ار ﺮﯾز لﺎﺜﻣ .دﻮﺷ ﻣ ﺺﺨﺸﻣ اﺮﺟا

(9)

void function(double** d, int row, int col){

for(int i=0;i <row; i++) for(int j=0; j< col; j++)

d[i][j] = 2;

}

int main(){

double** a;

// defining the size of array during running time int r, c;

cin >> r >> c;

a = new double*[r];

for(int i=0; i<r; i++) a[i] = new double[c];

function(a,r,c);

// releasing the memory using delete for(int i=0; i<r; i++)

delete[] a[i];

delete[] a;

return 0;

}

Referensi

Dokumen terkait

نارﺎﻜﻤﻫ و فﺎﻛ ﺔﻌﻟﺎﻄﻣ رد 2003 رد ﻦﻳا ،ﺖﺳا هﺪﺷ هداد ﺖﺒﺴﻧ نﺪﺑ ةدﻮﺗ ﺺﺧﺎﺷ رد دﻮﺒﻬﺑ ﻪﺑ ﻦﻴﻟﻮﺴﻧا ﻪﺑ ﺖﻣوﺎﻘﻣ رد دﻮﺒﻬﺑ ﺎﻨﻌﻣ ﺎﻣا ،ﺖﺷاد ﺶﻫﺎﻛ ﻲﻨﻳﺮﻤﺗ هوﺮﮔ رد ﺎﻣ ﻖﻴﻘﺤﺗ رد نﺪﺑ ةدﻮﺗ ﺺﺧﺎﺷ ﻪﻛ ﺖﺳا ﻲﻟﺎﺣ

.+xnyn .ﻢﯿﺴﯾﻮﻧ ﻣ ﺮﯾز ترﻮﺼﺑ ﺎﺠﻨﯾا رد ار ﻠﺧاد بﺮﺿ ،ﻢﯾا هدﺮﮐ تدﺎﻋ ﻧﻮﺘﺳ یﺎﻫرادﺮﺑ و ﺴﯾﺮﺗﺎﻣ ﺶﯾﺎﻤﻧ ﺎﺑ نﻮﭼ x.y=xTy=yTx .ﺖﺳا ﻒﯾﺮﻌﺗ ﻞﺑﺎﻗ رادﺮﺑ مﺮﻧ ﺎﯾ رادﺮﺑ لﻮﻃ ، ﻠﺧاد بﺮﺿ مﻮﻬﻔﻣ زا هدﺎﻔﺘﺳا ﺎﺑ ﻪﺑ

ﻢﺸﭼ ﻲﺷﻮﭘ زا ﺎﻫزﺎﻴﻧ و ﻪﺘﺳاﻮﺧ يﺎﻫ ﻦﻳا ﺶﺨﺑ زا ،نﺎﮔﺪﻳﺰﮔﺮﺑ نﺎﻳز ﺎﻫ و ﻲﺗارﺎﺴﺧ ﺮﺑ ﻌﻣﺎﺟ ﺔ ﻲﻧﺎﺴﻧا ﺮﺑ يﺎﺟ ﻲﻣ دراﺬﮔ ﻪﻛ ﻲﻤﻧ ناﻮﺗ نآ ار ﻪﺑ ﻲﮔدﺎﺳ فﺮﻃﺮﺑ ﺮﻛ .د رد ﻖﻴﺒﻄﺗ ﺞﻳﺎﺘﻧ تﺎﻘﻴﻘﺤﺗ مﺎﺠﻧا هﺪﺷ رد

ﺶﻫوﮋﭘ لﺪﻣ ناﺮﻳا رد ﺶﻫوﮋﭘ رد يرﺎﻴﺴﺑ يﺎﻫ ﺔﻨﻴﻣز ﻲﻧﺎﻣزﺎﺳ ﺖﻳﺎﻤﺣ هﺪﺷ اﺮﺟا ﺖﺳا ﻪﻛ ﻠﻤﺟ زا ﺔ ﻲﻣ ﺎﻬﻧآ ناﻮـﺗ ﻪﺑ ﺶﻫوﮋﭘ ﻧارﺎـﻜﻤﻫ و نﺎﻴﻧﺎﻐﻣاد ﺶ 1394 ناﻮـﻨﻋ ﺎـﺑ » ﻲﻧﺎﻣزﺎـﺳ ﺖـﻳﺎﻤﺣ ﺮـﺛا و

ﻦﻳا عﻮﻤﺠﻣ رد ،ﻦﻳاﺮﺑﺎﻨﺑ ﻪﺠﻴﺘﻧ رﻮﻃ ﻪﺑ ﻪﻛ ﺖﺳا هﺪﺷ يﺮﻴﮔ ﻢﻏر ةﺮﺘﺴﮔ لﻮﻘﻌﻣﺎﻧ و مﺎﻬﺑا رد ﺎﻨﻌﻣ و زا ﻲﺧﺮﺑ مﻮﻬﻔﻣ ﻦﻳا تﺎﺋﺎﻨﺜﺘﺳا و ﻦﻴﻨﭽﻤﻫ توﺎﻔﺗ رد و ﻖﻳدﺎﺼﻣ ﻲﺧﺮﺑ وﺮﻤﻠﻗ ةﻮﺤﻧ لﺎﻤﻋإ مﺎﻈﻧ رد ﺎﻬﻧآ

ﺮﺿﺎﺣ ﻖﻴﻘﺤﺗ رد ،ﻞﻴﻟد ﻦﻴﻤﻫ ﻪﺑ زا هدﺎﻔﺘﺳا ﺎﺑ ﺎﺗ ﻪﻛ ﺖﺳا هﺪﺷ شﻼﺗ ﺖﻟﻻد ﺎﻫ تﺎﻳاور و تﺎﻳآ ي ،ﺖﺳا هﺪﻴﺳر ﺎﻣ ﻪﺑ يراﺰﮔﺮﻜﺷ درﻮﻣ رد ﻪﻛ ﻲﻔﻠﺘﺨﻣ ﺶﺳﺮﭘ ﻪﻣﺎﻧ هﺎﮔﺪﻳد زا يراﺰﮔﺮﻜﺷ يﺮﻈﻧ مﻮﻬﻔﻣ ﺶﺠﻨﺳ ياﺮﺑ يا

ﺚﺤﺑ ﻪﺠﯿﺘﻧ و يﺮـﯿﮔ مود ﺖﺸﮕﻧا رد ﻪﮐ يﺮﺗﺮﺑ ﻪﻄﻘﻧ ود ﺰﯾﺎﻤﺗ ﺖﺴﺗ درﻮﻣ رد ﺖﺷاد لﺮﺘﻨﮐ هوﺮﮔ ﻪﺑ ﺖﺒﺴﻧ رﺰﯿﻟ هوﺮﮔ ، ﻪﻌﻟﺎﻄﻣ ﻪﺑﺎﺸﻣ دﻮﺑ يا .دﻮﺑ هﺪﺷ مﺎﺠﻧا ﻪﯿﮐﺮﺗ رد ﯽﻧﺎﺘﺤﺗ رﻻﻮﺋﻮﻟآ ﺐﺼﻋ يور ﻪﮐ رد7

ﺶﻘﻧ و ﯽﮔﺪﻧز ﺖﯿﻔﯿﮐ مﻮﻬﻔﻣ ﺎﻣ ﻪﻌﻣﺎﺟ رد ﻪﮑﻨﯾا ﻪﺑ ﻪﺟﻮﺗ ﺎﺑ نﺎﻣرد نارﺎﻤﯿﺑ رد ﯽﺘﺧﺎﻨﺷ ناور يﺎﻫ هﺪﺷ ﻪﺘﺧادﺮﭘ ﺮﺗ ﻢﮐ MS نﺎﻣرد دﺮﺑرﺎﮐ ﻪﮐ ﻦﯾا ﻪﺑ ﺖﯾﺎﻨﻋ ﺎﺑ و ﺖﺳا ﻪﻠﻤﺟ زا ﻒﻠﺘﺨﻣ يﺎﻫ ﯽﻣ ،ﯽﺘﺧﺎﻨﺷ ناور