البرمجة

برمجة الساعة الذكية في C++

في عملية تعلم البرمجة بلغة C++، يعد فهم كيفية التعامل مع الوقت وكيفية تحديثه أمرًا أساسيًا. سأقدم لك إرشادات وتوجيهات حول كيفية تطوير برنامجك ليفهم ويعرض الوقت بشكل ديناميكي مثل عمل ساعة.

أولًا وقبل كل شيء، يجب عليك استخدام مكتبة التي تحتوي على وظائف للتعامل مع الوقت. يمكنك استخدام time_t لتخزين الوقت في ثواني. هناك دالة time() التي تعيد عدد الثواني منذ منتصف الليل (الوقت العالمي المنسق UTC).

لنقم بتعديل برنامجك ليدعم هذه الوظائف ويقوم بتحديث الوقت في الخلفية. هذا مثال على كيف يمكنك تحسين برنامجك:

cpp
#include #include class Time { private: time_t currentTime; public: // تعيين الوقت الحالي void setCurrentTime() { currentTime = time(0); } // عرض الوقت بتنسيق الساعة:الدقيقة:الثانية void display() { struct tm *localTime = localtime(¤tTime); std::cout << "Current Time: "; std::cout << localTime->tm_hour << ":" << localTime->tm_min << ":" << localTime->tm_sec << std::endl; } }; int main() { Time time; int hour, minute, second; std::cout << "Enter the initial hour, minute, and second: "; std::cin >> hour >> minute >> second; // تعيين الوقت الابتدائي time.setCurrentTime(); while (true) { // عرض الوقت الحالي time.display(); // انتظار ثانية واحدة std::this_thread::sleep_for(std::chrono::seconds(1)); // تحديث الوقت في الخلفية time.setCurrentTime(); } return 0; }

هذا البرنامج يقوم بعرض الوقت الحالي كل ثانية، ويستخدم std::this_thread::sleep_for للانتظار ثانية واحدة بين كل عرض وآخر. كما يُظهر كيف يمكنك استخدام time() و localtime() للتحكم في الوقت بشكل فعال.

المزيد من المعلومات

بالطبع، سأزيد من التفاصيل حول البرنامج وأشرح بعض النقاط الإضافية لتعزيز فهمك وتحسين مستوى مهارات البرمجة في C++.

  1. الوقت في C++:
    في C++، يُستخدم نوع البيانات time_t لتخزين الوقت. يُمكن الحصول على الوقت الحالي باستخدام الدالة time() من مكتبة . تُعيد هذه الدالة عدد الثواني منذ منتصف الليل (1 يناير 1970).

    الدالة localtime() تُستخدم لتحويل time_t إلى هيكل بيانات tm يحتوي على معلومات مفصلة حول الوقت المحلي.

  2. الحلقة اللانهائية:
    في البرنامج، تم استخدام حلقة while (true) لإنشاء دورة لا نهاية لها. هذا يسمح للبرنامج بالاستمرار في عرض الوقت بشكل متكرر.

  3. التأخير بين العروض:
    تُستخدم std::this_thread::sleep_for لتعليق تنفيذ البرنامج لمدة ثانية واحدة بين كل عرض وآخر. هذا يساعد في تقليل استهلاك وحدة المعالجة المركزية ويجعل البرنامج يعمل بشكل أكثر فعالية.

  4. تحديث الوقت في الخلفية:
    بعد كل عرض، يتم استدعاء time.setCurrentTime() لتحديث الوقت إلى اللحظة الحالية. هذا يضمن أن الوقت المعروض يكون دائمًا حديثًا.

  5. التعامل مع الوقت الابتدائي:
    يُطلب من المستخدم إدخال الوقت الابتدائي (ساعة، دقيقة، ثانية)، ويُستخدم هذا الوقت كنقطة انطلاق لعرض الوقت.

  6. أسلوب الطباعة:
    يُطبع الوقت باستخدام std::cout بشكل نظيف ومنظم، مع تنسيق “ساعة:دقيقة:ثانية”.

باستخدام هذه النصائح والتوجيهات، يمكنك تطوير مهاراتك في برمجة C++ وتحسين فهمك لكيفية التعامل مع الوقت وتطبيقه في برامجك.

مقالات ذات صلة

زر الذهاب إلى الأعلى
إغلاق

أنت تستخدم إضافة Adblock

يرجى تعطيل مانع الإعلانات حيث أن موقعنا غير مزعج ولا بأس من عرض الأعلانات لك فهي تعتبر كمصدر دخل لنا و دعم مقدم منك لنا لنستمر في تقديم المحتوى المناسب و المفيد لك فلا تبخل بدعمنا عزيزي الزائر