SLIDE1

Sunday, October 12, 2014

lập trình c: tìm BCNN bội chung nhỏ nhất của 2 số

viết chương trình c tìm BCNN bội chung nhỏ nhất của 2 hai số a và b nguyên dương

#include<stdio.h>
#include<conio.h>
void main()
{
int a, b, i = 2;
do
{
printf("nhap a>0,b>0\n");
scanf_s("%d%d", &a, &b);
} while (a <= 0 || b <= 0);
while (a%b!=0)
{
a = a / (i - 1)*i; i++;
}
printf("BCNN=%d", a);
_getch();
}

Saturday, October 11, 2014

tìm giá trị xuất hiện nhiều nhất trong mảng và số lần xuất hiện

lập trình c tìm phần tử xuất hiện nhiều nhất trong mảng và số lần xuất hiện của phần tử đó

#include<stdio.h>
#include<conio.h>
int a[100];
void main()
{
int i, n,j, max, gt, dem;
printf("nhap so phan tu cua mang:");
scanf_s("%d", &n);
for (i = 0; i < n; i++)
{
printf("a[%d]=", i + 1);
scanf_s("%d", &a[i]);
}
printf("mang da nhap:\n");
for (i = 0; i < n; i++) printf(" %d ", a[i]);
max = 1;
for (i = 0; i < n; i++)
{
dem = 0;
for (j = 0; j < n; j++)
{
if (a[i] == a[j]) dem++;
}
if (max < dem)
{
max = dem;
gt = a[i];
}
}
printf("\nphan tu xuat hien nhieu nhat la: %d\n voi so lan xuat hien la: %d", gt, max);
_getch();
}

lập trình c tìm phần tử lớn thứ k trong mảng

viết chương trình c tìm phần tử lớn thứ k trong mảng

#include<stdio.h>
#include<conio.h>
int a[100];
void main()
{
int i, n, j,k,b,d;
printf("nhap so phan tu cua mang:");
scanf_s("%d", &n);
for (i = 0; i < n; i++)
{
printf("a[%d]=", i + 1);
scanf_s("%d", &a[i]);
}
printf("mang da nhap:\n");
for (i = 0; i < n; i++) printf(" %d ", a[i]);
for (i = 0; i < n-1;i++)
for (j = i + 1; j < n;j++)
if (a[i] < a[j])
{
k = a[i];
a[i] = a[j];
a[j] = k;
}
for (i = 1; i < n; i++)
{
for (j = 0; j < i; j++)
{
if (a[i] == a[j])
{
for (d = i; d < n; d++) a[d] = a[d + 1];
n--;
i--;
}
}
}
do 
{
printf("\ngia tri lon thu k trong mang: k= ");
scanf_s("%d", &b);
if (b>n)printf("khong co phan tu lon thu %d\n nhap so khac!", b);
} while (b > n);
printf("gia tri do la: %d", a[b - 1]);
_getch();
}

lập trình c hiển thị các dãy con tăng trong mảng 1 một chiều

viết chương trình c hiển thị các dãy con tăng trong mảng 1 một chiều. ví dụ 1,2,3,1,3,2,4,5  thì in ra các dãy con tăng là 1,2,3 và 1,3 và 2,4,5

#include<stdio.h>
#include<conio.h>
int a[100];
void main()
{
int i, n, dem;
printf("nhap so phan tu cua mang:");
scanf_s("%d", &n);
for (i = 0; i < n; i++)
{
printf("a[%d]=", i + 1);
scanf_s("%d", &a[i]);
}
printf("mang da nhap:\n");
for (i = 0; i < n; i++) printf(" %d ", a[i]);
printf("\ncac day con tang la:\n");
for (i = 0; i < n; i++)
{
dem = 0;
while (a[i] < a[i + 1])
{
if (dem == 0) printf(" %d  %d ", a[i], a[i + 1]);
else printf(" %d ", a[i + 1]);
i++; dem++;
}
printf("\n");
}
_getch();

}

lập trình c: xóa phần tử trùng nhau trong mảng

viết chương trình c xóa bớt các phần tử giống nhau trong mảng sao cho mảng chỉ gồm các phần tử phân biệt

