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

ترحيب بلغة المبرمجين

مغلق
بدأه سنفورة حاسوبية في 15 ديسمبر 2007 · 9 رد · 721 مشاهدة · في JavaSE
مشاركة: واتساب X فيسبوك تيليجرام
#1 صاحب الموضوع

السلام عليكم

انا مشتركة جديدة

طالبة حاسب مبتدئة

ارجو ان يكون تعبيركم عن الترحيب بي عن طريق الاجابة عن سؤالي

السؤال هو....

ماهي طريقة حساب

excution Time

لأي كود بالجافا او غيرها من لغات البرمجة؟؟

وجزيتم الف خير

#2

بيكون بكرق حسابيه ملهاش علاقه بالجافا

دوري تحت هذا العنوان :

performance evaluation for computer systems

#3

في حاجة بيسموها complexity بتقاس بال big O

على ما أظن

لكن لحساب الوقت الفعلي للتنفيذ طبعاً متأثراً بعوامل كثيرة ممكن في الجافا من خلال الفئة System

الله معك

حزمة المحرك الإصدارة 0.8

أي أحد يجد أني ظلمته فليراسلني

وبإذن الله لو كان له حق سيأخذه

728x90.png

#4

اعتقد اختى من فهمى لسؤالك انت عاوزة تحسبى مثلا مدة عمل البرنامج بتاعك

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

long x=System.currentTimeMillis();

وفى نهاية الكود بتاعك

long y=System.currentTimeMillis();

ثم لحساب الوقت اطرحى القيمتين السابقتين

long z=y-x;

حيث ان System.currentTimeMillis

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

اتمنى اكون افدتك

سلاااااااااااااااااااااااااااااااااااااااااااااام

#5

شكرا لك اخي

engineero

بالزبط هاد اللي بدي اياه

ولكن هناك مشكلة واجهتني

كتبت اللي قلتلي عليه

وبعد هيك كتبت

System.out.println(z);

لطباعة الوقت

بيطلعلي صفر

فماهي المشكلة؟؟؟

#6

أخي عفوا

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

c++

شااااااااااااااااااكرة لك

#7

العفو و انا سعيد انى افدتك

انا معرفش اكتب الكود C++ او اسمبلى انا اسف

اما بخصوص ان z=0 ممكن انتى نفذتيها غلط على العموم ده كود بيحسب مضروب عدد معين وبيحسب الوقت اللى اخده البرنامج شوفى بحسب الوقت ازاى وانا موجود متألقيش

import javax.swing.JOptionPane;

public class Factorial {
	public static void main(String args[]) {
		long x = System.currentTimeMillis();

		String snum1;
		int num1, fac_of_num1;
		snum1 = JOptionPane.showInputDialog("Enter Number:");
		num1 = Integer.parseInt(snum1);
		fac_of_num1 = fact(num1);
		long y = System.currentTimeMillis();

		long z = y - x;
		JOptionPane.showMessageDialog(null, num1 + "! = " + fac_of_num1
				+ "\n at time = " + z + " milli second");
	} // end of main

	static int fact(int n) {
		if (n == 0 || n == 1)
			return 1;
		else
			return n * fact(n - 1);
	} // end of fact method
} // end of class factorial
#8

أخي اطلعت على الكود اللي بعتلي اياه وقارنته بكودي

برضو مافي فايدة

اول مرة بعمل فيها

compile

بيطلعلي قيمة بس بعد هيك برجع يطلعلي صفر

ازا مافي كلافة عليك ممكن تشوفلي كودي هو عن

selecte sort

واريد حساب

excutionTime

للبرنامج

public class selectionsort
{   
 public static void main (String[ ]  args)
 {  
	long x=System.currentTimeMillis();

  int [ ] array={14,115,20,7,60,82,44,30,12,66,15,40,80,46,90,120,33,70,50};

  int min;
  int temp;
  for(int index=0;index<array.length-1;index++)
  {
	 min=index;
	 for(int scan=index+1;scan<array.length;scan++)
		if(array[scan]<(array[min]))
		min=scan;

	 //swap the value
   temp=array[min];
   array[min]=array[index];
   array[index]=temp;

  }//end  for

	for (int dis:array)
   System.out.println(dis);
 long y=System.currentTimeMillis();
 long z=y-x;
 System.out.println("The Time in milliSecond is"+z);

  }//end main  method

}//end class

تم تعديل هذه المشاركة بواسطة عيسى عايد العنزي في 16 ديسمبر 2007 في 21:53 — السبب: اضافة الكود تاق

#9

مفيش مشكلة اختى البرنامج بتاعك صح والنتائج بتعته ممتازة حتى الصفر لان البرنامج سريع جدا لذلك لا ياخذ وقت فلو طبعتى قيمة x و y حتلقيهم متساوين لذلك z=0

ولو عاوزة تعطلى البرنامج شوية علشان تظهرى الوقت

خلى ال user هو اللى يدخل ال array بأيده فياخد وقت شوية علشان كده انا زودت فى البرنامج بتاعك الحتة دى

String snum1 = JOptionPane.showInputDialog("Enter Array Length");
		int length = Integer.parseInt(snum1);

		int[]array =new int[length];

		String number;

		for(int i=0;i<array.length;i++){
			number=JOptionPane.showInputDialog("Enter Array["+i+"]");
			array=Integer.parseInt(number);
		}

بدل الحتة دى علشان ياخد شوية وقت

int[] array = { 14, 115, 20, 7, 60, 82, 44, 30, 12, 66, 15, 40, 80, 46,
				90, 120, 33, 70, 50 };

وهذا هو البرنامج بالكامل

//sanfora 7asobya
import javax.swing.JOptionPane;

public class selectionsort {
	public static void main(String[] args) {
		long x = System.currentTimeMillis();

//		int[] array = { 14, 115, 20, 7, 60, 82, 44, 30, 12, 66, 15, 40, 80, 46,
//				90, 120, 33, 70, 50 };

		String snum1 = JOptionPane.showInputDialog("Enter Array Length");
		int length = Integer.parseInt(snum1);

		int[]array =new int[length];

		String number;

		for(int i=0;i<array.length;i++){
			number=JOptionPane.showInputDialog("Enter Array["+i+"]");
			array=Integer.parseInt(number);
		}

		int min;
		int temp;
		for (int index = 0; index < array.length - 1; index++) {
			min = index;
			for (int scan = index + 1; scan < array.length; scan++)
				if (array[scan] < (array[min]))
					min = scan;

			// swap the value
			temp = array[min];
			array[min] = array[index];
			array[index] = temp;

		}// end for

		for (int dis : array){
			System.out.println(dis);
		}

		long y = System.currentTimeMillis();
		long z = y - x;

		System.out.println("The Time in milliSecond is : " + z);

	}// end main method

}// end class

اتمنى انى اكون ساعدتك واسف على تاخير الرد علشان كنت فى الكلية

سلاااااااااااااااااااااااااااااااااااااااااااااااام

#10

المشكلة اخي انا متقصدة ان اليوزر مايدخل حاجة

لانه هيك طلب منا

فانا مستغربة لان اول مرة احيانا لو لاحظت بيطلع قيمة 16

وبعد هيك بيطلع صفر

والمطلوب منا فقط عرض

جزيت الف خير اخي الكريم

واسفة جدا لاني اشغلتك

بالتوفيييييييييييق

هذا الموضوع مغلق.

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

عدد الزوار حالياً

المتواجدون خلال آخر دقيقتين · يتحدّث كل ٣٠ ثانية

—الإجمالي—أعضاء مسجّلون—زوار بدون تسجيل

جارٍ التحقق من المتواجدين…