السلام عليكم يا احباب
واشكرك كل من ساهم في
رفع مستوى هذا الموقع الرائع :)
ندخل للموضوع :lol:
سعمت انو في برنامج في السي بلس بلس
تقدر تشوف الثواني تتحرك في الشاشة
حبيت استفسر عن الطريقة وشكراااااا
السلام عليكم يا احباب
واشكرك كل من ساهم في
رفع مستوى هذا الموقع الرائع :)
ندخل للموضوع :lol:
سعمت انو في برنامج في السي بلس بلس
تقدر تشوف الثواني تتحرك في الشاشة
حبيت استفسر عن الطريقة وشكراااااا
alaaaldeen كتب:السلام عليكم يا احباب
واشكرك كل من ساهم في
رفع مستوى هذا الموقع الرائع :)
ندخل للموضوع :lol:
سعمت انو في برنامج في السي بلس بلس
تقدر تشوف الثواني تتحرك في الشاشة
حبيت استفسر عن الطريقة وشكراااااا
وعليكم السلام و رحمة الله وبركاته
عندي طريقتين ممكن تشوف التواني وهي يتحرك في الشاشة ولكن بالسي إذا أمكنك تترجم ل السي ++ كان أفضل![]()
الطريقة الأولى
#include <stdio.h>
#include <time.h>
#define MAX 60
void chrono(float tick);
int main(void)
{
int i=-1;
while(i++<MAX)
{
if(i==MAX) i=0;
printf("%2d...\n", i);
chrono(1);
}
return 0;
}
void chrono(float tick)
{
clock_t fin=clock()+(tick*CLOCKS_PER_SEC);
while(clock()<fin);
}وهذه الطريقة لا أنصح بها لأنها تستهلك الكثير من CPU
الطريقة الثانية باستعمال الدالة sleep الموجودة في header unistd.h (الماك و لينيكس وفقط) أو الدالة Sleep الموجودة في header windows.h
(نظام تشغيل ويندوز)
#include <stdio.h>
#include <time.h>
#define MAX 60
#if defined (WIN32) || defined (WIN64)
#include <windows.h>
#define chrono(temps) Sleep(temps*CLOCKS_PER_SEC)
#else
#include <unistd.h>
#define chrono(temps) sleep(temps)
#endif
int main(void)
{
int i=-1;
while(i++<MAX)
{
if(i==MAX) i=0;
printf("%2d...\n", i);
chrono(1);
}
return 0;
}ملاحظة : كما هو معلوم عندنا فنظام عد التواني يبدأ من 0 إلى 59 ومن بعد ذلك يرجع العد من القيمة البدئية 0
أما نظام عد التواني بالنسبة للجهاز فهو شيء آخر !!
أتمنى أن أكون جاوبت على سؤالك و بالتوفيق![]()
تم تعديل هذه المشاركة بواسطة مومو (momo) في 3 أكتوبر 2012 في 16:16
i love you mama
بعطيك العافية يا مومو والله ماقطرت واحرجتني معاااك :blush:
ابداااع وتمت التجربة :)
alaaaldeen كتب:بعطيك العافية يا مومو والله ماقطرت واحرجتني معاااك :blush:
ابداااع وتمت التجربة :)
العفو أخي ![]()
عدلت الكود قليلا حتى تستطيع مشاهدة الثواني و الدقائق و الساعات و الأيام و الشهور و السنوات كذلك ![]()
#include <stdio.h>
#include <stdlib.h>
#include <time.h>
#if defined (WIN32) || defined (WIN64)
#include <windows.h>
#define stop(temps) Sleep(temps*CLOCKS_PER_SEC)
#else
#include <unistd.h>
#define stop(temps) sleep(temps)
#endif
void pb_memoire()
{
puts("error memory!!");
exit(0);
}
int main(void)
{
int i=0;
time_t s;
struct tm* p=(struct tm*) malloc(sizeof(*p));
if(!p) pb_memoire();
while(i<i+1)
{
s=time(&s);
p=localtime(&s);
printf("%d/%d/%d ; %d:%d:%d\n",p->tm_year+1900, p->tm_mday+1, p->tm_mon+1, p->tm_hour,p->tm_min,p->tm_sec);
stop(1);
}
return 0;
}تم تعديل هذه المشاركة بواسطة مومو (momo) في 3 أكتوبر 2012 في 22:54
i love you mama
مومو (momo) كتب:العفو أخي
عدلت الكود قليلا حتى تستطيع مشاهدة الثواني و الدقائق و الساعات و الأيام و السنوات كذلك
#include <stdio.h> #include <stdlib.h> #include <time.h> #if defined (WIN32) || defined (WIN64) #include <windows.h> #define stop(temps) Sleep(temps*CLOCKS_PER_SEC) #else #include <unistd.h> #define stop(temps) sleep(temps) #endif void pb_memoire() { puts("error memory!!"); exit(0); } int main(void) { int i=0; time_t s; struct tm* p=(struct tm*) malloc(sizeof(*p)); if(!p) pb_memoire(); while(i<i+1) { s=time(&s); p=localtime(&s); printf("%d/%d/%d ; %d:%d:%d\n",p->tm_year+1900, p->tm_mday+1, p->tm_mon+1, p->tm_hour,p->tm_min,p->tm_sec); stop(1); } return 0; }
:lol:
ماقصرت والله احرجتني معاك :blush: :blush:
المتواجدون خلال آخر دقيقتين · يتحدّث كل ٣٠ ثانية
جارٍ التحقق من المتواجدين…