मैं कैसे bc
बीसी truncate चल बिन्दु संख्या
जैसे का उपयोग कर एक चल बिन्दु संख्या काटना है, तो मुझे क्या करना
echo '4.2-1.3' | bc
जो 2.9
आउटपुट मैं इसे कैसे काट-छांट करने के लिए मिल/उपयोग मंजिल 2
मैं कैसे bc
बीसी truncate चल बिन्दु संख्या
जैसे का उपयोग कर एक चल बिन्दु संख्या काटना है, तो मुझे क्या करना
echo '4.2-1.3' | bc
जो 2.9
आउटपुट मैं इसे कैसे काट-छांट करने के लिए मिल/उपयोग मंजिल 2
/
ऑपरेटर का उपयोग करें।
echo '(4.2-1.3)/1' | bc
1 ठीक काम करता है द्वारा डिवाइडिंग अगर scale
0 है (उदाहरण के लिए, यदि आप bc
साथ बीसी शुरू करने और scale
परिवर्तन नहीं करते), लेकिन विफल रहता है scale
सकारात्मक (है जैसे, यदि आप bc -l
साथ बीसी शुरू करने या scale
वृद्धि)। (नीचे प्रतिलेख देखें।) एक सामान्य समाधान के लिए, निम्न की तरह एक trunc
समारोह का उपयोग करें:
define trunc(x) { auto s; s=scale; scale=0; x=x/1; scale=s; return x }
ट्रांसक्रिप्ट कि दर्शाता है कि 1 से डिवाइड अपने आप में bc -l
मामले में विफल रहता है, लेकिन कैसे trunc
समारोह की ओर छोटा पर ठीक काम करता है शून्य:
> bc -l
bc 1.06.95
[etc...]
for (x=-4; x<4; x+=l(2)) { print x,"\t",x/1,"\n"}
-4 -4.00000000000000000000
-3.30685281944005469059 -3.30685281944005469059
-2.61370563888010938118 -2.61370563888010938118
-1.92055845832016407177 -1.92055845832016407177
-1.22741127776021876236 -1.22741127776021876236
-.53426409720027345295 -.53426409720027345295
.15888308335967185646 .15888308335967185646
.85203026391961716587 .85203026391961716587
1.54517744447956247528 1.54517744447956247528
2.23832462503950778469 2.23832462503950778469
2.93147180559945309410 2.93147180559945309410
3.62461898615939840351 3.62461898615939840351
define trunc(x) { auto s; s=scale; scale=0; x=x/1; scale=s; return x }
for (x=-4; x<4; x+=l(2)) { print x,"\t",trunc(x),"\n"}
-4 -4
-3.30685281944005469059 -3
-2.61370563888010938118 -2
-1.92055845832016407177 -1
-1.22741127776021876236 -1
-.53426409720027345295 0
.15888308335967185646 0
.85203026391961716587 0
1.54517744447956247528 1
2.23832462503950778469 2
2.93147180559945309410 2
3.62461898615939840351 3
जानकारी –
एक लाइनर पूर्व के लिए धन्यवाद .: 'बीसी <<<" पैमाने = 10; च = (3/55); पैमाने = 0; (312 * च)/1 "' –