کمک در استفاده از devcpp

dim_dam

Member
سلام دوستان من نرم افزار devcpp رو نصب کردم تا فاایل های cpp که گرفتم توش اجرا کنم اما هیچ فایلی اجرا نمیشه به همه source ها گیر میده
من برنامه هایی که دوستان گذاشتن رو کپی می کنم بعد new رو می زنم تا یه صفحه جدید باز بشه بعد برنامه رو توش paste می کنم برای اجرا هم f9 می زنم اما اجرا نمی شه اول فکر می کردم که برنامه هایی که دوستان نوشتن مشکل داره اما دیدم هیچ کدوم از برنامه ها رو اجرا نمی کنه لطفا یکی منو دقیقا راهنمایی کنه تا به راه راست هدایت بشم با تشکر فراوااااااان :)
 
آخرین ویرایش:

saalek110

Well-Known Member
سلام.
خطا را بنویس.
اگر آدرس دانلود داری بده تا من هم تست کنم.
آیا مسیر اینکلود ها را تنظیم کرده ای؟
کل کد برنامه ات را هم بگو.
 

dim_dam

Member
سلام مدیر جان:) آقا تو هی مارو شرمنده کن . دمت گرم آره همینه devcpp-4.9.9.2_setup کلافم کرده :sad:هر برنامه ای توش می نویسم اجرا نمی کنه .این لینکی که زحمت کشیدی گذاشتی رو نگاه می کنم اگه مشکل حل نشد از صفحه ای که گیر داده عکس می گیرم برات می گذارم ببین کجای کارش گیر داره . آقا بازم تشکر می کنم خیلی افتادی تو زحمت ایشالا یجوری بتونیم جبران کنیم (لوله آب فاضل آّبتون گرفت خبر کن ) آخه ناسلامتی مهندس آبیم:roll:
 

dim_dam

Member
مدیرجان این تنضیمات رو انجام دادم ولی باز مشکل حل نشد . :sad: از صحنه جرم عکس گرفتم ببین می شه فهمید مشکل از کجاست اگه لطف کنی یه برنامه خیلی ساده که خودت نوشتی و مطمعنی که اجرا می شه بگذاری تا تست کنم عالی می شه ممنون :oops:
 
آخرین ویرایش:

saalek110

Well-Known Member
قربانت.
برای نصبش که چیزی نداشت. next کن بره.
برای پروژه سازی:
اول یک پوشه جایی بساز.
بعد از منوی فایل گزینه New را بزن. بعد Project را بزن.
بعد یک پنجره میاد. کنسول اپلیکیشن را انتخاب کن.
بعد میری برای ذخیره فایل پروژه. در همان پوشه ای که ساختی ذخیره اش کن.

بعد کد پایه را خودش میده بهت:
کد:
#include <cstdlib>
#include <iostream>

using namespace std;

int main(int argc, char *argv[])
{
    system("PAUSE");
    return EXIT_SUCCESS;
}
قبل از :
کد:
    system("PAUSE");
کدهای خودت را باید بنویسی.
ولی قبل کد اضافه کردن دکمه کامپایل و ران را بزن.

7wrs941.gif


که بلافاصله محل ذخیره فایل cpp را می خواد. در همان پوشه ذخیره کن.
بعد برنامه ات اجرا می شود. که با زدن یک دکمه پنجره می رود.
بعد در همان پوشه فایل اگزه را داری که ماحصل کار توست.

حالا می توانی کدهای خود را اضافه کنی.
کد:
#include <cstdlib>
#include <iostream>

using namespace std;

int main(int argc, char *argv[])
{
   [COLOR="Red"] cout<<"Welcome To C++"<<endl;[/COLOR]
    system("PAUSE");
    return EXIT_SUCCESS;
}

6ug17dd.gif

می تونی مثال خودش را هم اجرا کنی:
C:\Dev-Cpp\Examples\Hello
 

saalek110

Well-Known Member
عکس را دیدم.
برای اینکه برنامه جناب دانیال را وارد کنی ...
ابتدا باز یک پروژه کنسولی بساز.
که باز کد پایه زیر را داریم:
کد:
#include <cstdlib>
#include <iostream>

