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

Get TickCount();

مغلق
بدأه white soul في 30 أبريل 2006 · 3 رد · 519 مشاهدة · في الأسئلة المجابة
مشاركة: واتساب X فيسبوك تيليجرام
#1 صاحب الموضوع

في عندي مشكلة اذا حد بقدر يجاوبني :( :(

لما عم بحسب الزمن لتنفيذ اقتران معين

;

t1=GetTickCount()
//loop (for)
t2=GetTickCount()
cout<<t2-t1;

ليه بطلع الزمن معي صفر نفسي افهم

طبعا بين الزمنان t1, t2 في افتران كبير عم يتنفذ والنتائج تدل انه الأقتران تنفذ

ليش بطلع الزمنان متساويان :wacko: :wacko: :wacko: :wacko: :wacko:

Computer Engineer

2007

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

ولدتك امك باكيا والناس حولك يضحكون سرورا

فافعل لنفسك ان تكون اذا بكوا في يوم موتك ضاحكا مسرورا

#2

غالبا بسبب سرعة المعالج جرب تقوم بحلقة أكبر أو تقوم بعدة حسابات داخل الحلقة حيديك وقت

أنا لما جيت أجرب الكود ده مثلا عدة مرات

DWORD t1, t2;
t1=GetTickCount();
for(int i = 0; i < 80000000; i++);
t2=GetTickCount();
cout<<t2-t1<<endl;

بيديني في المتوسط 600

#3

/index.ph...ndpost&p=274726

/index.ph...ndpost&p=315272

تم تعديل هذه المشاركة بواسطة ikossan في 30 أبريل 2006 في 19:12

سأتغيب عن المنتدى وستكون لي زيارات خفيفة بين الحين و الحين

يا صاحب الهم إن الهم منفرج.....................أبشر بخير فإن الفارج الله.

اليأس يقطع أحيانا بصاحبه..........................لا تيأس فإن الكافي الله.

الله يحدث بعد العسر ميسرة.........................لا تفزعن فإن الصانع الله.

إذا بليت فثق بالله وارض به...................فإن الذي يكشف البلوى هو الله.

و الله ما لك غير الله من أحد.......................فحسبك الله في كل لك الله

أخوكم مراد

27_06_06_05_21_41_1151410901logo_adl_wal_ihsan.jpg

#4

أخ usama707 اللي بتقوله صح مية المية وانا جربت قبل هيك على لووب متل اللي كتبتها وظهر معي ناتج

بس اللي مجنني انه الخوارزمية اللي عم احسب لها الوقت كبيرة كتير فالمفروض يظهر ناتج

وكمان حاولت كل الطرق بأني أضرب ب 1000 عشان اذا كان الرقم صغير متل ما افاد زميلنا ikossan

وكمان جربت باقتران الclock وما زبط

اخikossan شفت المتكتوب بانو ممكن نستخدم العداد الداخلي الموجود في المعالج نفسه RDTSC.

بس صراحة ما فهمت كيف

هي الجزء اللي عم احسب له الزمن

void Graph:: Astar(int initial,int goal){  

int ini;
ini= IndexIs(initial); // determine the index for the initial node
  for(int i=0;i<numVertices;i++){
  if(edges[ini]!=0) // search for all nodes connected with this node(children)
  s.InsertItem(edges[ini]);// insert each child in asorting list
   }

if(s.length==1) //now we reach a node with no children we must stop
cout<<" the heuristic is not true so we can't find the path to the goal\n but We can retry with skipping this path\n";

min=s.info[0]; // the minimum weight always is the first element in the sorted list
for( i=0;i<numVertices;i++){
	for(int j=0;j<numVertices;j++)
  if(edges[j]==min){ // determine the index of the child which have the smallest weight
 	 ind=i;to=j;}}
cout<<" from  ["<<vertices[ind]<<"] to ["<<vertices[to]<<"] with path=     "<<min<<" \n";

s.DeleteItem(min); // delete the minimum value from the list because we recorded it 
if(vertices[to]!=goal) 
Astar(vertices[to],goal); // the child is not the goal so we should expand it
// recursive function
;}

وطبعا t1 قبل استدعاء الإقتران وt2 بعد تنفيذه

بس الناتج صفر.................... :wacko: :blink: :wacko: :blink: :wacko: :unsure:

Computer Engineer

2007

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

ولدتك امك باكيا والناس حولك يضحكون سرورا

فافعل لنفسك ان تكون اذا بكوا في يوم موتك ضاحكا مسرورا

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

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