চ্যালেঞ্জ
সুতরাং, হুম, মনে হয়, আমাদের কাছে প্রচুর চ্যালেঞ্জ রয়েছে যা বর্গ সংখ্যা বা অন্যান্য আকারের সংখ্যার সাথে কাজ করে, আমাদের কাছে এমনটি নেই যা কেবল জিজ্ঞাসা করে:
একটি পূর্ণসংখ্যা দেওয়া n(যেখানে n>=0) ইনপুট হিসাবে একটি যথার্থ nবর্গক্ষেত্র হিসাবে সত্যবাদী মান দেয় বা যদি না হয় তবে একটি মিথ্যা মান দেয়।
বিধি
- আপনি যে কোনও যুক্তিসঙ্গত, সুবিধাজনক উপায়ে ইনপুট নিতে পারবেন যতক্ষণ না এটি স্ট্যান্ডার্ড আই / ও বিধি দ্বারা অনুমোদিত ।
- আপনার নির্বাচিত ভাষা নেটিভভাবে যা পরিচালনা করতে পারে তার চেয়ে বড় ইনপুটগুলি হ্যান্ডেল করার দরকার নেই বা যা ভাসমান বিন্দুতে ভুল হতে পারে।
- আউটপুট দুটি ধারাবাহিক সত্য / মিথ্যা মানগুলির মধ্যে একটি হওয়া উচিত (উদাহরণস্বরূপ,
trueবাfalse,1বা0) - সত্য যদি ইনপুটটি একটি নিখুঁত বর্গ হয়, তা না হলে মিথ্যা। - এটি কোড-গল্ফ তাই সর্বনিম্ন বাইট গণনা জয়।
পরীক্ষার মামলা
Input: 0
Output: true
Input: 1
Output: true
Input: 64
Output: true
Input: 88
Output: false
Input: 2147483647
Output: false
2**54-2যে কমপক্ষে জাভাস্ক্রিপ্টে 18014398509481982 > 9007199254740991
2**54-2একটি জেএস কনসোলে টাইপ করুন এবং আপনি যা পান তার সাথে তুলনা করুন 18014398509481982(সঠিক মান)। জেএস সঠিক মান আউটপুট করে, তাই 2**54-2ডাবল দিয়ে প্রতিনিধিত্বযোগ্য। যদি এটি এখনও আপনাকে বোঝায় না, বাইনারি ডেটা নিন 0100001101001111111111111111111111111111111111111111111111111111, এটি একটি আইইইই -754 ডাবল-স্পষ্টতা ভাসা হিসাবে ব্যাখ্যা করুন এবং দেখুন আপনি কী মান পাবেন।
18014398509481982(2**54-2), যা হয় একটি ডবল সঙ্গে representable এবং উত্তরগুলি ব্যবহার ঘটায়sqrtব্যর্থ।