#include<stdio.h>
#include<conio.h>
int a[100];
void main()
{
int i, j, n, k, dem = 0;
printf("nhap so phan tu cua mang:");
scanf_s("%d", &n);
for (i = 0; i < n; i++)
{
printf("a[%d]=", i + 1);
scanf_s("%d", &a[i]);
}
printf("mang da nhap:\n");
for (i = 0; i < n; i++) printf(" %d ", a[i]);
for (i = 1; i < n; i++)
for (j = 0; j < i; j++)
{
if (a[i] == a[j])
{
for (k = i; k < n; k++) a[k] = a[k + 1];
n--;
i--;
}
}
printf("\nmang sau khi xoa la:\n");
for (i = 0; i < n; i++) printf(" %d ", a[i]);
_getch();
}

Friday, October 10, 2014

lập trình c đếm số phần tử phân biệt của mảng bất kì

viết chương trình nhập vào 1 mảng bất kì và dếm xem có bao nhiêu phần tử phân biệt.

#include<stdio.h>
#include<conio.h>
int a[100];
void main()
{
int i, dem, n,j,k=1;
printf("nhap so phan tu cua mang:");
scanf_s("%d", &n);
for (i = 0; i < n; i++)
{
printf("a[%d]=",i + 1);
scanf_s("%d", &a[i]);
}
printf("mang da nhap la:\n");
for (i = 0; i < n; i++) printf(" %d ", a[i]);
for (i = 1; i < n; i++)
{
dem = 0;
for (j = 0; j < i; j++) if (a[j] == a[i]) dem = 1;
if (dem == 0) k++;
}
printf("\nco %d phan tu phan biet\n", k);
_getch();
}

x

lập trình c tìm trong mảng có bao nhiêu phần tử có giá trị bằng k

viết chương trình c về mảng 1 chiều: đếm xem có bao nhiêu phần tử có giá trị bằng k và chỉ ra các phần tử đó

#include<stdio.h>
#include<conio.h>
int a[100];
void main()
{
int i, k, n, dem=0;
printf("nhap so phan tu cua mang: ");
scanf_s("%d", &n);
for (i = 0; i < n; i++)
{
printf("a[%d]=", i + 1);
scanf_s("%d", &a[i]);
}
printf("mang da nhap la:\n");
for (i = 0; i < n; i++) printf(" %d ",a[i]);
printf("\nnhap so k muon kiem tra: ");
scanf_s("%d", &k);
for (i = 0; i < n; i++) if (k == a[i]) dem++;
if (dem == 0) printf("khong co phan tu nao co gia tri = %d", k);
else
{
printf("co %d phan tu co gia tri = %d\n cac phan tu do la:\n", dem, k);
for (i = 0; i < n; i++) if (a[i] == k) printf(" a[%d] ", i + 1);
}
_getch();
}

sắp xếp mảng a cho trước sao cho các phần tử lớn nhất ở đầu mảng, các phần tử bé nhất ở cuối mảng, các phần tử còn lại sắp xếp tăng dần

sắp xếp mảng a cho trước sao cho các phần tử lớn nhất ở đầu mảng, các phần tử bé nhất ở cuối mảng, các phần tử còn lại sắp xếp tăng dần

#include<stdio.h>
#include<conio.h>
int a[100];
void main()
{
int demmin = 0, n, i, k, max, min, demmax = 0, j;
printf("nhap so phan tu cua mang: ");
scanf_s("%d", &n);
for (i = 0; i < n; i++)
{
printf("a[%d]=", i + 1);
scanf_s("%d", &a[i]);
}
printf("mang da nhap:\n");
for (i = 0; i < n; i++) printf(" %d ", a[i]);
max = a[0]; min = a[0];
for (i = 0; i < n; i++) if (max < a[i]) max = a[i];
for (i = 0; i < n; i++) if (max == a[i]) demmax++;
for (i = 0; i < n; i++) if (min > a[i]) min = a[i];
for (i = 0; i < n; i++) if (min == a[i]) demmin++;
for (i = 0; i < demmax; i++)
{
for (j = demmax; j < n; j++)
{
if (a[j] == max)
{
k = a[i];
a[i] = a[j];
a[j] = k;
}
}
}
for (i = n - 1 - demmin; i < n; i++)
{
for (j = demmax; j < n - demmin; j++)
{
if (a[j] == min)
{
k = a[i];
a[i] = a[j];
a[j] = k;
}
}
}
for (i = demmax; i < n - demmin-1;i++)
for (j = i + 1; j < n - demmin;j++)
if (a[i]>a[j])
{
k = a[i];
a[i] = a[j];
a[j] = k;
}

printf("\nmang sau khi sap xep:\n");
for (i = 0; i < n; i++) printf(" %d ", a[i]);
_getch();
}

