Bài tập C++ có giải: Sử dụng Constructor và Copy Constructor
Bài tập Sử dụng constructor để tìm số nguyên tố
Dưới đây là chương trình C++ để giải bài tập trên. Bạn theo các bước sau:
Bước 1: Khai báo lớp songuyento với các thành viên dữ liệu và các hàm thành viên
Bước 2: Giả sử một constructor của lớp songuyento là songuyento() với tham số là số nguyên
Bước 3: Gọi hàm calculate() và thực hiện các bước tiếp theo
Bước 4: Với i=2 tới a/2, bạn thực hiện:
Bước 5: Kiểm tra nếu a%i==0, sau đó thiết lập k=0 và break
Bước 6: Nếu không, thiết lập k=1
Bước 7: Tăng giá trị của i thêm 1
Bước 8: Kiểm tra giá trị của k là 1 hay là 0
Bước 9: Nếu là 1 thì hiển thị rằng đó là số nguyên tố
Bước 10: Nếu là 0, thì hiển thị rằng giá trị đó không phải là nguyên tố
#include#include using namespace std;class songuyento { int a,k,i; public: songuyento(int x) { a=x; } void calculate() { k=1; { for(i=2;i<=a/2;i++) if(a%i==0) { k=0; break; } else { k=1; } } } void show() { if(k==1) cout<< "\n\tA la so nguyen to. "; else cout<<"\n\tA khong la so nguyen to."; } }; int main() { int a; cout<<"\n\tNhap so: "; cin>>a; songuyento obj(a); obj.calculate(); obj.show(); return 0; }
Chạy chương trình C++ trên sẽ cho kết quả như hình sau:
Bài tập Tính giai thừa bởi sử dụng copy constructor
Dưới đây là chương trình C++ để giải bài tập trên.
#include#include class copy { int var,fact; public: copy(int temp) { var = temp; } double calculate() { fact=1; for(int i=1;i<=var;i++) { fact = fact * i; } return fact; } }; int main() { int n; std::cout<<"\n\tNhap so : "; std::cin>>n; copy obj(n); copy cpy=obj; std::cout<<"\n\t Giai thua cua " < Chạy chương trình C++ trên sẽ cho kết quả như hình sau:
![]()
Bài học Bài tập C++ phổ biến tại hoconline.club:
Quảng cáoBài viết liên quan