ধরুন একটি সংখ্যা দেওয়া আছে, আমাদের যাচাই করতে হবে যে সংখ্যাটি পারফেক্ট স্কোয়ার কিনা। আমরা স্কোয়ার রুট অপারেশন ব্যবহার করব না। ধরুন ১০২৪ একটি পারফেক্ট স্কোয়ার, কিন্তু ১০০০ নয়। লজিকটি সহজ: নিচের অ্যালগরিদম অনুসরণ করে ফলাফল পাওয়া যাবে।
অ্যালগরিদম
isPerfectSquare(n) −
ইনপুট − সংখ্যা n
আউটপুট − true, যদি সংখ্যাটি পারফেক্ট স্কোয়ার হয়, অন্যথায় false
begin for i := 1, i² ≤ n, increase i by 1: if n is divisible by i, and n / i = i, then return true done return false end
উদাহরণ
#include <iostream> using namespace std; bool isPerfectSquare(int number) { for (int i = 1; i * i <= number; i++) { if ((number % i == 0) && (number / i == i)) { return true; } } return false; } int main() { int n = 1024; if(isPerfectSquare(n)){ cout << n << " is perfect square number"; } else { cout << n << " is not a perfect square number"; } }আউটপুট
1024 is perfect square number