ज़रूरी
PascalABC. NET या PascalTurbo प्रोग्रामिंग वातावरण।
निर्देश
चरण 1
तो, सबसे पहले, प्रोग्राम को खोलें। आइए एक नई फाइल बनाएं और प्लगइन्स निर्दिष्ट करें। इस मामले में, हमें कंसोल - सीआरटी के साथ काम करने के लिए एक मॉड्यूल की आवश्यकता है।
इसके लिए हम लिखेंगे:
उपयोग
सीआरटी;
चरण 2
आइए हम वास्तविक प्रकार के चर i, s, m - चरों को इंगित करें।
वर
मैं, एस, एम: रियल;
चरण 3
कार्यक्रम शुरू करने के लिए, लिखें:
शुरू
और हम कंसोल विंडो का शीर्षक इंगित करेंगे:
सेटविंडो टाइटल ('स्टॉपवॉच');
चरण 4
TextColor प्रक्रिया टेक्स्ट को एक रंग प्रदान करती है, और राइट स्टेटमेंट टेक्स्ट को स्क्रीन पर प्रदर्शित करता है:
टेक्स्टकलर (लाइटग्रीन);
WriteLn ('स्टॉपवॉच शुरू करने के लिए एंटर दबाएं');
WriteLn ('बंद करने के लिए फिर से दबाएं');
लिखें ('फिर से शुरू करने के लिए फिर से क्लिक करें');
अंतिम Ln अगली पंक्ति में चला जाता है।
चरण 5
रीडएलएन ऑपरेटर कीबोर्ड से मूल्यों में प्रवेश करता है, लेकिन इस मामले में यह उपयोगकर्ता के एंटर दबाए जाने की प्रतीक्षा करता है:
रीडएलएन;
चरण 6
हम एक अंतहीन लूप बनाते हैं:
जबकि (सच) करते हैं
शुरू
जबकि (सत्य) निर्माण शुरू करते हैं अनुवाद के रूप में: जबकि (शर्त) करते हैं ()। यहाँ क्यों शुरू हो रहा है?
इस मामले में, हमें एक कंपाउंड ऑपरेटर की आवश्यकता होती है, जिसका अर्थ है कि जबकि शर्त सही है, कई ऑपरेटरों को निष्पादित किया जाता है। यदि यह शुरुआत के लिए नहीं था, तो समय के बाद, केवल एक बयान निष्पादित किया गया था, जिससे गलत कार्यक्रम संचालन होगा। जबकि कथन को अंत में समाप्त करने के लिए, हम अंत लिखते हैं।
चरण 7
अब काउंटर को रीसेट करते हैं:
मैं: = 0;
चरण 8
निम्नलिखित कथन का अनुवाद इस प्रकार है: जब तक do () कुंजी को दबाया नहीं जाता है।
जबकि कीप्रेस्ड नहीं है
शुरू
ClrScr ऑपरेटर स्क्रीन को साफ करता है:
ClrScr;
चरण 9
हम शर्त निर्धारित करते हैं: यदि सेकंड 60 से अधिक और 3600 से कम हैं (यह आवश्यक है ताकि जब समय एक घंटे से अधिक हो, तो प्रोग्राम केवल वही प्रिंट करता है जो तीसरे के बाद है) तो:
अगर (i> ६०) और (i <३६००) तो शुरू करें
चर m (मिनट) के बराबर है: सेकंड को 60 से विभाजित किया जाता है और सामने की ओर गोल किया जाता है।
एम: = इंट (i / 60);
और चर s (मिनट के बिना सेकंड) बराबर है: सभी सेकंड माइनस मिनट को 60 से गुणा किया जाता है।
एस: = मैं - एम * 60;
चरण 10
राइट स्टेटमेंट लिखता है कि कितने मिनट और सेकंड बीत चुके हैं, और अंतिम स्टेटमेंट इफ कंडीशन के बाद स्टार्ट का काम समाप्त करता है:
लिखें (एम, 'मिनट (एस) और', एस: 1: 2, 'सेकंड (एस)')
समाप्त;
फ़ंक्शन: 1: 2 का अर्थ है कि सेकंड को दो दशमलव स्थानों के साथ लिखा जाना चाहिए।
चरण 11
यदि सेकंड 60 से कम हैं, तो बस यह लिखें कि दो दशमलव स्थानों के साथ कितने सेकंड बीत चुके हैं:
अगर मैं <60 तो
लिखें ('', i: 1: 2, 'सेकंड (a / s)');
चरण 12
यदि सेकंड 3600 से अधिक (अर्थात एक घंटे से अधिक) हैं तो:
अगर मैं> 3600 तो शुरू करें
एम: = इंट (i / 60);
एस: = मैं - एम * 60;
सीएच: = इंट (एम / 60);
एम: = एम - सी * 60;
लिखें (ch, 'घंटा (s)', m, 'मिनट (s) और', s: 1: 2, 'सेकंड (s)');
समाप्त;
चरण 13
तो, कार्यक्रम ने लिखा कि 0 सेकंड बीत चुके हैं, अब यह काउंटर को 10 मिलीसेकंड से बढ़ा देता है, और चूंकि कार्यक्रम तुरंत सब कुछ करता है, हम उसी समय के लिए देरी करते हैं:
मैं: = मैं + ०.०१;
विलंब (10);
इसके बाद, हम जबकि (कीप्रेस्ड नहीं) स्टेटमेंट के लिए अंत करते हैं:
समाप्त;
यदि उपयोगकर्ता एंटर कुंजी दबाता है, तो प्रोग्राम स्टॉपवॉच को फिर से शुरू करने के लिए उसे फिर से दबाए जाने की प्रतीक्षा करता है:
रीड्लन;
रीडलन;
यह कोई संयोग नहीं है कि हम जबकि (सत्य) कथन के बाद काउंटर को शून्य पर सेट करते हैं, क्योंकि जब उपयोगकर्ता दूसरी बार एंटर दबाता है, तो प्रोग्राम वहां से शुरू होगा, काउंटर रीसेट करें और फिर से गिनती शुरू करें।
इसके बाद, हम जबकि और पूरे कार्यक्रम के लिए समाप्त करते हैं:
समाप्त;
चरण 14
ये रहा पूरा कार्यक्रम:
उपयोग
सीआरटी;
वर
मैं असली;
एस: वास्तविक;
मी: वास्तविक;
सीएच: वास्तविक;
शुरू
सेटविंडो टाइटल ('स्टॉपवॉच');
टेक्स्ट कलर (लाइटग्रीन);
WriteLn ('स्टॉपवॉच शुरू करने के लिए एंटर दबाएं');
WriteLn ('बंद करने के लिए फिर से दबाएं');
लिखें ('फिर से शुरू करने के लिए फिर से क्लिक करें');
रीडएलएन;
जबकि (सच) करते हैं
शुरू
मैं: = 0;
जबकि कीप्रेस्ड नहीं है
शुरू
ClrScr;
अगर (i> ६०) और (i <३६००) तो शुरू करें
एम: = इंट (i / 60);
एस: = मैं - एम * 60;
लिखें (एम, 'मिनट (एस) और', एस: 1: 2, 'सेकंड (एस)')
समाप्त;
अगर मैं <60 तो
लिखें ('', i: 1: 2, 'सेकंड (a / s)');
अगर मैं> 3600 तो शुरू करें
एम: = इंट (i / 60);
एस: = मैं - एम * 60;
सीएच: = इंट (एम / 60);
एम: = एम - सी * 60;
लिखें (ch, 'घंटा (s)', m, 'मिनट (s) और', s: 1: 2, 'सेकंड (s)');
समाप्त;
मैं: = मैं + ०.०१;
विलंब (10);
समाप्त;
रीड्लन;
रीडलन;
समाप्त;
समाप्त।
चरण 15
यह बहुत अच्छा नहीं निकला, लेकिन कार्यक्रम सही ढंग से काम करता है!