"यदि कोई कर्मचारी अपना काम अच्छी तरह से करना चाहता है, तो उसे पहले अपने औजारों को तेज करना होगा।" - कन्फ्यूशियस, "द एनालेक्ट्स ऑफ कन्फ्यूशियस। लू लिंगगोंग"
मुखपृष्ठ > प्रोग्रामिंग > क्या मैं गाड़ी चलाऊं? अल्कोहल परीक्षक को कोडिंग

क्या मैं गाड़ी चलाऊं? अल्कोहल परीक्षक को कोडिंग

2024-11-18 को प्रकाशित
ब्राउज़ करें:751

डेनमार्क में, जहां मैं रहता हूं, दुर्भाग्य से हमारे पास यूरोप के भीतर एक रिकॉर्ड है: हमारे बच्चे महाद्वीप पर सबसे अधिक शराब पीने वाले हैं। इस वजह से, युवाओं में शराब की खपत को कम करने और बच्चों को शराब के प्रभावों के बारे में शिक्षित करने पर ज़ोर दिया जा रहा है।

मैंने अपने स्थानीय स्कूल के लिए छात्रों को यह दिखाने के लिए HTML और जावास्क्रिप्ट में एक अल्कोहल कैलकुलेटर लगाया है कि शराब शरीर को कैसे प्रभावित करती है और रक्त में अल्कोहल की मात्रा (बीएसी) की गणना कैसे की जाती है।

बीएसी की गणना कैसे की जाती है?

बीएसी या "प्रोमिली" का अनुमान लगाने के लिए, आपको कुछ महत्वपूर्ण जानकारी की आवश्यकता होगी:

  • आपके शरीर का वजन - चूंकि एक बड़ा शरीर छोटे वजन की तुलना में अल्कोहल को अधिक पतला कर सकता है।
  • जैविक लिंग - शरीर में पानी की मात्रा के विभिन्न स्तरों के कारण, जो शरीर में अल्कोहल वितरण को प्रभावित करते हैं।
  • खपत की गई अल्कोहल इकाइयों की संख्या - क्योंकि प्रत्येक प्रकार के पेय में अल्कोहल की मात्रा अलग-अलग होती है।

अल्कोहल इकाइयों की गणना

अलग-अलग पेय आपके रक्तप्रवाह में अलग-अलग मात्रा में अल्कोहल का योगदान करते हैं, जो उनकी मात्रा और अल्कोहल की सांद्रता पर निर्भर करता है। इसे मानकीकृत करने के लिए, अल्कोहल की इकाई की गणना आम तौर पर इस प्रकार की जाती है:

volume (cl) * alcohol percentage * 0.8 / 120

संरचना

संपूर्ण "ऐप" को

के रूप में व्यवस्थित फ़ील्डसेट और नामित नियंत्रणों के साथ संरचित किया गया है, जिससे आवश्यक तत्वों को निकालना आसान हो जाता है:
const { add, addbeverage, etc. } = app.elements;

चूंकि बीएसी सीमाएं क्षेत्र के अनुसार अलग-अलग होती हैं, हमें पहले एक क्षेत्र का चयन करना होगा, वजन स्लाइडर को समायोजित करना होगा, और एक जैविक लिंग चुनना होगा:

Can I Drive? Coding an Alcohol Tester


इसके बाद, हम पेय पदार्थ जोड़ना शुरू कर सकते हैं:

Can I Drive? Coding an Alcohol Tester

यह एक सरल है, जहां इकाइयों, मात्रा और अल्कोहल प्रतिशत के लिए अलग-अलग फ़ील्ड अक्षम हैं (और सीएसएस के माध्यम से छिपे हुए हैं), जब तक कि आप पेय-चयनकर्ता से चयन नहीं करते:

Can I Drive? Coding an Alcohol Tester

इन फ़ील्ड की दृश्यता एक सक्षम तत्व-फ़ंक्शन से नियंत्रित होती है:

[percentage, units, volume].forEach(el => el.disabled = !bool);

जब हम पेय को जोड़ते हैं, तो उपभोग किए गए पेय पदार्थों की एक सूची बनाई जाती है, और बीएसी, शांत होने के अनुमानित घंटों आदि की गणना की जाती है:

Can I Drive? Coding an Alcohol Tester

फिर आप अधिक पेय पदार्थ जोड़ना जारी रख सकते हैं, और बीएसी तदनुसार अपडेट होता है:

Can I Drive? Coding an Alcohol Tester

मेरे लिए यह जानना बहुत था, कि अमेरिका में कानूनी बीएसी स्वीडन या नॉर्वे की तुलना में 4 गुना अधिक है!

दूसरे शब्दों में, स्वीडन में, आप उतनी मात्रा में शराब पीने के लिए अपना लाइसेंस खो सकते हैं जो अमेरिका में कानूनी रूप से स्वीकार्य होगी।


