Share Đáp Án Bài Tập Kỹ Thuật Lập Trình - BT1

*Nhapmatran
*Xuatmatran
*Nhap so dong can tinh tong
*Tong phan tu trong dong
*Nhap so cot can tinh tong
*Tong phan tu cua cot
*Tong phan tu tren duong cheo chinh
*Tong phan tu tren duong cheo phu
*Tong MAX tren moi dong
*Tong tbMin tren moi cot
*vitriMax
*VitriChancuoi
*phan tu am le va lon nhat 
*phan tu chan duong va nho nhat
*phan tu lon nhat tren duong cheo chinh
*Tong gia tro nho nhat thuoc tung DCSS
*Chon dong can thay doi
*Nhap so dong can xoa
*Nhap so cot can chen
*Nhap cap n=
*sapxeptangdan


#include <conio.h>
#include <stdio.h>
void Nhapmatran(int A[][100],int &n,int &m)
{
printf ("\n Nhap so dong :");
scanf("%d",&n);
printf("\n Nhap so cot :");
scanf("%d",&m);
for (int i=0;i<n;i++)
{
for (int j=0;j<m;j++)
{
printf ("Nhap A[%d][%d]=",i,j);
scanf("%d",&A[i][j]);
}
}
}
void Xuatmatran(int A[][100],int n,int m)
{
for(int i=0;i<n;i++){
for (int j=0;j<m;j++){
printf("%3d",A[i][j]);
}
printf("\n");
}
}
//tinh tong cac phan tu tren cung mot dong  . cau 1
int Tinhtongdong(int A[][100],int n,int m,int d)
{
int sum=0;
for(int j=0;j<m;j++){
sum+=A[d][j];
}
return sum;
}
//tinh tong cac phan tu tren cung mot cot .cau 2
int Tinhtongcot(int A[][100],int n,int m,int c)
{
int sum=0;
for (int i=0;i<n;i++){
sum+=A[i][c];
}
return sum;
}
//tinh tong cac phan tu thuoc duong cheo chinh trong ma tran . cau 3
int TinhtongDCC(int A[][100],int n,int m)
{
int sum=0;
for (int i=0;i<n;i++){
sum+=A[i][i];
}
return sum;
}
int TinhtongDCP(int A[][100],int n,int m)
{
int sum=0;
for (int i=0;i<n;i++){
sum+=A[i][n-i-1];
}
return sum;
}

//tinh tong cac gia tri lon nhat tren moi dong . cau 4
int Tinhtongmax(int A[][100],int n,int m)
{
int Max=A[0][0];
int sum=0;
for (int i=0;i<n;i++){
Max=A[i][0];
for (int j=0;j<m;j++){
if(A[i][j]>Max){
Max=A[i][j];
}
}sum+=Max;
}
return sum;
}

//tinh tong cac gia tri nho nhat tren moi dong 
float Tinhtbmin(int A[][100],int n,int m)
{
int Min=A[0][0];
int sum=0;
float tbMin;
for(int j=0;j<m;j++){
Min=A[0][j];
for (int i=0;i<n;i++){
if (A[i][j]<Min){
Min=A[i][j];
}
}sum+=Min;
}
return (float)sum/m;
}

//vi tri phan tu lon nhat trong ma tran so nguyen . cau 7
int vitriMax(int A[][100],int n,int m)
{
int d=0,c=0;
int Max=A[d][c];
for (int i=0;i<n;i++){
for (int j=0;j<m;j++){
if (A[d][c]<A[i][j]){
d=i;
c=j;
}
}
}
printf("Vi tri Lon nhat:");
printf("\ndong thu %d",d);
printf("cot thu %d",c);
}

//vi tri phan tu chan cuoi cung trong mang  . cau 8
int VitriChancuoi(int A[][100],int n,int m)
{ int d,c;
for(int i=n-1;i>=0;i--){
for (int j=m-1;j>=0;j--){
if (A[i][j]%2==0){
d=i;
c=j;
break;}
}break;
}
printf("Vi tri chan cuoi: ");
printf("\ndong thu %d",d);
printf(",cot thu %d",c);
}