Friday, October 3, 2014

lập trình c, chèn thêm phần tử x vào vị trí k trong mảng

viết chương trình c chèn thêm 1 phần tử có giá trị x vào vị trí thứ k trong mảng 1 chiều

#include<stdio.h>
#include<conio.h>
int a[100], b[100];
void main()
{
int i,j, n,k,x;
printf("nhap so phan tu cua mang: ");
scanf_s("%d", &n);
for (i = 0; i < n; i++)
{
printf("A[%d]=", i + 1);
scanf_s("%d", &a[i]);
}
printf("mang da nhap la: \n");
for (i=0;i<n;i++) printf(" %d ", a[i]);
printf("\nnhap vi tri muon chen k=");
scanf_s("%d", &k);
printf("gia tri cua phan tu, x=");
scanf_s("%d", &x);
for (i = 0; i < k-1; i++) b[i] = a[i];
b[k-1] = x;
for (j = i; j < n; j++)
{
k++;
b[k-1] = a[j];
}
for (i = 0; i < n + 1; i++)a[i] = b[i];
printf("mang sau khi chen them la:\n");
for (i = 0; i < n + 1; i++) printf(" %d ", a[i]);
_getch();
}

lập trình c xóa k phần tử liên tục trên mảng bắt đầu từ vị trí x cho trước

viết chương trình c xóa k phần tử liên tục trên mảng bắt đầu từ vị trí x cho trước

#include<stdio.h>
#include<conio.h>
int a[100], b[100];
void main()
{
int i, j, n, k, x,m=0;
printf("nhap so phan tu cua mang: ");
scanf_s("%d", &n);
for (i = 0; i < n; i++)
{
printf("A[%d]= ", i + 1);
scanf_s("%d", &a[i]);
}
printf("mang da nhap la: \n");
for (i = 0; i < n; i++) printf(" %d ", a[i]);
do
{
printf("\nxoa may phan tu? k=");
scanf_s("%d", &k);
printf("bat dau tu vi tri nao? x=");
scanf_s("%d", &x);
} while (n - x < k-1);
for (i = 0; i < x-1; i++)
{
b[m] = a[i];
m++;
}
for (j = x + k-1; j < n; j++)
{
b[m] = a[j];
m++;
}
for (i = 0; i < m; i++)a[i] = b[i];
printf("mang sau khi da xoa la:\n");
for (i = 0; i < m; i++) printf(" %d ", a[i]);
_getch();

}

x

lập trình c xóa tất cả các số nguyên tố có trong mảng

viết chương trình c xóa tất cả các số nguyên tố có trong mảng

#include<stdio.h>
#include<conio.h>
int a[100], b[100];
void main()
{
int i, n, k = 0, j,dem;
printf("nhap so phan tu cua mang: ");
scanf_s("%d", &n);
for (i = 0; i < n; i++)
{
printf("nhap phan tu thu %d: ", i + 1);
scanf_s("%d", &a[i]);
}
printf("mang dda nhap la:\n");
for (i = 0; i < n; i++) printf(" %d ", a[i]);
for (i = 0; i < n; i++)
{
if (a[i] < 2)
{
b[k] = a[i]; k++;
continue;
}
dem = 0;
for (j = 2; j < a[i]; j++) if (a[i] % j == 0) dem = 1;
if (dem == 1)
{
b[k] = a[i];
k++;
}
}
for (i = 0; i < k; i++) a[i] = b[i];
printf("\nmang sau khi da xoa di cac so nguyen to la:\n");
for (i = 0; i < k; i++) printf(" %d ", a[i]);
_getch();
}

lập trình c xóa tất cả các phần tử là số chẵn trong mảng

