raze11
جمعه 05 اردیبهشت 1393, 19:06 عصر
سلام
یه سوال در مورد درس طراحی الگوریتم داشتم
برنامه ای بنویسید که یک ارایه با طول 20 را از ورودی گرفته و سپس یک عنصر را از ورودی دریافت نماییدداخل ارایه دنبال عصنر گشته اولین خانه ای که محتوای ان با شماره ارایه یکسان است را در خروجی نشان دهد
این کار به 2 روش باید انجام بشه
1-جستجوی خطی که در ان هر خانه ازایتدا تا رسیدن به هدف جستجو می شود.
2-با استفاده از جستجوی ترتیبی که درا ن هر خانه از ابتدا ارایه از وسط نصف شده و عنصر میان ارایه با عنصر با عنصر مورد جستجو مقایسه شود.
روش اول به صورت برنامه نویسی غیر بازگشتی باشه
ر.وش دوم با استفاده از برنامه نویسی بازگشتی پیاده سازی بشه.
===========================================
روش اول رو یکی از دوستان توی سایت انجام داد
که به این صورت هست:
#include <iostream.h>
#include <conio.h>
void search(int a,int b,int array[20]){
if(array[b]==a){
cout<<b;
return;
}
else{
b=b+1;
search(a,b,array);
}
}
void main(){
int array[20];
int temp=0;
int search_number;
int found =0;
for(temp=0;temp<19;temp++){
cin>>array[temp];
}
cout<<"adad delkhah ra vared nemaid";
cin>>search_number;
search(search_number,0,array);
getch();
}
یه مشکل دیگه هم که دارم همین برنامه ای که دوستم توی سایت نوشته توی سایت جواب میداد اما توی وییندوز خودم 8 64 بینی با استفاده از این کامپایلر اجرا میکنم(Dev-Cpp 5.5.1 MinGW 4.7.2)این ارور رو میده"
http://upload7.ir/imgs/2014-04/08915197513205370208.jpg
یه سوال در مورد درس طراحی الگوریتم داشتم
برنامه ای بنویسید که یک ارایه با طول 20 را از ورودی گرفته و سپس یک عنصر را از ورودی دریافت نماییدداخل ارایه دنبال عصنر گشته اولین خانه ای که محتوای ان با شماره ارایه یکسان است را در خروجی نشان دهد
این کار به 2 روش باید انجام بشه
1-جستجوی خطی که در ان هر خانه ازایتدا تا رسیدن به هدف جستجو می شود.
2-با استفاده از جستجوی ترتیبی که درا ن هر خانه از ابتدا ارایه از وسط نصف شده و عنصر میان ارایه با عنصر با عنصر مورد جستجو مقایسه شود.
روش اول به صورت برنامه نویسی غیر بازگشتی باشه
ر.وش دوم با استفاده از برنامه نویسی بازگشتی پیاده سازی بشه.
===========================================
روش اول رو یکی از دوستان توی سایت انجام داد
که به این صورت هست:
#include <iostream.h>
#include <conio.h>
void search(int a,int b,int array[20]){
if(array[b]==a){
cout<<b;
return;
}
else{
b=b+1;
search(a,b,array);
}
}
void main(){
int array[20];
int temp=0;
int search_number;
int found =0;
for(temp=0;temp<19;temp++){
cin>>array[temp];
}
cout<<"adad delkhah ra vared nemaid";
cin>>search_number;
search(search_number,0,array);
getch();
}
یه مشکل دیگه هم که دارم همین برنامه ای که دوستم توی سایت نوشته توی سایت جواب میداد اما توی وییندوز خودم 8 64 بینی با استفاده از این کامپایلر اجرا میکنم(Dev-Cpp 5.5.1 MinGW 4.7.2)این ارور رو میده"
http://upload7.ir/imgs/2014-04/08915197513205370208.jpg