using namespace std;

int main(int argc, char *argv[])
{
    system("PAUSE");
    return EXIT_SUCCESS;
}

حالا مناطقی را من نام می برم که باید رعایت بشه.
اول منطقه include ها که در بالاترین قسمت است.
دوم منطقه ای بین اینکلودها و تابع main . تابع main منظور این قسمت است:
کد:
int main(int argc, char *argv[])
{
    system("PAUSE");
    return EXIT_SUCCESS;
}
یعنی همان خطی که کلمه main قرار دارد و تمام چیزی که بین دو کروشه بعدش قرار دارد.
سومین منطقه: بعد تابع main

حالا نگاه کن به برنامه دانیال عزیز.
خط اولش کد نیست. یا باید حذف بشه یا قبلش دو تا ممیز بگذاری تا به حالت comment در آید . این طوری:
کد:
//Code : Collected by Danyal Khashabi :: [email protected] :: www.mrh.ir
بعدش باید ببینی چند تا اینکلود دارد و اگر برنامه تو این اینکلودها را ندارد اضافه کنی.
من این اینکلود را از برنامه ایشان اضافه کردم:
کد:
#include <conio.h>

حالا می رسیم به منطقه میان اینکلودها و main در برنامه ایشان.
داریم:
کد:
int calc(int [],int dim);
void revmatrix( int [],int dim);
این دو خط معرفی دو تابع است که خود دو تابع بعد main آمده. البته فکر کنم بشه قبل main هم بیاد ولی رایج این طوری استفاده میشه و به نظر من هم این طوری بهتره چون main گم نمیشه. چون بعضی توابع صدها خط هستند.
این دو خط را هم در کامپایلر قبل main اضافه می کنیم.
دو تابع را هم بعد main اضافه می کنیم یعنی این قسمت را:
کد:
/////////////////calc function//////////

int calc( int matrix[ ], int dim )
	 {
	 int sum = 0, bul, x = 1;
	 for( int l = 0; l<( dim*dim );l += ( dim+1 ) )//ghotr asli
	 x *= matrix[l];
	 sum = x;
	 x = 1;
	 for( int c = 1;c<dim;c ++ )
		  {
		  bul=c;
		  for( int m = 0;m<dim;m ++ )
				{
				if( ( bul+1 )%dim != 0 )
						  {
							x *= matrix[bul];
							bul +=( dim + 1 );
						  }

				else
					 {
							x = x * matrix[bul];
							bul += 1;
				 }

		  }//for m
		  sum += x;
		  x = 1;
	 }//for c

	 return sum;
}

////////////////////revmatriv determinan

void revmatrix(int matrix[ ],int dim)
	 {
	 int end,temp,counter;
		for( int t = dim-1;t <= dim*dim;t = t + dim )


		  {
		  end=t;
		  counter = end -( dim-1 );
		  while( end > counter )
				{
				temp = matrix[end];
				matrix[end] = matrix[counter];
				matrix[counter] = temp;
				++ counter;
				-- end;
				}

		  }
	 }
حالا می رسیم به داخل تابع main :
در برنامه ها قسمت اول معمولا محل تعریف متغیر هاست. البته قبل main هم میشه تعریف کرد فکر کنم که میشه متغیر گلوبال. که در همه توابع قابل دسترسی است.
اینها را هم بعلاوه بقیه کدهایش اضافه می کنیم. یعنی این قسمت را:
کد:
		int matrix[1000];
		int dim,temp;
		double leftsum,rightsum;
	 cout<<"		PLEASE ENTER MATRIX DIMENSION : ";
	 cin>>dim;
	 cout<<"\n\n\n";
	 for( int i = 0;i<( dim*dim );i ++ )
		  {
		  cout<<"ENTER ELEMAN : ";
		  cin>>temp;
		  matrix[i] = temp;
		  clrscr();
		  cout<<"		PLEASE ENTER MATRIX DIMANTION : "<<dim;
		  cout<<"\n\n\n";
	 }//for i

	 if ( dim > 2 )
		  {
			leftsum = calc( matrix , dim );
			cout<<"LEFTSUM of the matrix = "<< leftsum <<"\n\n";
			revmatrix( matrix , dim );
			rightsum = calc( matrix ,dim );
			cout<<"RIGHTSUM of the matrix = "<< rightsum <<"\n\n\n\n\n\n" ;
			cout<<"	 ( DETERMINAN OF THE MATRIX = "<< leftsum - rightsum<<" )";
		  }

	 else
		 cout<<"	 ( DETERMINAN OF THE MATRIX = "<<(matrix[0] * matrix[3] - matrix[1] * matrix[2])<<" )";
