الفريق العربي للبرمجةأرشيف المنتديات · 2000 – 2023
نسخة أرشيفية للقراءة فقط — التسجيل والمشاركة مغلقان، والمحتوى محفوظ كما كان.

كيف احسب الزمن المستغرق لترجمه كود بالحافا

بدأه vector_ever في 11 يناير 2011 · 6 رد · 1,175 مشاهدة · في JavaSE
مشاركة: واتساب X فيسبوك تيليجرام
#1 صاحب الموضوع

السلام عليكم اخواني

هل هنالك دالة او اي طريقة تمكنني عن طريقها حساب الوقت المستغرق لتنفيذ كود مكتوب بلغة الجافا

يعني عندي كود بدي اعدل عليه كي اعرف الزمن المطلوب لكي يتم الانتهاء من ترمجته سواء كل الكود او بعض اجزاءه او بعض دواله

determine the elapsed time to finish compiling the code

فمن يعرف شيء عن الموضوع او من يستطيع المساعدة اكون له من الشاكرين

وشكرا

إذا نظــرتَ نيـوب اللـّيـثِ بـارزةً         فـلا تظــنَنَ أَنَّ اللـّيـــثَ يبْتسـِـــمُ


 


 


رسم المخططات البيانية بواسطة الجافا


 


كتاب تحليل وتصميم نظم المعلومات


#2

running or compiling؟؟

#3
herch كتب:

running or compiling؟؟

بالبداية شكرا جزيلا لك اخي على ردك السريع وتجاوبك معي

اخي ربما حدث التباس او نقص بالمعلومة التي اوردتها

ما يهمني هو الزمن المستغرق من بداية عمل run للكود حتى ظهور النتيجة

وليس بالضرورة لكل الكود

يعني اذا امكن لجزء منه او لكل دالة مثلا

إذا نظــرتَ نيـوب اللـّيـثِ بـارزةً         فـلا تظــنَنَ أَنَّ اللـّيـــثَ يبْتسـِـــمُ


 


 


رسم المخططات البيانية بواسطة الجافا


 


كتاب تحليل وتصميم نظم المعلومات


#4
int start = System.currentTimeMillis();
//some code...
int end =  System.currentTimeMillis();
int timeInMills = end - start;

timeInMills هو الوقت اللازم لتنفيذ الكود بال millisecond

1
#5

وعليكم السلام ورحمه الله وبركاته

ربما هذا ما تقصده ...

long start, end, total;
start = System.currentTimeMillis();

//ما تريد 

end = System.currentTimeMillis();
total = end - start;
2coscqr.jpg
#6

طيب بالبداية يا سادة شكرا لكم لتفاعكلم الايجابي

بس انا جربته وما ظهر لدي نتيجة

ممكن الايضاح اكتر

بمعنى مثلا لو عندي الكود التالي

public static void main(String[] args) {

		int [][] jobs = {  //processing time for every product on every machine
				{10,8,12,7,6,11},
				{12,6,11,12,8,7},
				{15,7,7,9,10,8},
				{10,4,7,3,7,9},
				{8,12,7,6,12,13},
				{7,8,7,11,13,6},
				{13,10,10,13,7,9}
			};

					int x = 7;
					int y = 6;

//****************************************
		int [] sum = new int [y];

 for (int row = 0; row < x; row++)
	{
	 for (int col = 0; col < y; col++)
		{
		 if (row == 0) // add just the item of the first row
		 {
			 if (col == 0)
			 {
				 sum[col] = jobs [row][col]; // assign sum[0] = jobs [0][0]
			 }
			 else
			 {
				 sum[col] = sum[col-1] + jobs [row][col]; //sequence adding for the rest of items in the first row
			 }

		 }
		 else
		 {
			 if (col == 0)
			 {
				 sum[col] = sum[col] + jobs [row][col];//add the item in the first column
			 }
			 else
			 {
				 sum[col] = jobs [row][col] + (Math.max(sum[col], sum[col-1]));
			 }
		 }

		}
	}

 System.out.println(sum[y-1]) ;  }

//****************************************

انا أريد ان اعرف الزمن المستغرق لتنفيذ الكود المحضور بين العلامتين //****************************************

فهل من الممكن ان اعرف اين ممكن ان ادرج الاضافة في اكود كي ارى الزمن المستغرق لتنفيذ البرنامج

وشكرا

إذا نظــرتَ نيـوب اللـّيـثِ بـارزةً         فـلا تظــنَنَ أَنَّ اللـّيـــثَ يبْتسـِـــمُ


 


 


رسم المخططات البيانية بواسطة الجافا


 


كتاب تحليل وتصميم نظم المعلومات


#7
public static void main(String[] args) {
long start, end, total;

		int [][] jobs = {  //processing time for every product on every machine
				{10,8,12,7,6,11},
				{12,6,11,12,8,7},
				{15,7,7,9,10,8},
				{10,4,7,3,7,9},
				{8,12,7,6,12,13},
				{7,8,7,11,13,6},
				{13,10,10,13,7,9}
			};

					int x = 7;
					int y = 6;

//****************************************

start = System.currentTimeMillis();

		int [] sum = new int [y];

 for (int row = 0; row < x; row++)
	{
     for (int col = 0; col < y; col++)
		{
	     if (row == 0) // add just the item of the first row
	     {
		     if (col == 0)
		     {
			     sum[col] = jobs [row][col]; // assign sum[0] = jobs [0][0]
		     }
		     else
		     {
			     sum[col] = sum[col-1] + jobs [row][col]; //sequence adding for the rest of items in the first row
		     }

	     }
	     else
	     {
		     if (col == 0)
		     {
			     sum[col] = sum[col] + jobs [row][col];//add the item in the first column
		     }
		     else
		     {
			     sum[col] = jobs [row][col] + (Math.max(sum[col], sum[col-1]));
		     }
	     }

		}
	}

 System.out.println(sum[y-1]) ;  
end = System.currentTimeMillis();
total = end - start;
System.out.println(total) ;

}

//****************************************

Software Developer
Mahmoudkelany.com


 

مواضيع مشابهة