PDA

View Full Version : مشکل:برنامه تعیین سرعت تایپ



behrouzonline
شنبه 06 تیر 1383, 00:59 صبح
سلام دوستان و عزیزان
یک سوال ناشیانه دارم از خدمتتون اگه لطف کنید به من جواب بدید. ممنون میشم فراوون.
من البته تا یه جاهاییش رفتم ولی اینی که باید در بیاد در نیومد :? . برنامه از این قراره:
ٍکاربر با زدن کلید Enter کلمه ای ظاهر میشه و به کاربر اجازه میده که اون کلمه رو تایپ کنه و بعد از چند ثانیه یا دقیقه به پایین میره و دوباره کلمه رو نشان میده و و باز همون قضیه ولی این دفعه اون انتظار کمتر میشه و زودتر به خط بعدی میره تا جایی که به پایین ترین حد برسه مثلا 1 ثانیه ( و در وسط برنامه هم اگه چیزی تایپ نکرد پیغام مناسب بده. )
بعد این که اون کلماتی که ظاهر میشه از داخل یک آرایه باشه.
بعد مشکلش حالا اینجاست که باید از طریق این فرمول ارزش سرعت تایپ شخص رو بدست بیاره یعنی تو ان زمانهای مکث این شخص چقدر زودتر زده هو این جور چیزا...

( سیگما از i=1 تا strlen/ speed ) m ضربدر i ) تقسیم بر 1+2+.....m

strlen = طول کلمه در مرحله i ام
speed = زمان تایپ کلمه i ام
m= تعداد مراحلی که کاربر موفق به گذراندن شده
i = مرحله

واقعا شرمندم که مزاحمتون میشم ایشالله که بتونم جبران کنم فقط همین محاصبه سرعت و زمانی که باید خودش بره رو برنامهشو بدید واقعا ممنونتون میشم. مرسی فراوان
مرسی :oops:

Viper_MFC
شنبه 06 تیر 1383, 13:58 عصر
دوست عزیز اگر از Visual C استفاده می کنید تابع GetTickCount زمان سپری شده از شروع کار سیستم رو
برمیگردونه که با ثبت زمان شروع و خاتمه و بدست اوردن اختلاف اونها می شه زمان رو بر حسب میلی ثانیه بدست
اورد . این هم مثال


#define WIN32_LEAN_AND_MEAN
#include <Windows.h>


//// Main Function
DWORD StartTime=GetTickCount();
// Do Some thing
DWORD EndTime=GetTickCount();

DWORD ElpTime = EndTime - StartTime;

behrouzonline
شنبه 06 تیر 1383, 14:56 عصر
اول اینکه مرسی از شما بخاطر لطفتون. .. بعد اینکه من از ++C استفاده میکنم ...
و اینکه اگه شما لطف کنید یه نمونه از این برنامه رو بزارید ممنون میشم.
مرسی

Viper_MFC
شنبه 06 تیر 1383, 17:28 عصر
تابعهای time ,difftime همون کارها رو می کنن.

#include <Time.h>


time_t StartTime,EndTime;

time(&StartTime);
//Do Some thing
time(&EndTime);

double ElpTime=difftime(EndTime,StartTime);