ولی یک خط را من ندیده گرفتم.
یعنی این خط را:
کد:
 getch();
چون این خط:
کد:
system("PAUSE");
کار اون را انجام می دهد.

کل کد میشه این حالا:
کد:
#include <cstdlib>
#include <iostream>
#include <conio.h>

using namespace std;
int calc(int [],int dim);
void revmatrix( int [],int dim);
int main(int argc, char *argv[])
{
    		int matrix[1000];
		int dim,temp;
		double leftsum,rightsum;
	 cout<<"		PLEASE ENTER MATRIX DIMENSION : ";
	 cin>>dim;
	 cout<<"\n\n\n";
	 for( int i = 0;i<( dim*dim );i ++ )
		  {
		  cout<<"ENTER ELEMAN : ";
		  cin>>temp;
		  matrix[i] = temp;
		  clrscr();
		  cout<<"		PLEASE ENTER MATRIX DIMANTION : "<<dim;
		  cout<<"\n\n\n";
	 }//for i

	 if ( dim > 2 )
		  {
			leftsum = calc( matrix , dim );
			cout<<"LEFTSUM of the matrix = "<< leftsum <<"\n\n";
			revmatrix( matrix , dim );
			rightsum = calc( matrix ,dim );
			cout<<"RIGHTSUM of the matrix = "<< rightsum <<"\n\n\n\n\n\n" ;
			cout<<"	 ( DETERMINAN OF THE MATRIX = "<< leftsum - rightsum<<" )";
		  }

	 else
		 cout<<"	 ( DETERMINAN OF THE MATRIX = "<<(matrix[0] * matrix[3] - matrix[1] * matrix[2])<<" )";
    system("PAUSE");
    return EXIT_SUCCESS;
}
/////////////////calc function//////////

int calc( int matrix[ ], int dim )
	 {
	 int sum = 0, bul, x = 1;
	 for( int l = 0; l<( dim*dim );l += ( dim+1 ) )//ghotr asli
	 x *= matrix[l];
	 sum = x;
	 x = 1;
	 for( int c = 1;c<dim;c ++ )
		  {
		  bul=c;
		  for( int m = 0;m<dim;m ++ )
				{
				if( ( bul+1 )%dim != 0 )
						  {
							x *= matrix[bul];
							bul +=( dim + 1 );
						  }

				else
					 {
							x = x * matrix[bul];
							bul += 1;
				 }

		  }//for m
		  sum += x;
		  x = 1;
	 }//for c

	 return sum;
}

////////////////////revmatriv determinan

void revmatrix(int matrix[ ],int dim)
	 {
	 int end,temp,counter;
		for( int t = dim-1;t <= dim*dim;t = t + dim )


		  {
		  end=t;
		  counter = end -( dim-1 );
		  while( end > counter )
				{
				temp = matrix[end];
				matrix[end] = matrix[counter];
				matrix[counter] = temp;
				++ counter;
				-- end;
				}

		  }
	 }

دکمه ((کامپایل و run )) را می زنیم:
خطا میده و میگه تابع clrscr تعریف نشده.