//tim phan tu am le va lon nhat trong ma tran . cau 9
int Amle(int A[][100],int n,int m){
for (int i=0;i<n;i++){
for (int j=0;j<m;j++){
if (A[i][i]<0&&A[i][j]%2!=0)
return A[i][j];
}
}
return 0;
}
int Amlemax(int A[][100],int n,int m)
{ int Maxam=Amle(A,n,m);
for (int i=0;i<n;i++){
for (int j=1;j<m;j++){
if (A[i][j]<0&&A[i][j]%2!=0){
if(A[i][i]>Maxam){
Maxam=A[i][j];
}
}
}
}
return Maxam;
}

// tim phan tu chan duong va nho nhat trong ma tran . cau 10
int Chanduong(int A[][100],int n,int m){
for (int i=0;i<n;i++){
for(int j=0;j<m;j++){
if (A[i][j]%2==0&&A[i][j]>0){
return A[i][j];
}
}
}
return 0;
}
int ChanduongMin(int A[][100],int n,int m){
int Minchanduong=Chanduong(A,n,m);
for(int i=0;i<n;i++){
for (int j=0;j<m;j++){
if(A[i][j]>0&&A[i][j]%2==0){
if(A[i][j]<Minchanduong)
Minchanduong=A[i][j];
}
}
}
return Minchanduong;
}

// phan tu lon nhat tren duong cheo chinh . cau 11
int Ptmaxdcc(int A[][100],int n,int m){
int Max=A[0][0];
for (int i=1;i<n;i++){
if (A[i][i]>Max){
Max=A[i][i];
}
}
return Max;
}



//
int Vtdtofxm(int A[][100],int n,int m,int x){
int d,c;
printf("\n Nhap vao so can tim :");
scanf("%d",&x);
for (int i=0;i<n;i++){
for(int j=0;i<m;j++){
if (A[i][j]==x){
d=i;
c=j;
}
}break;
}
printf("\n Vi tri xuat hien dau tien of x: ");
printf("Dong thu %d",d);
printf("cot thu %d",c);
}


//cau 6
int TongDCSS(int A[][100],int n,int m){
  int s=0;
    for(int i=1;i<n;i++)
    { 
int m1,m2;
    for(int j=i;j<n;j++)  
    {
        if(A[j][j-i]<m1){
            m1=A[j][j-i];
        }
        if(A[j-i][j]<m2){
            m2=A[j-i][j];
        }
    }
    s=s+m1+m2;
    }
    return s;
}

// cau 12 hoan vi
int hoanvi(int &a,int &b){
int temp=a;
a=b;
b=temp;
}
void Hoanvi(int A[][100],int n,int m,int &d1,int &d2,int &c1,int &c2){
if ((d1<n&& d1>=0)&&(d2<n&& d2>=0)){
for (int j=0;j<m;j++){
hoanvi(A[d1][j],A[d2][j]);
}
}
if ((c1>=0&&c1<m)&&(c2>=0&&c2<m))
{
for(int i=0;i<n;i++){
hoanvi(A[i][c1],A[i][c2]);
}
}
Xuatmatran(A,n,m);
}

// cau 13
void xoacotdong(int a[][100],int n,int m,int c,int d)
{
    if(c>=0 && c<m)
        {
            for(int i=0;i<n;i++)
                for(int j=c;j<m-1;j++)
                    a[i][j]=a[i][j+1];
            m--;
    }
    if(d>=0 &&d<n)
    {
        for(int i=d;i<n-1;i++)
            for(int j=0;j<m;j++)
                a[i][j]=a[i+1][j];
        n--;
}
Xuatmatran(a,n,m);
}


