Bài tập  /  Bài đang cần trả lời

Viết chương trình code C++ tìm ra số chính phương bé nhất và lớn hơn hoặc bằng n

Viết chương trình code C++ tìm ra số chính phương bé nhất và lớn hơn hoặc bằng n
2 trả lời
Hỏi chi tiết
36
Tham khảo câu trả lời từ Trợ lý ảo Lazi
Dưới đây là chương trình C++ tìm ra số chính phương bé nhất và lớn hơn hoặc bằng một số nguyên dương `n`:

```cpp
#include
#include

int main() {
int n;
std::cout << "Nhap so nguyen duong n: ";
std::cin >> n;

// Tính căn bậc hai của n
int sqrt_n = std::ceil(std::sqrt(n));

// Tính số chính phương
int perfect_square = sqrt_n * sqrt_n;

std::cout << "So chinh phuong be nhat va lon hon hoac bang " << n << " la: " << perfect_square << std::endl;

return 0;
}
```

### Giải thích chương trình:
1. Bạn nhập vào một số nguyên dương `n`.
2. Chương trình sẽ tính căn bậc hai của `n` và làm tròn lên bằng cách sử dụng hàm `std::ceil`.
3. Sau đó nó nhân giá trị làm tròn với chính nó để tìm được số chính phương nhỏ nhất lớn hơn hoặc bằng `n`.
4. Cuối cùng, chương trình in ra kết quả.

### Ví dụ:
- Nếu bạn nhập `n = 10`, chương trình sẽ tính căn bậc hai của `10`, là khoảng `3.16`, làm tròn lên là `4`, và số chính phương là `16` (`4*4`).
- Nếu bạn nhập `n = 16`, chương trình sẽ trả về `16` bởi vì nó đã là một số chính phương.
0
0
Ta Tan Phat
17/10 12:10:52
#include <bits/stdc++.h>
#define endl '\n'
using namespace std;

int main(){
    long long n;
    cin >> n;
    long long i = 1;
    while(i < n){
        if(i * i >= n){
            cout << i * i;
            break;
        }
        i++;
    }
    return 0;
}

Mở khóa để xem toàn bộ nội dung trả lời

(?)
Bạn đã đạt đến giới hạn của mình. Bằng cách Đăng ký tài khoản, bạn có thể xem toàn bộ nội dung trả lời
Cải thiện điểm số của bạn bằng cách đăng ký tài khoản Lazi.
Xem toàn bộ các câu trả lời, chat trực tiếp 1:1 với đội ngũ Gia sư Lazi bằng cách Đăng nhập tài khoản ngay bây giờ
Tôi đã có tài khoản? Đăng nhập
1
0
Duy Lê
19/10 20:58:59
#include <iostream>
#include <cmath>
using namespace std;
int main() {
int n;
cout << "Nhập số nguyên n: ";
cin >> n;
int sqrt_n = static_cast<int>(ceil(sqrt(n)));
int perfect_square = sqrt_n * sqrt_n;
cout << "Số chính phương bé nhất lớn hơn hoặc bằng " << n << " là: " << perfect_square << endl;
return 0; }

Bạn hỏi - Lazi trả lời

Bạn muốn biết điều gì?

GỬI CÂU HỎI
Học tập không giới hạn cùng học sinh cả nước và AI, sôi động, tích cực, trải nghiệm
Trắc nghiệm Lập trình Lớp 8 mới nhất

Hôm nay bạn thế nào? Hãy nhấp vào một lựa chọn, nếu may mắn bạn sẽ được tặng 50.000 xu từ Lazi

Vui Buồn Bình thường

Học ngoại ngữ với Flashcard

×
Trợ lý ảo Trợ lý ảo
×
Gia sư Lazi Gia sư