تابع clrscr کارش پاک کردن صفحه است و از توربو سی است نه dev c و از هدر conio.h فکر کنم برمی خیزد.
پس می رویم در گوگل می نویسیم:
dev c clear screen
که میاد:
کد:
system("cls");//clears the screen
جایگزین تابع قبلی می کنیم و باز ران می کنیم. که برنامه اجرا می شود.
حالا که clrscr حذف شد من #include <conio.h> را هم حذف می کنم چون فکر کنم برای clrscr اینکلود شده بوده. باز اجرا می کنم می بینم گیر نمیده. پس احتمالا حدس من درسته.

حالا برای اینکه کارت را راحت کنم یک پروژه کنسولی بساز و سلکت آل کن و کد زیر را جایگزین کن:
کد:
#include <cstdlib>
#include <iostream>


using namespace std;
int calc(int [],int dim);
void revmatrix( int [],int dim);
int main(int argc, char *argv[])
{
    		int matrix[1000];
		int dim,temp;
		double leftsum,rightsum;
	 cout<<"		PLEASE ENTER MATRIX DIMENSION : ";
	 cin>>dim;
	 cout<<"\n\n\n";
	 for( int i = 0;i<( dim*dim );i ++ )
		  {
		  cout<<"ENTER ELEMAN : ";
		  cin>>temp;
		  matrix[i] = temp;
		system("cls");//clears the screen
		  cout<<"		PLEASE ENTER MATRIX DIMANTION : "<<dim;
		  cout<<"\n\n\n";
	 }//for i

	 if ( dim > 2 )
		  {
			leftsum = calc( matrix , dim );
			cout<<"LEFTSUM of the matrix = "<< leftsum <<"\n\n";
			revmatrix( matrix , dim );
			rightsum = calc( matrix ,dim );
			cout<<"RIGHTSUM of the matrix = "<< rightsum <<"\n\n\n\n\n\n" ;
			cout<<"	 ( DETERMINAN OF THE MATRIX = "<< leftsum - rightsum<<" )";
		  }

	 else
		 cout<<"	 ( DETERMINAN OF THE MATRIX = "<<(matrix[0] * matrix[3] - matrix[1] * matrix[2])<<" )";
    system("PAUSE");
    return EXIT_SUCCESS;
}
/////////////////calc function//////////

int calc( int matrix[ ], int dim )
	 {
	 int sum = 0, bul, x = 1;
	 for( int l = 0; l<( dim*dim );l += ( dim+1 ) )//ghotr asli
	 x *= matrix[l];
	 sum = x;
	 x = 1;
	 for( int c = 1;c<dim;c ++ )
		  {
		  bul=c;
		  for( int m = 0;m<dim;m ++ )
				{
				if( ( bul+1 )%dim != 0 )
						  {
							x *= matrix[bul];
							bul +=( dim + 1 );
						  }

				else
					 {
							x = x * matrix[bul];
							bul += 1;
				 }

		  }//for m
		  sum += x;
		  x = 1;
	 }//for c

	 return sum;
}

////////////////////revmatriv determinan

void revmatrix(int matrix[ ],int dim)
	 {
	 int end,temp,counter;
		for( int t = dim-1;t <= dim*dim;t = t + dim )


		  {
		  end=t;
		  counter = end -( dim-1 );
		  while( end > counter )
				{
				temp = matrix[end];
				matrix[end] = matrix[counter];
				matrix[counter] = temp;
				++ counter;
				-- end;
				}

		  }
	 }
 

dim_dam

Member
دستت درد نکنه از این بهتر و راحت تر نمی شد توضیح داد واقعا ممنون که اینقدر صادقانه وقت می گذاری . من برم کارهایی که گفتی انجام بدم ...
با تشکر فراوااااااان
 

dim_dam

Member
مدیر جون، این برنامه رو اجرا کردم . دستت درد نکنه، ولی این برنامه دترمینال ماتریس رو میده . من یه برنامه می خواستم که یه ماتریس رو حل کنه ( چند معادله چند مجهول ) . شما یه همچین چیزی سراغ نداری .ببخشیدا خیلی شرمندتون شدیم . واجب شد یه زبان رو حتمآ یاد بگیرم.
 

جدیدترین ارسال ها

بالا