Thứ Bảy, Tháng Sáu 3, 2023
Trang chủLập trình từ A-ZLập trình C/C++Tìm một số có 4 chữ số vừa là số chính phương,...

Tìm một số có 4 chữ số vừa là số chính phương, vừa là số lập phương

Bài toán. Tìm số nguyên dương n = x2 = y3 (với x, y nguyên, n có 4 chữ số),

Với bài toán này, ta cần giải bằng thuật toán.

Vì  1000 <= y3 <= 9999.

Từ đó suy ra: 10 <= y <= 21.

Chính vì vậy ta sử dụng vòng lặp for duyệt từ 10 đến 21, tìm ra một số chính phương bằng y3 thỏa mãn là một số chính phương. Trong bài toán này, chúng ta chỉ cần tìm số nguyên dương n thỏa mãn điều kiện ghi vào file CPLP.OUT với dòng thứ nhất ghi ra số n cần tìm và dòng thứ hai ghi ra hay số x, y (cách nhau một dấu cách). Số cần tìm là số 4096 = 163 = 642.

Code tham khảo như sau:

#include <iostream>
#include <cmath>
using namespace std;
int cp(int n) {
    if ((float)sqrt(n) == (int)sqrt(n))
        return 1;
    else return 0;
}
int main() {
    freopen("CPLP.OUT","w",stdout);
    for (int i = 10; i < 22; i++) {
        if (cp(i*i*i)) {
            cout << i*i*i << endl;
            cout << i << " " << sqrt(i*i*i);
        }
    }
    return 0;
}
XEM THÊM
Dịch vụ thiết kế slide

NGẪU NHIÊN