बीएसी गणना को तोड़ना

बीएसी के लिए मुख्य गणना कैलकुलेटउत्तर फ़ंक्शन में नियंत्रित की जाती है:

function calculateAnswer() {
  const alcoholMetabolismRate = 0.015;
  const currentBAC =
    ((total * 10) /
      (weight.valueAsNumber *
        1000 *
        parseFloat(bodywater.value))) *
    100;
  const hoursToSober = (
    currentBAC / alcoholMetabolismRate
  ).toFixed(1);
  const canDrive =
    currentBAC 



आइए इसे तोड़ें:

  1. अल्कोहल चयापचय दर: अल्कोहल चयापचय दर = 0.015

    • यह मान उस औसत दर को दर्शाता है जिस पर शरीर प्रति घंटे बीएसी कम करता है (लगभग 0.015%)।
  2. करंट बीएसी की गणना: करंटबीएसी = ((कुल * 10) / ((वेट.वैल्यूअसनंबर * 1000) * पार्सफ्लोट(बॉडीवॉटर.वैल्यू))) * 100

    • कुल * 10: यह खपत की गई कुल अल्कोहल इकाइयों को ग्राम में परिवर्तित करता है (क्योंकि एक इकाई लगभग 10 ग्राम शुद्ध अल्कोहल के बराबर होती है)।
    • weight.valueAsNumber * 1000: गणना उद्देश्यों के लिए शरीर के वजन को किलोग्राम से ग्राम में परिवर्तित करता है।
    • bodywater.value: जैविक लिंग पर आधारित एक दशमलव कारक, जो शरीर में अल्कोहल के वितरण को प्रभावित करता है (उदाहरण के लिए, पुरुषों के लिए 0.58, महिलाओं के लिए 0.49)।
    • बीएसी को प्रतिशत में बदलने के लिए परिणाम को 100 से गुणा किया जाता है।
  3. घंटों को शांत करने का अनुमान: HoursToSober = (currentBAC / अल्कोहलमेटाबोलिज्मरेट).toFixed(1);

    • बीएसी को शून्य तक पहुंचने के लिए आवश्यक समय का अनुमान लगाने के लिए वर्तमान बीएसी को चयापचय दर से विभाजित करता है।
  4. कानूनी ड्राइविंग स्थिति का निर्धारण: canDrive = currentBAC

    • वर्तमानबीएसी की तुलना चयनित कानूनी बीएसी सीमा से करता है। यदि वर्तमान बीएसी सीमा के भीतर है, तो उपयोगकर्ता को "ड्राइव करने के लिए उपयुक्त" माना जाता है; अन्यथा, वे नहीं हैं।

गणना उत्तर फ़ंक्शन फिर इन मानों को एक संदेश में जोड़ता है जो वर्तमान बीएसी, शांत होने तक के घंटे दिखाता है, और क्या उपयोगकर्ता गाड़ी चलाने के लिए फिट है।


... और यहीं इस ट्यूटोरियल का समापन होता है। यदि आप चाहें तो बेझिझक कोडपेन के साथ प्रयोग करें - शायद अधिक बच्चों के अनुकूल यूएक्स बनाकर। बस याद रखें, यह टूल एक अनुमान प्रदान करता है और आपके द्वारा प्रत्येक पेय पदार्थ का सेवन करने के समय जैसे कारकों को ध्यान में नहीं रखता है। और ध्यान रखें, इसका उपयोग सबसे अधिक संभावना शांत लोगों द्वारा किया जाएगा!


डेमो


DALL·E द्वारा कवर, प्रॉम्प्ट से: प्रारंभिक डिज्नी और कपहेड्स के समान कार्टून शैली में एक ड्रंक कार बनाएं, एक छवि के रूप में मैं 1000x420px तक क्रॉप कर सकता हूं।

विज्ञप्ति वक्तव्य यह लेख यहां पुन: प्रस्तुत किया गया है: https://dev.to/madsstoumann/can-i-drive-coding-an-alcohol-tester-163g?1 यदि कोई उल्लंघन है, तो कृपया इसे हटाने के लिए स्टडी_गोलंग@163.com से संपर्क करें।
नवीनतम ट्यूटोरियल अधिक>

चीनी भाषा का अध्ययन करें

अस्वीकरण: उपलब्ध कराए गए सभी संसाधन आंशिक रूप से इंटरनेट से हैं। यदि आपके कॉपीराइट या अन्य अधिकारों और हितों का कोई उल्लंघन होता है, तो कृपया विस्तृत कारण बताएं और कॉपीराइट या अधिकारों और हितों का प्रमाण प्रदान करें और फिर इसे ईमेल पर भेजें: [email protected] हम इसे आपके लिए यथाशीघ्र संभालेंगे।

Copyright© 2022 湘ICP备2022001581号-3