batch-file
बैच फ़ाइलों में अंकगणित की सीमाएँ बायपास करें
खोज…
परिचय
बैच फाइलें केवल 32 बिट पूर्णांक गणना की अनुमति देती हैं, हालांकि इसे अलग-अलग तरीकों से बाईपास किया जा सकता है।
शक्तियों का उपयोग करना
जैसा कि 7/2008 से प्रत्येक विंडो सिस्टम पर डिफ़ॉल्ट रूप से शक्तियां स्थापित की जाती हैं और इसके बाद इसका उपयोग अधिक जटिल गणनाओं के लिए किया जा सकता है:
@echo off
set "expression=(2+3)*10/1000"
for /f %%# in ('"powershell %expression%"') do set result=%%#
echo %result%
के लिए अतिरिक्त डबल कोट्स को ध्यान में रखें for /f
जो कमांड सिंटैक्स के साथ कोष्ठक के टकराव को रोकता है।
संभावित मुद्दा यह है कि .net framerwork लोड होने के कारण wsh / vbscript / jscript का उपयोग करने की तुलना में पावरशेल बहुत धीमा है।
Jscript का उपयोग करना
WSH/JScript
NT के बाद से प्रत्येक विंडोज़ सिस्टम पर स्थापित किया गया है, इसलिए अधिक जटिल गणनाओं के लिए इसका उपयोग करने से यह बहुत पोर्टेबल हो जाता है। बैच फ़ाइल के साथ संयोजन के लिए JScript आसान है:
@if (@codesection==@batch) @then
@echo off
set "expression=2*(2+3)/1000"
for /f %%# in ('cscript //nologo //e:jscript "%~f0" "%expression%"') do set
result=%%#
echo %result%
:: more batch code
exit /b %errorlevel%
@end
WScript.Echo(eval(WScript.Arguments(0)));
इस दृष्टिकोण के साथ आप अपना पूरा कोड एक ही फाइल में डाल सकते हैं। यह पॉवरशेल का उपयोग करने से तेज है। यहाँ और यहाँ और अधिक उन्नत स्क्रिप्ट पाया जा सकता है (जो बाहरी फ़ाइलों के रूप में इस्तेमाल किया जा सकता है)।
कलम और कागज की गणना, गणित कार्यों के कार्यान्वयन
- यहां सबसे व्यापक गणित पुस्तकालय पाया जा सकता है जो कलम और कागज की गणना का अनुकरण करता है और बड़ी संख्या के साथ काम करने की अनुमति देता है।
- पेन और पेपर एमुलेशन के अन्य उदाहरण यहां दिए गए हैं: एडीडी , कंपेरिजन , मल्टीप्ली
- कुछ गणित कार्यों के कार्यान्वयन यहाँ पाए जा सकते हैं ।