Lập trình căn bản: Sử dụng kiểu Struct, Mảng và chương trình con

Video 1: 



Video 2: 




Video 3: 


Code: các bạn nên xem hết 3 video để biết tại sao code lại có kết quả như bên dưới

#include <stdio.h>
#include <math.h>
struct Diem{
float
x,y;
};



int
nhapDSDiem(Diem *&ds){

int
n;
printf("Danh sach co bao nhieu diem ? ");
scanf("%d",&n);

ds=new Diem[n];// cap phat vung nho cho n diem

for
(int i=0;i<n;i++){
printf("Diem[%d] = ",i);
scanf("%f%f",&ds[i].x,&ds[i].y);
}

return
n;

}

void
inDSDiem(int n, Diem *ds){
printf("\n\nDanh sach cac diem vua nhap:");
for
(int i=0;i<n;i++){
printf("\nDiem[%d] = (%.2f,%.2f)",i,ds[i].x,ds[i].y);
}
}

void
hoanhDoNhoNhat(int n,Diem *ds){
int
minHD = ds[0].x;
int
diemI = 0;
for
(int i=1;i<n;i++)
if
(minHD>ds[i].x){
minHD = ds[i].x;
diemI = i;
}

printf("\n\nDiem co hoanh do nho nhat la Diem[%d] = (%.2f,%.2f)",
diemI,ds[diemI].x,ds[diemI].y);

}

void
tungDoLonNhat(int n,Diem *ds){
int
maxTD = ds[0].y;
int
diemI = 0;
for
(int i=1;i<n;i++)
if
(maxTD<ds[i].y){
maxTD = ds[i].y;
diemI = i;
}

printf("\n\nDiem co tung do lon nhat la Diem[%d] = (%.2f,%.2f)",
diemI,ds[diemI].x,ds[diemI].y);

}

float
tinhKC(Diem i, Diem j){
return
sqrt(pow(i.x-j.x,2)+pow(i.y-j.y,2));
}

void
dsKhoangCach(int n, Diem *ds){
printf("\n\nKhoang cach giua cac diem");
for
(int i=0;i<n-1;i++){
for
(int j= i+1;j<n;j++){
printf("\n\t|%d,%d| = %.2f",i,j,tinhKC(ds[i],ds[j]));
}
}
}

int
main(){
Diem *ds;
int
n=nhapDSDiem(ds);
inDSDiem(n,ds);
hoanhDoNhoNhat(n,ds);
tungDoLonNhat(n,ds);
dsKhoangCach(n,ds);
return
0;
}

Bài liên quan

Bài liên quan