# **Lưu ý: Hãy tự nghĩ cách giải, chỉ xem sol khi bí**
# **Ý TƯỞNG**:
**Đề yêu cầu nhập $n$, nếu $n$ khác 0 thì in $n^5$, nếu $n = 0$ thì kết thúc chương trình.**
$\Rightarrow$ Bây giờ ta sẽ sử dụng vòng lặp `while(true)`.
* Trong vòng lặp, ta sẽ nhập từ bàn phím giá trị của $n$.
* Nếu $n$ = 0,thì `break`.
***
Và ta sẽ sử dùng thêm hàm `pow` có sẵn trong thư viện của C++.
Hàm này có tác dụng giúp chúng ta tính những phép tính số mũ.
**Với cú pháp: `pow(cơ số, số mũ)`.**
*Ví dụ :* `pow(2,3)` sẽ trả về giá trị $8$
$\Rightarrow$ `pow(n,5)` sẽ trả về giá trị $n^5$
### **LƯU Ý :**
Kiểu giá trị trả về của hàm pow là **CÓ THỂ LÀ** `long double`, nên ta phải thêm `(long long)` trước phép tính để ép kiểu dữ liệu của chúng. Nếu không output sẽ in ra số thực ở dạng khoa học. `9.9501e+14
` chẳng hạn.
***
#### **VỚI PYTHON :**
Cách làm vẫn tương tự vậy, nhưng ta có phép tính `**`, nghĩa là phép tính số mũ trong python.
Ví dụ: `2**3` sẽ trả về giá trị $8$.
$\Rightarrow$ Vậy chỉ cần in ra `n**5` là được.
***
## **Độ phức tạp thuật toán :**
Với cách làm trên độ phức tạp thời gian là : $O(n)$
***
## **Code tham khảo :** C++
```cpp
#include <bits/stdc++.h>
#define ll long long
#define endl "\n"
#define suyvolo ios_base::sync_with_stdio(false);cin.tie(NULL);cout.tie(NULL)
using namespace std;
// THPT Trần Phú Thành phố Hồ Chí Minh.
int main() {
suyvolo;
ll n;
while(true){
cin >> n;
if(n == 0) break;
cout << (ll)pow(n,5) << endl; // nhớ endl nha :), ở đây mình define endl là "\n"
//nên hiệu suất vẫn nhanh:)
}
return 0;
}
```
## **Code tham khảo :** Python
```python
while True:
n = int(input())
if n!=0:
print(n**5) // Với python không cần ép kiểu, print là luôn cũng được
if n==0:
break
```