কোনও পূর্ণসংখ্যার থেকে নিখুঁত মান পাওয়ার কোনও উপায় আছে কি?
উদাহরণ স্বরূপ
-8
to
8
আমি ইতিমধ্যে ইউআইএনটি () ব্যবহার করে চেষ্টা করে ধরে নিলাম এটি ইন্টকে স্বাক্ষরযুক্ত মানতে রূপান্তর করবে তবে এটি কার্যকর হয়নি।
কোনও পূর্ণসংখ্যার থেকে নিখুঁত মান পাওয়ার কোনও উপায় আছে কি?
উদাহরণ স্বরূপ
-8
to
8
আমি ইতিমধ্যে ইউআইএনটি () ব্যবহার করে চেষ্টা করে ধরে নিলাম এটি ইন্টকে স্বাক্ষরযুক্ত মানতে রূপান্তর করবে তবে এটি কার্যকর হয়নি।
উত্তর:
স্ট্যান্ডার্ড abs()ফাংশন এখানে দুর্দান্ত কাজ করে:
let c = -8
print(abs(c))
// 8
সুইফট 5 এর মাধ্যমে, কোনও পূর্ণসংখ্যাকে তার পরম মানের রূপান্তর করতে আপনি নিম্নলিখিত দুটি উপায়ের একটি ব্যবহার করতে পারেন।
Intথেকে কোনওটির পরম মূল্য পানmagnitudeIntএকটি magnitudeসম্পত্তি আছে। magnitudeনিম্নলিখিত ঘোষণা আছে:
var magnitude: UInt { get }
যে কোনও সংখ্যাসূচক মানের জন্য
x,x.magnitudeএর নিখুঁত মানx।
নিম্নলিখিত কোড স্নিপেট দেখায় যে magnitudeকোনও Intউদাহরণে নিখুঁত মান পেতে সম্পত্তি কীভাবে ব্যবহার করতে হয় :
let value = -5
print(value.magnitude) // prints: 5
Intথেকে একটি এর নিখুঁত মান পানabs(_:)সুইফ্টের একটি বৈশ্বিক সংখ্যাসূচক ফাংশন রয়েছে যার নাম abs(_:)পদ্ধতি। abs(_:)নিম্নলিখিত ঘোষণা আছে:
func abs<T>(_ x: T) -> T where T : Comparable, T : SignedNumeric
প্রদত্ত সংখ্যার পরম মান প্রদান করে।
নিম্নলিখিত কোড স্নিপেটটি উদাহরণস্বরূপ abs(_:)পরম মান পেতে কীভাবে বিশ্বব্যাপী ফাংশন ব্যবহার করবেন তা দেখায় Int:
let value = -5
print(abs(value)) // prints: 5
abs(Int8.min)এবং অতএব একটি ওভারফ্লো ত্রুটি তৈরি করে।
আপনি যদি কোনও নম্বরকে পরিবর্তন করতে বা এটি ইতিবাচক রাখতে বাধ্য করতে চান।
এখানে উপায়:
abs() for int
fabs() for double
fabsf() for float