[Tự học lập trình C/C++] Bài tập: Sử dụng constructor để tìm số nguyên tố

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<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;
}


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<iostream>
#include<conio.h>


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;
}       

Bài đăng phổ biến

Bài viết mới nhất

Tin học cơ bản - Nền tảng của mọi kỹ năng

Mọi thông tin trên blog đều được giữ bản quyền bởi Tin học cơ bản. Các bạn nếu muốn lấy thông tin từ blog vui lòng ghi rõ nguồn Tinhoccoban.net

TIN HỌC CƠ BẢN