2012-09-21 8 views
11

में फ्लोटिंग पॉइंट के रूप में मैं कोन्टेंट को int और शेष के रूप में कैसे प्राप्त करूं, जब मैं 18/7 करता हूं तो मेरे कैलकुलेटर पर मुझे 2.5714285714285714285714285714286 मिलता है। मेरे सुपर सीमित गणित कौशल 2 से उद्धरण है और .5714285714285714285714285714286 शेष है।जावास्क्रिप्ट

मैं जावास्क्रिप्ट में इसे कैसे मॉडल कर सकता हूं?

धन्यवाद!

+2

शेष शेष '4' नहीं होंगे? '18% 7 === 4'। – elclanrs

+0

शायद शेष सही नाम नहीं है। मैं उस फ्लोटिंग प्वाइंट बिट चाहता हूँ। –

उत्तर

21
var floatingPointPart = (18/7) % 1; 
var integerPart = Math.floor(18/7); 
+1

क्यों 'Math.trunc' नहीं? फिर यह नकारात्मक संख्याओं के साथ भी काम करता है। – letmaik

6
var rawQuotient = 18/7; 
var remainder = rawQuotient % 1; 
var quotient = rawQuotient - remainder; 

सबसे गणित में, वहाँ एक असली के रूप में, आंशिक भाग और पूरे हिस्से को, विशेष रूप से यह देखते हुए कि पूरी बात एक अंश (18/7ths) के रूप में व्यक्त किया जा सकता के बीच के अंतर के लिए कोई वास्तविक आवश्यकता है संख्या, या पूर्णांक और अंशों के मिश्रण के रूप में (2 और 4/7 वीं)।

जब आप प्रोग्रामिंग या इंजीनियरिंग में जाते हैं, या कुछ अन्य व्युत्पन्न होते हैं, तो आपके पास अलग होने के लिए निश्चित उपयोग होते हैं; लेकिन उद्धरण वास्तव में पूरी चीज, पूर्णांक और अंश है, हालांकि आप इसका प्रतिनिधित्व करना चुनते हैं।

+0

यह (सरल अंकगणित का उपयोग करता है) उत्तर स्वीकृत उत्तर से बेहतर है जो गणित पुस्तकालय पर निर्भर करता है। – Curious

+0

यहां, उद्धरण में शेष के माध्यम से प्रेरित गोलियां हो सकती हैं। – Ethan

0

वास्तव में, 2 भाग्यशाली है और 4/18 शेष है।

Math.divideby= function(d, dby){ 
    var q= Math.floor(d/dby), r= d-(q*dby); 
    return r== 0? q:q+' and '+r+'/'+d; 
} 

Math.divideby (18,7)

/* दिए गए मान: (स्ट्रिंग) */

2 और 4/18

2

2 उद्धरण (या परिणाम का पूर्णांक हिस्सा) है, 4 शेष है, और 4/7 परिणाम का फ़्लोटिंग पॉइंट हिस्सा है, जिसे ओपी अनुरोध कर रहा है।

var result = (18/7); 
var integerPart = Math.floor(result); 
var floatingPointPart = result - integerPart; 

पूर्णांकपार्ट और फ़्लोटिंगपॉइंटपार्ट अनुरोधित मान हैं।

1

हम केवल / & % ऑपरेटर का उपयोग करके उत्तर पाने के लिए सरल गणित का उपयोग कर सकते हैं।

पहले मान के रूप में 'num1' को पहले मान के रूप में & 'num2' मानें। तब:

var Quotient = (num1 - (num1 % num2))/num2; 

var FloatingPoint = (num1 % num2)/num2; 
4

Math.floor नकारात्मक संख्या के मामले में यह बिटवाइज़ आपरेशन का उपयोग करने के interger quotients प्राप्त करने के लिए बेहतर होगा में गलत दिशा के लिए परिणाम के पूर्णांकन की समस्या है।

var quot = ~~(num/num1) 

उम्मीद है कि यह आपके लिए काम करता है!