আপনার প্রশ্নের সরাসরি উত্তর দিতে, আপনি এই শব্দটি ব্যবহার করতে চান epsilon
। আরও সঠিকভাবে, এটি machine epsilon
সাধারণ ব্যবহারগুলি "মেশিন" ড্রপ করে এবং কেবল ব্যবহার করে epsilon
।
আমার স্থানীয় অনুলিপিটিতে float.h
আমি দেখছি:
#define DBL_EPSILON 2.2204460492503131e-016 /* smallest such that 1.0+DBL_EPSILON != 1.0 */
#define FLT_EPSILON 1.192092896e-07F /* smallest such that 1.0+FLT_EPSILON != 1.0 */
#define LDBL_EPSILON DBL_EPSILON /* smallest such that 1.0+LDBL_EPSILON != 1.0 */
এবং সম্পর্কিত মন্তব্যগুলি স্পষ্ট করে দেয় যে অ্যাপসিলন সেই শব্দটিকে আপনি উল্লেখ করছেন।
তবে epsilon
এটি সঠিক শব্দটি যাচাই করতে আমরা আরও কিছু, বাহ্যিক উল্লেখগুলির উপর নির্ভর করতে পারি । দেখুন এখানে , এখানে , এখানে , এবং পরিশেষে এই সমন্বয় তাই ক্যোয়ারী ট্যাগ । আমি উদ্ধৃত করার জন্য আইইইই 754 স্ট্যান্ডার্ডের প্রত্যক্ষ রেফারেন্স খুঁজে পাইনি।
আপনি জিজ্ঞাসা করেননি, তবে আমি এই রেফারেন্সটি পেয়েছি যা আপনার প্রশ্নটি পরিষ্কার করার জন্য আপনি যে উদাহরণ দিয়েছিলেন তার সাথে খুব প্রাসঙ্গিক।
আপনি প্রস্তাবিত যে তুলনাটি ব্যবহার করতে চান না তা কেন কিছুটা অন্তর্দৃষ্টির জন্য ভাসমান পয়েন্টের মানগুলির তুলনা করার জন্য ভালভের ব্রুস ডসনের এই ব্লগ নিবন্ধটি একবার দেখুন ।
এই নিবন্ধটিতে বেশ কিছু তথ্য রয়েছে, তবে এটি সেখান থেকে সর্বাধিক প্রাসঙ্গিক স্নিপপেট:
যদি সমতার জন্য ভাসমানগুলির তুলনা করা একটি খারাপ ধারণা হয় তবে তাদের পার্থক্যটি কিছু ত্রুটিসীমা বা এপসিলনের মানের মধ্যে রয়েছে কিনা তা যাচাই করা যায় কীভাবে:
bool isEqual = fabs(f1 – f2) <= epsilon;
এই গণনার সাহায্যে আমরা দুটি ফ্লোটের ধারণা যথেষ্ট পরিমাণে কাছাকাছি প্রকাশ করতে পারি যা আমরা তাদের সমান হিসাবে বিবেচনা করতে চাই। তবে অ্যাপসিলনের জন্য আমাদের কী মান ব্যবহার করা উচিত?
আমাদের উপরের পরীক্ষাগুলি প্রদত্ত আমরা আমাদের যোগফলটিতে ত্রুটিটি ব্যবহার করতে প্ররোচিত হতে পারি, যা প্রায় 1.19e-7f ছিল। প্রকৃতপক্ষে, সেই সঠিক মান সহ ভাসমান শৃঙ্খলায় একটি সংজ্ঞাও রয়েছে এবং এটিকে FLT_EPSILON বলা হয়।
স্পষ্টতই এটি। শিরোলেখ ফাইল দেবতারা কথা বলেছেন এবং FLT_EPSILON হ'ল সত্যিকারের অ্যাপসিলন!
তা ছাড়া আবর্জনা। 1.0 এবং 2.0 এর মধ্যে সংখ্যার জন্য FLT_EPSILON সংলগ্ন ফ্লোটগুলির মধ্যে পার্থক্য উপস্থাপন করে। ০.০ এর চেয়ে কম সংখ্যার জন্য FLT_EPSILON এর একটি ইপসিলন দ্রুত খুব বড় হয়ে যায় এবং খুব কম সংখ্যক সংখ্যার সাথে FLT_EPSILON আপনি যে সংখ্যার তুলনা করছেন তার চেয়ে বড় হতে পারে!
ডসন ভাসমানগুলির সাথে তুলনা করার সময় এবং এর মতো খুব ছোট মূল্যবোধ নিয়ে কাজ করার সময় জড়িত জটিলতা সম্পর্কে আরও কয়েকটি বিবেচনার মুখোমুখি হন, সুতরাং আমি আপনাকে তাঁর পোস্টের বাকী অংশটি পড়তে উত্সাহিত করব।