viết chương trình c nhập vào 1 mảng bất kì và tiến hành xóa tất cả các phần tử là số chẵn có trong mảng, in ra màn hình mảng sau khi đã xóa .

#include<stdio.h>
#include<conio.h>
int a[100], b[100];
void main()
{
int i, n, k=0;
printf("nhap so phan tu cua mang: ");
scanf_s("%d", &n);
for (i = 0; i < n; i++)
{
printf("a[%d]= ", i + 1);
scanf_s("%d", &a[i]);
}
printf("mang da nhap la: \n");
for (i = 0; i < n; i++) printf(" %d ", a[i]);
for (i = 0; i < n;i++)
if (a[i] % 2 != 0)
{
b[k] = a[i];
k++;
}
for (i = 0; i < k; i++) a[i] = b[i];
printf("\nmang sau khi xoa cac so chan la: \n");
for (i = 0; i < k; i++) printf(" %d ", a[i]);
_getch();
}

lập trình c xóa phần tử thứ k trong mảng 1 chiều

viết chương trình c xóa phần tử thứ k trong mảng và in ra màn hình mảng sau khi đã xóa đi phần tử đó

#include<stdio.h>
#include<conio.h>
int a[100];
int b[100];
void main()
{
int i, n,k,m=0;
printf("nhap so phan tu cua mang: ");
scanf_s("%d", &n);
for (i = 0; i < n; i++)
{
printf("nhap phan tu thu %d: ",i+1);
scanf_s("%d", &a[i]);
}
printf("mang ban vua nhap la:\n");
for (i = 0; i < n; i++) printf(" %d ", a[i]);
printf("\n ban muon xoa phan tu thu may trong mang: k= ");
scanf_s("%d", &k);
for (i = 0; i < n; i++)
if (i != k - 1)
{
b[m] = a[i];
m++;
}
for (i = 0; i < m; i++)a[i] = b[i];
printf("mang sau khi da xoa phan tu thu %d la: \n", k);
for (i = 0; i < n - 1; i++) printf(" %d ", a[i]);
_getch();
}

lập trình c sắp xếp mảng sao cho chẵn dồn về trước, lẻ dồn về sau

sắp xếp mảng sao cho tất cả các số chẵn dồn về trước, các số lẻ dồn về sau mảng và in ra màn hình mảng đã sắp xếp

#include<stdio.h>
#include<conio.h>
int a[100], c[100], l[100];
void main()
{
int i, j, n, m=0, k=0;
printf("nhap so phan tu cua mang: ");
scanf_s("%d", &n);
for (i = 0; i < n; i++)
{
printf("nhap phan tu thu %d: ", i + 1);
scanf_s("%d", &a[i]);
}
for (i = 0; i < n;i++)
if (a[i] % 2 == 0)
{
c[k] = a[i];
k++;
}
else
{
l[m] = a[i];
m++;
}
for (j = 0; j < k; j++)a[j] = c[j];
m = 0;
for (j = k; j < n; j++)
{
a[j] = l[m];
m++;
}
printf("mang sau khi da sap xep la: \n");
for (i = 0; i < n; i++) printf(" %d ", a[i]);
_getch();
}

Thursday, October 2, 2014

lập trình c sắp xếp mảng tăng dần

viết chương trình c nhập vào 1 mảng bất kì và sắp xếp mảng theo thứ tự tăng dần rồi in ra màn hình mảng đã sắp xếp

#include<stdio.h>
#include<conio.h>
int a[100];
void main()
{
int i, j, n,k;
printf("nhap so phan tu cua mang: ");
scanf_s("%d", &n);
for (i = 0; i < n; i++)
{
printf("nhap phan tu thu %d: ", i + 1);
scanf_s("%d", &a[i]);
}
for (i = 0; i < n-1;i++)
for (j = i+1; j < n;j++)
if (a[i]>a[j])
{
k = a[i];
a[i] = a[j];
a[j] = k;
}
printf("mang sau khi da sap xep la:\n");
for (i = 0; i < n; i++) printf(" %d ", a[i]);
_getch();
}

lập trình c (mảng 1 chiều) tìm tổng lớn nhất của k phần tử liên tếp

viết chương trình c : mảng 1 chiều, tìm tổng lớn nhất của k (cho trước) phần tử liên tiếp trên mảng

