यदि मेरे पास हास्केल में एक फ़्लोटिंग पॉइंट नंबर है तो मैं परीक्षण कैसे करूं कि यह पूरी संख्या है या नहीं।यदि मैं एक फ्लोटिंग पॉइंट नंबर हैकेल में एक पूर्णांक है तो मैं कैसे परीक्षण करूं?
15
A
उत्तर
24
isInt x = x == fromInteger (round x)
> isInt 2
True
> isInt 2.5
False
और बस एक चेतावनी: हमेशा चल बिन्दु संख्या के सर्वशक्तिमान अभिशाप याद रखें:
> isInt (0.1^2*200)
False
> 0.1^2*200
2.0000000000000004
15
ठीक है, तो यह एक साल देर हो चुकी है, लेकिन मैं एक संशोधन का एक बड़ा प्रशंसक हूँ इसके बाद के संस्करण:
--Returns if x is an int to n decimal places
isInt :: (Integral a, RealFrac b) => b -> a -> Bool
isInt x n = (round $ 10^(fromIntegral n)*(x-(fromIntegral $ round x)))==0
तो, उदाहरण के लिए isInt 4.0001 3
रिटर्न True
लेकिन isInt 4.0001 4
रिटर्न False
। इसे 10
के आसपास मान के साथ चलाना लगभग हमेशा सटीक है कि फ्लोट-त्रुटियां आपकी समस्याओं को फिर से देती हैं; मैं आमतौर पर 7
का उपयोग करता हूं।
संबंधित मुद्दे
- 1. यदि मैं उद्देश्य-सी में एक आदिम शून्य हूं तो मैं कैसे परीक्षण करूं?
- 2. यदि कमांड आउटपुट में एक निश्चित स्ट्रिंग है तो मैं (एक पंक्ति में) कैसे परीक्षण करूं?
- 3. एमआईपीएस (या एसपीआईएम): फ्लोटिंग पॉइंट नंबर लोड हो रहा है
- 4. सी - फ्लोटिंग पॉइंट राउंडिंग
- 5. एसएनएमपी के माध्यम से एक फ्लोटिंग पॉइंट नंबर दिखाने का एक अच्छा तरीका क्या है?
- 6. फ्लोटिंग-पॉइंट
- 7. एसक्यूएल सेट फ्लोटिंग पॉइंट परिशुद्धता
- 8. यदि मैं किसी सरणी में सभी आइटम समान हैं तो मैं कैसे परीक्षण करूं?
- 9. फ्लोटिंग पॉइंट सदस्यों
- 10. मैं पर्ल में फ़्लोटिंग पॉइंट परिशुद्धता कैसे सेट करूं?
- 11. मैं 2 बाइट बाइनरी में एक पूर्णांक कैसे विभाजित करूं?
- 12. यदि स्ट्रिंग बराबर नहीं है तो मैं तुलना कैसे करूं?
- 13. क्या मैं तुलना कर सकता हूं और सी में एक पूर्णांक में एक फ़्लोटिंग-पॉइंट नंबर जोड़ सकता हूं?
- 14. पूर्णांक और फ्लोटिंग पॉइंट्स
- 15. फ़्लोटिंग पॉइंट नंबर प्रारूप
- 16. एक सटीक रिज़ॉल्यूशन फ्लोटिंग पॉइंट नंबर का अनुमानित रिज़ॉल्यूशन क्या है जब इसके आसपास शून्य
- 17. फ्लोटिंग पॉइंट तुलना में समस्याएं
- 18. यदि कोई चर दो मानों के बराबर नहीं है तो मैं कैसे परीक्षण करूं?
- 19. मैं एक सीरियल नंबर (पंजीकरण संख्या) कैसे उत्पन्न करूं?
- 20. रूबी फ्लोटिंग पॉइंट त्रुटियां
- 21. यदि सभी बिट्स 0 हैं, तो आईईईई फ्लोटिंग पॉइंट का मूल्य क्या है?
- 22. यदि कोई सरणी दूसरे का उप-समूह है तो मैं कैसे परीक्षण करूं?
- 23. आर अगर मैं आरक्रिप्ट के रूप में चल रहा है तो मैं कैसे परीक्षण करूं?
- 24. क्या कॉस (ए) फ्लोटिंग पॉइंट
- 25. यदि sqlite3_prepare_v2() एक देता है तो मैं त्रुटि कोड कैसे प्राप्त करूं?
- 26. यदि मैं एक IQueryable से चुनता हूं तो शामिल है
- 27. एंड्रॉइड फ्लोटिंग पॉइंट गणित प्रदर्शन
- 28. मैं एक फ़्लोटिंग पॉइंट सी कोड को निश्चित बिंदु में कैसे परिवर्तित करूं?
- 29. PHP का एक दूरस्थ छवि फ़ाइल मौजूद है या नहीं, तो मैं कैसे परीक्षण करूं?
- 30. बैश: यदि कोई चर एक पूर्णांक
ठंडा, क्या होउगल के अनुसार – Peter
@ पीटर: नहीं है। – yairchu
ध्यान रखें कि 'isInt (1/0) == True' – hvr