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

استفسار عن حساب زمن البرنامج والترتيب

مغلق
بدأه sman93 في 2 يناير 2004 · 8 رد · 947 مشاهدة · في الأسئلة المجابة
مشاركة: واتساب X فيسبوك تيليجرام
#1 صاحب الموضوع

السلام عليكم ,,, اتمنى ان يكون الجميع بصحه وعافيه

اذا امكن احد الشباب يرد على هذه الاستفسارات

1-كيف استطيع حساب الوقت الذي يستقرقه البرنامج

من اول التشغيل الى ظهور النتائج

2- كيف استطيع ارتب متغير يحتوي مجموعه اعداد ترتيب تنازلى والعكس

#2

بالنسبه للسؤال الاول

من داله Time

واما الثاني

فهو عن طريق المود % نقسم العدد ونرتب

ومعليش على الرد المختصر(لاني مستعجل)

#3

السلام عليكم ,,,

اقتباس
1-كيف استطيع حساب الوقت الذي يستقرقه البرنامج

من اول التشغيل الى ظهور النتائج

هل تريد حساب سرعة البرنامج ,, ؟

اذا كان هذا ماتريد سأفصل لك ,,

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

فصل أكثر لأفصل لك ,,

اقتباس
2- كيف استطيع ارتب متغير يحتوي مجموعه اعداد ترتيب تنازلى والعكس

سأجيبك مع السؤال الاول المرة القادمة ,, حيث توجد الكثير من الطرق لفعل ذلك ,,

وفقك الله ,,

banner_60_468.gif

NOTHING IS IMPOSSIBLE

#4

يعطيكم العافيه ونفعنا الله بعلمكم

اثلجتو صدري بتقبلكم هذه الاستفسارات

اما الاستفسار الاول

انا اقوم بعمل برنامج لمادة نظم التصنيع

واقوم بأختبار طرق للحل عن طريق استخدام

نظام بحث متقدم وهو نظام tabu search

ويستمر البرنامج في العمل لمده كبيره تصل

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

في البرنامج للحصول على اقل قت ممكن

لتنفيذ البرنامج وتكون المقارنه بين كل برنامج واخر

بلوقت الذي يستقرقه هذه البرنامج ولهذا احتاج لهذا

الكود لكي تتم المقارنه لانني اتعامل معى مضروب الاعداد

فتخيل مضروب 500 كم وانا احتاج لهذا المضروب وهو يمثل

عدد الحلول الممكنه واختيار افضل حل بطريقه تكون مختصره

اي انني لا احصل على الحل الامثل بل حل جيد

#5

السلام عليكم ,,

فهمت منك أنك تريد أن تعرف السرعة المثلى لبرنامجك ,, مثلا لديك حلقات تكرار ضخمة ,, تريد أن تعرف أيها أسرع ,, اذا نفذت بهذا الشكل أم بطريقة أخرى ,, اليك الفكرة :

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

clock_t begin,finish;
begin = clock();

الكود الذي تريد حساب سرعته اكتبه هنا ,,,

finish = clock();

الآن القيمة begin بها الوقت بالهرتز حين بدأ المعالج تنفيذ التعليمات للكود الذي بين البلوكين ,,

والقيمة finish بها الوقت في النهاية ,,

بالطبع لمعرفة الزمن المستغرق ,, اطرح النهاية من البداية ,, لكن بالطبع هذه لن تفيد ,, لأنها ستعطيك عدد دورات Processor ,, لكن لمعرفة الزمن المستغرق ,, اقسم القيمة الناتجة من الطرح على القيمة الثابتة المعرفة مسبقا ,, CLOCKS_PER_SEC ,,,

يعني سيكون الكود في النهاية ,,

اقتباس
cout <<(double)(finish-begin/CLOCKS_PER_SEC) << endl;

أرجو أن تكون قد فهمتني ,, واذا توقف لك شيء ,, فأنا في الخدمة ,,

تم تعديل هذه المشاركة بواسطة HGB في 3 يناير 2004 في 04:42

banner_60_468.gif

NOTHING IS IMPOSSIBLE

#6

جزاك الله خير الجزاء

سوف اقوم بالتجربه

بس ياليت تردلي على الاستفسار الثاني

- كيف استطيع ارتب متغير يحتوي مجموعه اعداد ترتيب تنازلى والعكس

سأجيبك مع السؤال الاول المرة القادمة ,, حيث توجد الكثير من الطرق لفعل ذلك
#7

