Trong bài viết này, mình sẽ chia sẻ đến các bạn những bài tập về vòng lặp từ căn bản đến nâng cao mà mình đã tổng hợp, chọn lọc từ nhiều nguồn khác nhau. Nếu kiến thức về vòng lặp của bạn chưa vững, còn đang lơ mơ thì hãy tham khảo ngay bài viết này để hiểu rõ hơn về chúng và bắt đầu thử sức với những bài tập dưới đây nhé!
Contents
Đề bài: Cho số tự nhiên n nhập từ bàn phím, hãy viết chương trình in ra tổng của n số tự nhiên đầu tiên sử dụng vòng lặp.
Đáp án:
#include<iostream>
using namespace std;
int main() {
int n;
long tong = 0;
cout << "Nhập số tự nhiên n: ";
cin >> n;
for(int i = 1; i <= n; i++) {
tong += i;
}
cout << "Tổng của " << n << " số tự nhiên đầu tiên là: " << tong << endl;
return 0;
}
Đề bài: Cho một số tự nhiên n nhập từ bàn phím, viết chương trình in ra màn hình giai thừa của số vừa nhập sử dụng vòng lặp.
Đáp án:
#include<iostream>
using namespace std;
int main() {
int n;
long gt = 1;
cout << "Nhập số tự nhiên n: ";
cin >> n;
if (n == 0) {
gt = 1;
}
else {
for(int i = 1; i <= n; i++) {
gt = gt * i;
}
}
cout << "Giai thừa của " << n << " = " << gt << endl;
return 0;
}
Đề bài: Nhập vào một số cho đến khi ta nhập số 0 thì dừng chương trình.
Đáp án:
#include<iostream>
using namespace std;
int main() {
int n;
do {
cout << "Nhập n: ";
cin >> n;
} while (n != 0);
cout << "Kết thúc chương trình!";
}
Đề bài: Nhập vào số tiền gửi ban đầu, tiền lãi mỗi năm và số năm gửi tiền, hãy tính số tiền nhận được sau n năm (biết lãi tính theo hình thức lãi kép).
Đáp án:
#include<iostream>
using namespace std;
int main() {
long long sotien;
double lai;
int sonam;
cout << "Nhập số tiền gửi: ";
cin >> sotien;
cout << "Nhập lãi suất hàng năm: ";
cin >> lai;
cout << "Nhập số năm gửi tiền: ";
cin >> sonam;
for(int i = 1; i <= sonam; i++) {
sotien += sotien * lai;
}
cout << "Số tiền sau " << sonam << " năm là : " << sotien;
}
Đề bài: Nhập vào một số tự nhiên n bất kì, in ra màn hình các số nguyên tố nhỏ hơn n theo thứ tự tăng dần (sử dụng vòng lặp)
Đáp án:
#include<iostream>
#include<math.h>
using namespace std;
int main() {
int n;
cout << "Nhập một số bất kì: ";
cin >> n;
if (n < 2) {
cout << "Không tồn tại số nguyên tố nào!" << endl;
}
else if (n == 2) {
cout << "Danh sách các số nguyên tố từ 0 đến 2 là: 2 " << endl;
}
else if (n > 2) {
cout << "Danh sách các số nguyên tố từ 0 đến " << n << " là: " << endl;
cout << 2 << endl;
cout << 3 << endl;
for (int i = 5; i <= n; i++)
for (int j = 2; j * j <= i; j++) {
if (i % j == 0)
break;
else if (j + 1 > sqrt(i)) {
cout << i << endl;
}
}
}
return 0;
}
Đề bài: Nhập vào một số tự nhiên n, in ra màn hình n phần tử đầu tiên của dãy Fibonacci (sử dụng vòng lặp).
Đáp án:
#include<iostream>
#include<conio.h>
using namespace std;
int main() {
int n;
long last = 1, before = 0, sum = 0;
int i = 1;
cout << "Nhập n: ";
cin >> n;
cout << n << " số Fibonacci đầu tiên là:" << endl;
if (n > 0) {
cout << 0 << " ";
while(i < n) {
cout << last << " ";
sum = before + last;
before = last;
last = sum;
i++;
}
}
else if (n <= 0) {
cout << "Không tồn tại dãy Fibonacci";
}
return 0;
}
Đề bài: Nhập vào một số tự nhiên n, in ra màn hình tam giác cân rỗng có chiều cao là n được tạo thành từ những dấu *, có sử dụng vòng lặp.
Đáp án:
#include<iostream>
using namespace std;
int main() {
int i, j, n;
cout << "Nhập chiều cao của tam giác: ";
cin >> n;
for (i = 0; i < n; i++) {
for (j = 0; j < 2 * n + 1; j++) {
if (j == n - i || j == n + i) {
cout << " * ";
}
else {
cout << " ";
}
}
cout << endl;
}
for (j = 0; j < 2 * n + 1; j++) {
cout << " * ";
}
return 0;
}
Hy vọng những bài tập này sẽ giúp các bạn trở nên thành thạo hơn về sử dụng vòng lặp trong C++! Nếu thấy bài viết này hay và hữu ích thì hãy chia sẻ nó đến với bạn bè của mình để ủng hộ mình và giúp mình ngày càng phát triển hơn nhé! Chúc các bạn thành công!
This post was last modified on Tháng Năm 7, 2024 6:57 chiều
Khám phá và tận dụng tiềm năng kinh doanh trên nhiều nền tảng là điều…
Mobile App đang trở thành một phần thiết yếu trong cuộc sống hiện đại. Với…
Bạn đã bao giờ quên mật khẩu máy tính và không biết phải làm sao?…
Driver chính là phần mềm giúp hệ điều hành nhận diện phần cứng trên máy…
Hiện nay, lập trình viên không cần phải thực hiện toàn bộ công việc lập…
Lập trình ứng dụng cho iOS không chỉ đơn thuần là một quyết định khó…