Tạo lớp Mang các số nguyên, bắt buộc phải có:
Ø Thành
phần dữ liệu: con trỏ a lưu các phần tử, n chỉ số phần tử của mảng
Ø Hàm
thiết lập có tham số xác định kích thước mảng và cấp bộ nhớ cho mảng
Ø Hàm
chồng toán tử trích dòng >> để nhập các phần tử của mảng từ bàn phím
Ø Hàm
chồng toán tử chèn dòng << để xuất các phần tử của mảng ra màn hình
Tạo lớp MangKT kế thừa lớp Mang,
bắt buộc phải có:
Ø Hàm
thiết lập có tham số xác định kích thước mảng và cấp bộ nhớ cho mảng
Ø Hàm
chồng toán tử trích dòng >> để nhập các phần tử của mảng từ bàn phím
Ø Hàm
chồng toán tử chèn dòng << để xuất các phần tử của mảng ra màn hình
Ø Hàm
xác định số phần tử dương của mảng
Hàm main tạo 1 mảng Mang là a và 1 mảng MangKT
là b; Xuất tọa độ các mảng và số phần tử dương của mảng b.
#include<math.h>
#include<iostream.h>
class
Mang
int *a;
int n;
public:
Mang(int k)
{n=k; a=new int[n]; }
friend istream &operator >>(istream
&Input,Mang &P)
{cout<<"Nhap cac phan tu:\n";
for(int i=0;i<P.n;i++)
{cout<<"pt["<<i<<"]=";
Input>>P.a[i];
}
return Input;
}
friend ostream &operator << (ostream
&Out,Mang &P)
{for(int i=0;i<P.n;i++)
Out<<" "<<P.a[i];
return Out;
}
};
class
MangKT:Mang
{public:
MangKT(int k):Mang(k)
{}
friend istream &operator >>(istream
&Input,MangKT &P)
{cout<<"Nhap cac phan tu:\n";
for(int i=0;i<P.n;i++)
{cout<<"pt["<<i<<"]=";
Input>>P.a[i];
}
return Input;
}
friend ostream &operator << (ostream
&Out,MangKT &P)
{for(int i=0;i<P.n;i++)
Out<<" "<<P.a[i];
return Out;
}
int sptduong()
{int c=0;
for(int i=0;i<n;i++)
if (a[i]>0) c++;
return c;
}
};
void
main()
{int
t;
cout<<"Nhap so phan tu cua mang a,
n="; cin>>t;
Mang a(t);
cin>>a;
cout<<"Mang a:\n"; cout<<a;
cout<<"\nNhap so phan tu cua mang
b, n="; cin>>t;
MangKT b(t);
cin>>b;
cout<<"\nMang b:\n"; cout<<b;
cout<<"\nSo phan tu duong cua mang
b:"<<b.sptduong();
}
Nhãn bài viết: Chia-se | Học tập