#include<stdio.h>
#include<conio.h>
int a[100];
int b[100];
void main()
{
int k,i,n,j;
printf("nhap so tu cua mang: ");
scanf_s("%d", &n);
for (i = 0; i < n; i++)
{
printf("nhap phan tu thu %d: ", i + 1);
scanf_s("%d", &a[i]);
}
printf("tong cua k phan tu lien tiep, nhap k= ");
scanf_s("%d", &k);
for (i = 0; i <= n-k; i++)
for (j = 0; j < k; j++)
b[i] += a[i + j];
int max = b[0];
for (i = 1; i <= n - k;i++)
if (max < b[i])max = b[i];
printf("tong lon nhat cua %d phan tu lien tiep la: %d", k, max);
_getch();

}

x

lập trình c in ra các phần tử không thuộc mảng và nhỏ hơn max của mảng

viết chương trình c tìm phần tử lớn nhất của mảng và in ra màn hình các số nguyên dương không thuộc mảng và nhỏ hơn "max" của mảng

#include<stdio.h>
#include<conio.h>
int a[100];
void main()
{
int i, n, j;
printf("nhap so phan tu cua mang: ");
scanf_s("%d", &n);
for (i = 0; i < n; i++)
{
printf("nhap phan tu thu %d: ", i + 1);
scanf_s("%d", &a[i]);
}
printf("cac so nguyen duong khong thuoc mang va nho hon max cua mang la:\n");
int max = a[0];
for (i = 0; i < n; i++) if (max < a[i])max = a[i];
for (i = 1; i < max; i++)
{
int dem = 0;
for (j = 0; j < n; j++)
{
if (i == a[j]) dem++;
}
if (dem == 0) printf("  %d  ", i);
}
_getch();
}

lập trình c tìm min max số nguyên tố có trong mảng

viết chương trình c tìm số nguyên tố lớn nhất và nhỏ nhất có trong mảng 1 chiều, nếu không có số nguyên tố trong mảng thì thông báo ra màn hình.

#include<stdio.h>
#include<conio.h>
int a[100];
int b[100];
void main()
{
int i, n, j, dem, k = 0;
printf("nhp so phan tu cua mang: ");
scanf_s("%d", &n);
for (i = 0; i < n; i++)
{
printf("nhap phan tu thu %d: ", i + 1);
scanf_s("%d", &a[i]);
}
for (i = 0; i < n; i++)
{
dem = 0;
if (a[i] == 2)
{
b[k] = a[i];
k++;
}
if (a[i]>2)
{
for (j = 2; j < a[i]; j++)
{
if (a[i] % j == 0) dem++;
}
if (dem == 0)
{
b[k] = a[i];
k++;
}
}
}
int min = b[0], max = b[0];
for (i = 0; i < k; i++)
{
if (min>b[i]) min = b[i];
if (max < b[i]) max = b[i];
}
printf("so nguyen to nho nhat co trong mang la: %d\n", min);
printf("so nguyen to lon nhat co trong mang la: %d\n", max);
_getch();
}


lập trình c tìm phần tử nhỏ nhất và phần tử lớn nhất có trong mảng

viết chương trình c tìm phần tử nhỏ nhất "min" và phần tử lớn nhất có trong mảng "max", in ra màn hình các giá trị đó

#include<stdio.h>
#include<conio.h>
int a[100];
void main()
{
int i, n, max, min;
printf("nhap so phan tu cua mang: ");
scanf_s("%d", &n);
for (i = 0; i < n; i++)
{
printf("nhap phan tu thu %d: ", i + 1);
scanf_s("%d", &a[i]);
}
max = a[0]; min = a[0];
for (i = 1; i < n; i++)
{
if (min > a[i])min = a[i];
if (max < a[i])max = a[i];
}
printf("phan tu nho nhat la: %d\n", min);
printf("phan tu lon nhat la: %d\n", max);
_getch();
}

lập trình c kiểm tra mang sắp xếp chưa

viết chương trình c kiểm tra mảng nhập vào đã được sắp xếp tăng dần hay chưa, in thông báo ra màn hình