اخوي بالنسبه للرقم الي يطلع

وشو الزمن بايش بالجزء من الثايه او ؟؟؟؟؟؟؟

#8

السلام عليكم ,,

اقسم الرقم على 1000 ,, وستحصل على الرقم بالثواني ,,

بالتوفيق ,,

banner_60_468.gif

NOTHING IS IMPOSSIBLE

#9

اخي العزيز مشرف القسم اعرف اني اثقلت عليك

لكن ماباليد حيله

ياليت تشوف لي موضوع ترتيب المتغير ترتيب تنازلي فقط

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

ينفعنا بعلمك وبارك الله فيك

#include<stdio.h>
#include<math.h>
#include<conio.h>
#include <time.h>
#include <stdlib.h>
#define mx 50       // max number of machine and parts


    //****//difenations of my program//****//
/////////////////////////////////////////////////////////////////////////////
int parts,machine,row,colm,A[mx][mx],i,j,l,ite=0,mach[mx],newmach[mx],k=0; //
int save[mx],v[mx][mx]={0},r=0,z=0,zz=0,sa=0,vb=0,dd=0,ddd=0,improv=0,ii,jj;              //
int vv[mx][mx],no=0,yes=0,save_i,save_j;                                                 //
double  d[mx][mx]={0},kkk[mx],S=0,lastz=0,lastZ=0,tabu[15][15];                                 //
double  n[mx]={0},c[mx][mx]={0},So=0,Ss=0,S2=0,Zend1=0,Zend2=0,Zend3=0,loc=0;      //
double sw=0,No;              //
/////////////////////////////////////////////////////////////////////////////


    //****//functions//****//
////////////////////////////////////////////////////////////////
void rand_matrix(void); //this line for use function          //
void initial_solution(void); //this line for use function     //
void searching(void); //this line for use function            //
void tabosearch(void); //this line for use function           //
int main(void)                                                //
////////////////////////////////////////////////////////////////

{

/////////////////
rand_matrix(); //
/////////////////

///////////////////////
initial_solution();  //
///////////////////////

///////////////
searching(); //

////////////////
tabosearch(); //
////////////////

return 0;
}


//////////////////////////////////////////
void rand_matrix(void)  {               //
   	 //
 	 //
                          //
printf("\n Enter no, of Machine :");    //
scanf("%d",&machine);                   //
printf("\n Enter no, of Parts :");      //
scanf("%d",&parts);                     //
for(row=0;row<machine;row++)            //
{// printf("\n");                       //
for(colm=0;colm<parts;colm++)           //
{                                       //
A[row][colm]= rand() % 2;               //
//printf("\t%d",A[row][colm]);          //
} }                                     //
   	 //
}                                       //
//////////////////////////////////////////


//*/*/*/*/*/*/*/*/*/*/*/*/*/**/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/**/*/*/*//*/
void initial_solution(void)  {                                        //*
              //*
for(i=0;i<machine-1;i++)  {                                           //*
for(j=i+1;j<machine;j++)  {                                           //*
n[j]=0;  n=0;                                                      //*
for(l=0;l<parts;l++)  {                                               //*
//for count the similar                                               //*
////////////////////////////////////////////////                      //*
c[j]=c[j]+(A[l]*A[j][l]);            //                      //*
n=n+A[l];                                                    //*
n[j]=n[j]+A[j][l];                                                    //*
}                                                                     //*
//printf("\nCi=%1.0f,Ni=%1.0f,Nj=%1.0f",c[j],n,n[j]);           //*
d[j]=1-((c[j])/(n+n[j]-c[j]));                            //*
d[j]=d[j];                                                      //*
printf("\nDis[%d][%d]=%f",i,j,d[j]);                               //*
//printf("\n**********************************");                     //*
}  }                                                                  //*
}                                                                     //*
//*/*/*/*/*/*/*/*/*/*/*/*/*/**/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/**/*/*/*//*/

void searching(void)  {

 	 }
           //
/////////////////////////////////////////////////


//*/*/*/*/*/*/*/*/*/*/*/*/*/**/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/**/*/*/*//*/
//*/*/*/*/*/*/*/*/*/*/*/*/*/**/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/**/*/*/*//*/
void tabosearch(void)  {                                              //*
              //*
}                                                                     //*
//*/*/*/*/*/*/*/*/*/*/*/*/*/**/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/**/*/*/*//*/
//*/*/*/*/*/*/*/*/*/*/*/*/*/**/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/**/*/*/*//*/

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

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

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

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

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

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