// cau 14
void chendongchencot(int A[][100],int &n,int &m,int c,int d)
{
    if(c>=0 && c<m)
    {
    for(int i=0;i<n;i++)
    {
    for(int j=m;j>c;j--)
    {
    A[i][j]=A[i][j-1];
            
}
       
}
m++;
for(int i=0;i<n;i++)
        {
            printf("Nhap phan tu cot %d : ",i);
            scanf("%d",&A[i][c]);
        }
      

if(d>=0 &&d<n)
    {
        for(int i=n;i>d;i--){
for(int j=0;j<m;j++){
                A[i][j]=A[i-1][j];}
}
        n++;
        for(int j=0;j<m;j++)
        {
            printf("Nhap phan tu dong : %d ",j);
            scanf("%d",&A[d][j]);
        }
    }
}


//cau 19,20 tinh tong va tich


//Nhap ma tran vuong A cap n
void NhapMaTran(int A[][100], int n)
{
   for(int i = 0; i<n ; i++)
   for(int j = 0; j<n ; j++)
   {
      printf("[%d][%d] =",i,j);
      scanf("%d", &A[i][j]);
   }
}
//Xuat ma tran vuong A cap n
void XuatMaTran(int A[][100], int n)
{
   for(int i = 0; i<n ; i++)
   {
      printf("\n");
      for(int j = 0; j<n ; j++)
         printf("%d\t",A[i][j]);
   }

}
//Tong hai ma tran lu vao C
void Tong(int A[][100], int B[][100], int C[][100], int n){
   for(int i = 0; i<n ; i++)
   for(int j = 0; j<n ; j++)
      C[i][j] = A[i][j]+B[i][j];
}
//Tich hai ma tran luu vao C
void Tich(int A[][100], int B[][100], int C[][100], int n)
{
   for(int i = 0; i<n ; i++)
   for(int k = 0; k<n ; k++)
   {
      C[i][k] = 0;
      for(int j = 0; j<n ; j++)
         C[i][k] = C[i][k] + A[i][j]*B[j][k];
   }
}

//cau 18

void sapxeptangdan(int A[][100],int n, int m)
{
for(int i=0;i<(n*m-1);i++)
{
for(int j=i+1;j<n*m;j++)
{
if(A[i/m][i%m]>A[j/m][j%m])
{
int t=A[i/m][i%m];
A[i/m][i%m]=A[j/m][j%m];
A[j/m][j%m]=t;
}
}
}
}



int main (){
int A[100][100],B[100][100],C[100][100],n,m,chon,c,d,x,d1,d2,c1,c2;
printf("\n1.Nhapmatran");
printf("\n2.Xuatmatran");
printf("\n3.Tinh tong phan tu tren 1 dong");
printf("\n4.Tinh Tong pt tren 1 cot");
printf("\n5.Tinh tong duong cheo chinh");
printf("\n6.Tinh tong duong cheo phu");
printf("\n7.Tinh tong gia tri lon nhat tren moi dong");
printf("\n8.Tinh trung binh min cua cac phan tu nho nhat tren moi cot");
printf("\n9.Tim vi tri phan tu lon nhat");
printf("\n10.Tim vi tri chan cuoi");
printf("\n11.Tim Phan tu am le va lon nhat");
printf("\n12.Tim phan tu chan duong va nho nhat");
printf("\n13.Tim Phan tu lon nhat tren DCC trong mt vuong");
printf("\n14.Tim Vi tri xuat hien dau tien cua x");
printf("\n15.Tim tong gia tri nho nhat thuoc tung DCSS of DCC");
printf("\n16.Hoan vi 2 dong,2cot");
printf("\n17.Xoa dong Xoa cot!");
printf("\n18.Them dong Them cot!");
printf("\n19. Tich hai ma tran va tong hai ma tran");
printf("\n20. Sap xep ma tran");
printf("\n0.Thoat");
do {
printf("\n Chon thao tac:");
scanf("%d",&chon);
switch(chon)
{
case 0: printf("\n Thoat!!!");
break;
case 1: Nhapmatran(A,n,m);
break;
case 2: Xuatmatran(A,n,m);
break;
case 3: printf("\n Nhap so dong can tinh tong :");
scanf("%d",&d);
printf("Tong phan tu trong dong %d= %d",d,Tinhtongdong(A,n,m,d));
break;
case 4: printf("\n Nhap so cot can tinh tong :");
scanf("%d",&c);
printf("Tong phan tu cua cot %d=%d",c,Tinhtongcot(A,n,m,c));
break;
case 5: printf("\n Tong phan tu tren duong cheo chinh: %d ",TinhtongDCC(A,n,m));
break;
case 6: printf("\nTong phan tu tren duong cheo phu: %d ",TinhtongDCP(A,n,m));
break;
case 7: printf ("\n Tong MAX tren moi dong: %d",Tinhtongmax(A,n,m));
break;
case 8: printf ("\n Tong tbMin tren moi cot: %f",Tinhtbmin(A,n,m));
break;
case 9: printf("\n",vitriMax(A,n,m));
break;
case 10: printf("\n",VitriChancuoi(A,n,m));
break;
case 11: printf ("phan tu am le va lon nhat : %d",Amlemax(A,n,m));
break;
case 12: printf (" phan tu chan duong va nho nhat: %d",ChanduongMin(A,n,m));
break;
case 13: printf ("phan tu lon nhat tren duong cheo chinh: %d",Ptmaxdcc(A,n,m));
break;
case 14: printf("\n",Vtdtofxm(A,n,m,x));
break;
case 15: printf("Tong gia tro nho nhat thuoc tung DCSS : %d",TongDCSS(A,n,m));
break;
case 16: printf("Chon dong can thay doi :");
scanf("%d",&d1);
printf("Chon dong hoan vi  :");
scanf("%d",&d2);
printf("chon cot can thay doi :");
scanf("%d",&c1);
printf("chon cot hoan vi :");
scanf("%d",&c2);
printf("Sau khi hoan vi : \n");
Hoanvi(A,n,m,d1,d2,c1,c2);
break;
case 17: printf("Nhap so dong can xoa: ");
scanf("%d",&d);
printf("Nhap so cot can xoa: ");
scanf("%d",&c);
xoacotdong(A,m,n,c,d);
break;
case 18: printf("Nhap so cot can chen: ");
scanf("%d",&c);
printf("Nhap so dong can chen: ");
scanf("%d",&d);
chendongchencot(A,n,m,c,d);
break;
case 19: 
printf("Nhap cap n= ");
    scanf("%d",&n);
    //nhap ma tran A
    printf("Nhap vao ma tran A\n");
    NhapMaTran(A,n);
    //nhap ma tran B
    printf("Nhap vao ma tran B\n");
    NhapMaTran(B,n);
    //In hai ma tran A va B vua nhap
    printf("Ma tran A vua nhap\n");
    XuatMaTran(A,n);
    printf("\nMa tran B vua nhap\n");
    XuatMaTran(B,n);
    //C=A+B
    Tong(A,B,C,n);
    printf("\nTong Hai Ma Tran :\n");
    XuatMaTran(C,n);
    //C=A*B
    printf("\nTich Hai Ma Tran :\n");
    Tich(A,B,C,n);
    XuatMaTran(C,n);
    getch();
    break;
case 20:  
sapxeptangdan(A,n,m);
printf("\nsap xep\n");
Xuatmatran(A,n,m);
defaul:
printf("\n Chon thao tac sai!!!");
}
} while (chon!=0);
}

Share Đáp Án Bài Tập Kỹ Thuật Lập Trình - BT1 Reviewed by CNTT on March 02, 2019 Rating: 5
Bản quyền nội dung by CNTT © 2018 - 2019
Development by CNTT IT
Powered by Blogger.