ruby - रूबी-रूपांतरण स्ट्रिंग को वापस लौटने के लिए 0.0




string floating-point (2)

आपको पहले $ हटाने की आवश्यकता है इस तरह से पूरी चीज:

'%.2f' % '$10.00'.delete( "$" ).to_f

या

'%.2f' % '$10.00'[1..-1].to_f

यदि आप घनत्व पसंद करते हैं और गैर डॉलर का सामना कर सकते हैं

एक वैरिएबल में यह मान संग्रहीत किया जाता है: $10.00 और मुझे यह 10.00 प्राप्त करना होगा

मैंने इस वैल्यू को फ्लोट में परिवर्तित करने की कोशिश की है:

new_price = '%.2f' % (price.to_f)

लेकिन मुझे सिर्फ 0.0 मिलता है।

इसमें गलत क्या है? मैंने भी कोशिश की है

price = price.strip
price[0]=""
new_price = '%.2f' % (price.to_f)

लेकिन यह भी मेरी मदद नहीं करता ... जहां एक समस्या है?

धन्यवाद


के फ्रोडरिक के जवाब को जोड़ना:

आपको पहले $ $ हटाने की आवश्यकता है इस तरह से पूरी चीज:

'%.2f' % '$10.00'.delete( "$" ).to_f

या

'%.2f' % '$10.00'[1..-1].to_f

यदि आप घनत्व पसंद करते हैं और गैर डॉलर का सामना कर सकते हैं आपको आउटपुट के लिए कोड को प्रारूपित करने की ज़रूरत है यह सुनिश्चित करने के लिए कि आपको दो दशमलव स्थान> साथ मिलें

आपको दो दशमलव स्थान प्राप्त करने के लिए अपनी आउटपुट स्ट्रिंग को प्रारूपित करने की आवश्यकता है।

puts "Current amount: #{format("%.2f", amount)}"





type-conversion