Các bài tập căn bản trong C++, gồm các bài về Phương trình,Lũy thừa, fibonaxi, giai thừa. các bài tập về số: số nguyên tố, số hoàn hảo, số chính phương. bài tập về dãy số, sắp xếp dãy số Các bài tập căn bản trong C++, gồm các bài về Phương trình,Lũy thừa, fibonaxi, giai thừa. các bài tập về số: số nguyên tố, số hoàn hảo, số chính phương. bài tập về dãy số, sắp xếp dãy số Các bài tập căn bản trong C++, gồm các bài về Phương trình,Lũy thừa, fibonaxi, giai thừa. các bài tập về số: số nguyên tố, số hoàn hảo, số chính phương. bài tập về dãy số, sắp xếp dãy số Các bài tập căn bản trong C++, gồm các bài về Phương trình,Lũy thừa, fibonaxi, giai thừa. các bài tập về số: số nguyên tố, số hoàn hảo, số chính phương. bài tập về dãy số, sắp xếp dãy số Các bài tập căn bản trong C++, gồm các bài về Phương trình,Lũy thừa, fibonaxi, giai thừa. các bài tập về số: số nguyên tố, số hoàn hảo, số chính phương. bài tập về dãy số, sắp xếp dãy số
Trang 1CÁC BÀI TẬP CĂN BẢN TRONG C++
Trình biên dịch: Visual Studio 2013
I CÁC BÀI TẬP VỀ PHƯƠNG TRÌNH, LŨY THỪA, GIAI THỪA
Bài 1:
Giải Phương trình bậc 2: Ax2 + Bx + C = 0
#include<iostream>
#include<math.h>
#include<conio.h>
using namespace std;
int main()
{
float a, b, c, d;
cout << "\n Nhap a: "; cin >> a;
cout << "\n Nhap b: "; cin >> b;
cout << "\n Nhap c: "; cin >> c;
if (a == 0)
{
if (b == 0) {
if (c == 0) { cout << "\n PT vo so nghiem \n"; system("pause"); return 1; } else { cout << "\n PT vo nghiem \n"; system("pause"); return 1; } }
else {
if (c == 0) { cout << "\n PT co nghiem: x= 0 \n"; system("pause"); return 1; } else { cout << "\n PT co nghiem: x= " << -c / b << "\n"; system("pause"); return 1; }
} }
if (a!=0)
{
Trang 2if (b == 0) {
if (c == 0) { cout << "\n PT co nghiem: x= 0 \n"; system("pause"); return 1; }
if (c < 0) { cout << "\n PT vo nghiem \n"; system("pause"); return 1; } else { cout << "\n PT co 2 nghiem: \n x1= " << sqrt(c) << "\n x2= " << -sqrt(c) << "\n"; system("pause"); return 1; }
}
if (b!=0) {
d = b*b - 4 * a*c;
if (d < 0) { cout << "\n PT vo nghiem \n"; system("pause"); return 1; }
if (d == 0) { cout << "\n Pt co nghiem kep: \n x1= x2= " << -b / (2 * a)<<"\n"; system("pause"); return 1; }
else {
cout << "\n PT co 2 nghiem phan biet: ";
cout << "\n x1= " << (-b - sqrt(d)) / (2 * a);
cout << "\n x2= " << (-b + sqrt(d)) / (2 * a)<<"\n";
system("pause");
} }
}
}
Hình ảnh:
Trang 3Bài 2: Nhập vào một số nguyên N: Tính N!.
#include<iostream>
using namespace std;
int gt(int a)
{
if (a <= 0) return 1;
if (a == 1) return 1;
else return a*gt(a - 1);
}
int main()
{
int a,b;
cout << "\n Nhap a: "; cin >> a;
b = gt(a);
cout << "\n " << a << "!= " << b << "\n";
system("pause");
Trang 4Hình ảnh:
Bài 3: Viết Chương trinh tính Lũy Thừa a^b với a là số thực, b là số nguyên
#include<iostream>
using namespace std;
float lt(float a,int b)
{
int i;
float s=1;
for (i = 1; i <= b; i++)
s = s*a;
return s;
}
int main()
{
float a,c;
Trang 5int b;
cout << "\n Chuong trinh tinh: a^b:";
cout << "\n Nhap a: "; cin >> a;
cout << "\n Nhap b: "; cin >> b;
c = lt(a,b);
cout << "\n " << a << "^" << b << " = " << c << "\n";
system("pause");
}
Hình ảnh:
Câu 4: Dãy Fibonaxi Tính số Fibonaxi thứ N
#include<iostream>
using namespace std;
int fb(int a)
{
if (a == 1) return 1;
if (a == 2) return 2;
else return fb(a - 1)*fb(a - 2);
Trang 6int main()
{
int a;
cout << "\n Nhap a: "; cin >> a;
cout << "\n So Fibonaxi thu " << a << ": Fb(" << a << ")= " << fb(a) << "\n ";
system("pause");
}
Hình ảnh
II CÁC BÀI TẬP VỀ SỐ
Bài 1: Nhập vào số nguyên N Kiểm tra xem N có phải là số hoàn hảo, in ra các số hoàn hảo nhỏ hơn
N
#include<iostream>
using namespace std;
int hh(int a)
{
Trang 7int i, t=0;
for (i = 1; i <= a/2;i++)
if (a%i == 0)
t = t + i;
if (t == a) return a;
else return 0;
}
int main()
{
int a, i;
cout << "\n Nhap a: "; cin >> a;
if (hh(a) == a) cout << "\n " << a << " la so Hoan Hao."; else cout << "\n " << a << " khong phai so Hoan hao."; cout << "\n Cac so Hoan Hao nho hon " << a << " la: "; for (i = 1; i <= a;i++)
if (hh(i) == i) cout << i << " ";
cout << "\n";
system("pause");
}
Hình ảnh:
Trang 8Bài 2 Nhâp số nguyên N Kiểm tra xem số đó có phải là nguyên tố hay không, in ra các số nguyên tố
nhỏ hơn N
#include<iostream>
using namespace std;
int nt(int a)
{
if (a <= 1) return 0;
if (a>1)
for (int i = 2; i <= sqrt(a);i++)
if (a%i == 0) return 0;
return 1;
}
int main()
{
int a, i;
cout << "\n Nhap a: "; cin >> a;
if (nt(a) == 1) cout << "\n " << a << " la so nguyen to \n";
Trang 9else cout << "\n " << a << " khong la so nguyen to \n";
cout << "\n Cac so nguyen to nho hon " << a << " la: \n";
for (i = 1; i <= a-1;i++)
if (nt(i) == 1) cout << i << "\n";
system("pause");
}
Hình ảnh:
Bài 3: Nhạp vào 1 số nguyên N, kiểm tra xem số đó có phải số Chính Phương hay không, in ra các số
chính phương nhỏ hơn N
Số chính phương là số có thể khai căn
#include<iostream>
using namespace std;
int scp(int a)
{
int i = (int)sqrt(a);
if (i*i == a) return 1;
else return 0;
}
Trang 10int main()
{
int a, i;
cout << "\n Nhap a: "; cin >> a;
if (scp(a) == 1) cout << "\n " << a << " la so chinh phuong \n";
else cout << "\n " << a << " khong la so chinh phuong \n";
cout << "\n Cac so chinh phuong nho hon " << a << " la: \n";
for (i = 1; i <= a - 1;i++)
if (scp(i) == 1) cout << i << "\n";
system("pause");
}
Hình ảnh:
III CÁC BÀI TẬP VỀ DÃY SỐ
Bài 1: Nhập vào một dãy số sắp xếp dãy đó tăng dần, tính tổng các số chẵn, tổng các số
lẻ, tính trung bình dãy
#include<iostream>
using namespace std;
Trang 11int main()
{
int a[100], n, i, tc=0, tl=0;
float tb = 0;
cout << "\n Nhap so luong cac phan tu cua day: "; cin >> n; for (i = 1; i <= n; i++)
{
cout << "\n Nhap phan tu thu " << i << ":= "; cin >> a[i];
if (a[i] % 2 == 0) tc = tc + a[i];
if (a[i] % 2 != 0) tl = tl + a[i];
}
cout << "\n Tong chan: " << tc;
cout << "\n Tong le: " << tl;
cout << "\n TB day: " << (float)(tc + tl) / n<<"\n";
system("pause");
}
Hình ảnh