#include<stdio.h>
#include<conio.h>
int a[100];
void main()
{
int i, n,k=0;
printf("nhap so phan tu cua mang: ");
scanf_s("%d", &n);
for (i = 0; i < n; i++)
{
printf("nhap phan tu thu %d: ",i+1);
scanf_s("%d", &a[i]);
}
for (i = 0; i < n - 1; i++) if (a[i]>a[i + 1]) k++;
if (k == 0) printf("mang da duoc sap xep tang dan");
else printf("mang chua duoc sap xep tang dan");
_getch();
}

lập trình c kiểm tra tính đối xứng của mảng

viết chương trình c nhập vào mảng 1 chiều và kiểm tra xem mảng vừa nhập có đối xứng không, kiểm tra tính đối xứng của mảng

#include<stdio.h>
#include<conio.h>
int a[100];
void main()
{
int i, n,k=0;
printf("nhap so phan tu cua mang: ");
scanf_s("%d", &n);
for (i = 0; i < n; i++)
{
printf("nhap phan tu thu %d: ", i + 1);
scanf_s("%d", &a[i]);
}
for (i = 0; i < n / 2;i++) if (a[i] != a[n -1 - i]) k++;
if (k == 0) printf("mang doi xung");
else printf("mang khong doi xung");
_getch();
}

lập trình c kiểm tra mảng gồm số chẵn,số lẻ hay cả hai

viết chương trình c kiểm tra mảng 1 chiều gồm toàn số lẻ, hay toàn số chẵn hay cả số chẵn và số lẻ

#include<stdio.h>
#include<conio.h>
int a[100];
void main()
{
int i, n, c=0, l=0;
printf("nhap so phan tu cua mang: ");
scanf_s("%d", &n);
for (i = 0; i < n; i++)
{
printf("nhap phan tu thu %d: ", i + 1);
scanf_s("%d", &a[i]);
if (a[i] % 2 == 0) c++;
else l++;
}
if (l == 0) printf("mang gom toan so chan");
if (c == 0) printf("mang gom toan so le");
if (c != 0 && l != 0) printf("mang gom ca so le va so chan");
_getch();
}

lập trình c:kiểm tra mảng có phải toàn số chẵn không

viết chương trình c nhập vào mảng 1 chiều và kiểm tra xem mảng có phải chứa toàn số chẵn không

#include<stdio.h>
#include<conio.h>
int a[100];
void main()
{
int i, dem=0,n;
printf("nhap so phan tu cua mang: ");
scanf_s("%d", &n);
for (i = 0; i < n; i++)
{
printf("nhap phan tu thu %d: ", i + 1);
scanf_s("%d", &a[i]);
if (a[i] % 2 != 0) dem++;
}
if (dem == 0)printf("mang toan so chan");
else printf("mang khong phai toan so chan");
_getch();
}

lập trình c: kiểm tra số k có thuộc mảng hay không

viết chương trình c kiểm tra số nguyên k cho trước có thuộc mảng hay không

/*cho trước mảng a gồm 10 phần tử và kiểm tra số k ta  nhập từ bàn phím có thuộc mảng không*/
#include<stdio.h>
#include<conio.h>
int a[10] = { 1, 2, 3, 4, 5, 6, 7, 8, 9, 0 };
void main()
{
int dem = 0, k;
printf("nhap so k: ");
scanf_s("%d", &k);
for (int i = 0; i < 10; i++)if (k == a[i])
{
printf("k thuoc mang");
dem++;
}
if (dem == 0)printf("k khong thoc mang");
_getch();
}

lập trình c: tính trung bình cộng các phân tử chẵn có trong mảng

viết chương trình c nhập vào mảng 1 chiều và tính trung bình cộng các phần tử chẵn có trong mảng

#include<stdio.h>
#include<conio.h>
int a[100];
void main()
{
int i, dem=0, n, s=0;
printf("nhap so phan tu cua mang: ");
scanf_s("%d", &n);
for (i = 0; i < n; i++)
{
printf("nhap phan tu thu %d: ", i + 1);
scanf_s("%d", &a[i]);
if (a[i] % 2 == 0)
{
s += a[i];
dem++;
}
}
printf("trung binh cong cac so chan co trong mang la: %.2f", (float)s / dem);
_getch();
}