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:
#include<iostream>
#include<conio.h>
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 về Constructor trong C++](../bai_tap_cplusplus_co_giai/images/su_dung_constructor_trong_cplusplus.PNG)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.
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 " <<n<< "la: "<<obj.calculate();
std::cout<<"\n\t Giai thua cua " <<n<< "la: "<<cpy.calculate();
return 0;
}
```Chạy chương trình C++ trên sẽ cho kết quả như hình sau:
Unpublished comment
Viết câu trả lời