/*auto readmore*/ /*auto readmore*/ /* an hien script*/ // an hien password /*an hien ma chuong trinh cong tru */ /*Scrollbox thanh cuon*/ /***Nhung CODE***/ /* dòng xanh dòng trắng */ /* https://cdnjs.com/libraries/prism lay thu vien, can vao ten file ma goi 1. copy link vao vi du:prism-python.min.js 2. ten ngon nua la python */ /*=== New posts ===*/ /*header slider*/ /*=== bai viet lien quan===*/ /*===tabcode===*/

Hướng Dẫn Enable POP Gmail & Cấu Hình/Sử Dụng SMTP Client Gửi Mail

YÊU CẦU
  1. Bật/Enable POP Server
  2. Bật chế độ xác thực 2 lớp
  3. Tạo mật khẩu ứng dụng
  4. Cấu hình trên Ms Outlook
  5. Cấu hình trên SQL Server 
  6. Gửi email bằng python

THỰC HIỆN

1. Enable POP Server

Đăng nhập Gmail > Settings > See All Settings > Forwarding and POP/IMAP > chọn Enable POP for all maill > Save changes



2. Bật chế độ xác thực 2 lớp

Chọn Manage your Google Acount > Security > 2-Step Verification > Get Started > Continue



Nhập số điện thoại càn nhận mã xác minh (7) > Send > nhập mã xác minh (9) nhận từ số điện thoại ở bước 7 > Next > nhấn Turn On



3. Tạo mật khẩu ứng dụng
Chọn App passwords > Other (Custom name) > điền vào tên cần đặt > Generate (để tạo password) > Done



Sau khi hoàn thành bước này chúng ta có thể sử dụng thông tin SMTP như bên dưới:
Incoming mail server: pop.gmail.com
Outgoing mail server (SMTP): smtp.gmail.com
Incoming server (POP3): 995; SSL
Outgoing server (SMTP): 587; TLS
Hoặc Outgoing server (SMTP): 465; SSL

4. Cấu hình trên Ms Outlook





5. Cấu hình trên SQL Server


6. Gửi email bằng python 
Tham khảo tại đây

Xong!

[Database-Tự Học Quản Trị SQL Server] SOA101 - Hướng Dẫn Cài Đặt SQL Server

NỘI DUNG
  • Download SQL Server 2019 Developer
  • Cài đặt SQL Server Developer
  • Download & cài đặt Microsoft SQL Server Management Studio – SSMS
  • Khởi động SQL Server và thực hiện query


THỰC HIỆN

Bài 1: Chuẩn bị và cài đặt

1.      Chuẩn Bị

Download SQL Server phiên bản mới nhất từ trang chủ Microsoft https://www.microsoft.com/en-us/sql-server/sql-server-downloads

Chọn phiên bản cài đặt là Deverloperdownload.


sau khi download xong tiến hành cài đặt (file có dạng SQL2019-SSEI-Dev.exe)

hoặc



2. Cài đặt SQL Server Developer
a. Download source SQL Server Developer
Chọn cài đặt là Download Media (cho phép download trước sau đó cài đặt)

Chọn ISO > nơi lưu file source > download


b. Mount file ISO (đã tải xong)
Chọn file SQLServer2019-x64-ENU-Dev.ISO vừa download > chọn Mount để mount file ISO lên máy tính

c.Thực hiện cài đặt SQL Server Developer
Máy tính sẽ xuất hiện đĩa ảo (trong trường hợp này là đĩa E:) là source cài đặt > Setup.exe



Chọn Installation > New SQL Server stand-alone installation (cài đặt theo kiểu wizard)

Chọn phiên bản
Chọn phiên bản muốn cài đặt (trong trường hợp này chọn Developer) > Next



Chọn “I accept the license terms” > Next


Bỏ chọn “Use Microsoft Update to check for updates (recommended)” nếu không muốn kiểm tra update từ trang chủ > Next



Kiểm tra các yêu cầu trước khi cài đặt, nếu không có lỗi thì bấm Next



Chọn các tính năng muốn cài đặt, trong trường hợp này chọn “Database Engine Services” > Next



Điền Instance ID
Điền Instance ID (trường hợp này điền MSSQLSERVER) > Next


Để mặc định > Next


Chọn Mode và đặt password cho user sa
Chọn Mixed Mode và điền password của user sa (sa: System Administrator) > nhấn Add Current User (thêm user có quyền quản trị SQL server) > Next


Nhấn Install để tiến hành cài đặt



Cài đặt SQL Server Developer thành công > nhấn Close



3. Cài đặt Microsoft SQL Server Management Studio – SSMS
download thành công file có dạng SSMS-Setup-ENU.exe, chạy file nhấn Install để tiến hành cài đặt


Đang cài đặt SSMS đợi ít phút


Cài đặt hoàn thành (Có một số trường hợp chương trình yêu cầu khởi động lại hệ điều hành thì chúng ta nhấn > Restart, nếu không chúng ta nhấn Close)


Bài 2:

a.  Khởi động SQL Server và thực hiện query


b. Dùng SSMS để kết nối đến SQL Server

Sử dụng SQL Server login ID


hoặc Sử dụng Windows login ID

c. Tạo mới Query và thực thi lệnh T-SQL

(1) select @@version là câu lệnh kiểm tra phiên bản hiện tại của SQL Server
(2) Thực thi câu query


Kiểm tra version bằng giao diện đồ họa (GUI)




Xong!

[Tự Học Lập Trình C - Qua Các Bài Tập] COM108_Nhập Môn Lập Trình - Bài 4 - WHILE DO-WHILE - P2 - Ôn Tập

YÊU CẦU


Bài 1:
Viết chương trình nhập vào số lẻ, nếu nhập vào số chẵn thì yêu cầu nhập lại

Bài 2:
Viết chương trình nhập vào số trong khoảng 1 - 5, nếu sai yêu cầu nhập lại

Bài 3:
Viết chương trình nhập vào số nguyên và xuất số đó ra màn hình, tinh tổng các số chẵn vừa nhập, cho đến khi người dùng nhập số 0, xuất tổng ra màn hình.

Bài 4:
Sử dụng switch case kết hợp do while viết chương trình lựa chọn menu:
- 0. Kết thúc chương trình
- 1. Phần quà thứ nhất
- 2. Phần quà thứ nhì
- 3. Phần quà thứ ba
Nếu người dùng nhập vào số:
- 0: Kết thúc chương trình
- 1: Phần thưởng của bạn là $500
- 2: Phần thưởng của bạn là $1000
- 3: Chúc bạn may mắn lần sau

Nếu nhập số không phải là 0 hoặc 1 hoặc 2, hoặc 3 thì yêu cầu nhập lại.


THỰC HIỆN:
Viết chương trình nhập vào số lẻ, nếu nhập vào số chẵn thì yêu cầu nhập lại
#include<stdio.h>
 
int main() {   
	int n; 
	do {
	  	printf("\nNhap vao SO LE n: "); 
		scanf("%d", &n);
	}while (n % 2 == 0); // Nếu nhập vào số chẵn thì yêu câu nhập lại
}
Viết chương trình nhập vào số trong khoảng 1 - 5, nếu sai yêu cầu nhập lại
#include<stdio.h>
 
int main() {   
	int n; 
	do {
	  	printf("\nNhap vao so 1 - 5: "); 
		scanf("%d", &n);
        if (n < 1 || n > 5) 
			printf ("\nNhap lai!");
	}while (n < 1 || n > 5); // nếu < 1 hoặc lớn hơn 5 thì nhập lại
}
Viết chương trình nhập vào số nguyên và xuất số đó ra màn hình, tinh tổng các số chẵn vừa nhập, cho đến khi người dùng nhập số 0, xuất tổng ra màn hình.
#include<stdio.h>
 
int main() {   
	int n; 
	int tong = 0;
	do {
	  	printf("\nNhap vao so tu nhien: "); 
		scanf("%d", &n);
		printf ("%d ", n);
		if (n % 2 == 0)
			tong += n;
	}while (n != 0); 
	
	printf ("\nTong cac SO CHAN vua nhap la: %d", tong);
}
Sử dụng switch case kết hợp do while viết chương trình lựa chọn menu:
- 0. Kết thúc chương trình
- 1. Phần quà thứ nhất
- 2. Phần quà thứ nhì
- 3. Phần quà thứ ba
Nếu người dùng nhập vào số:
- 0: Kết thúc chương trình
- 1: Phần thưởng của bạn là $500
- 2: Phần thưởng của bạn là $1000
- 3: Chúc bạn may mắn lần sau

Nếu nhập số không phải là 0 hoặc 1 hoặc 2, hoặc 3 thì yêu cầu nhập lại.
#include<stdio.h>
 
int main() {   
	int luaChon; 

	do {
	  	printf("\n======Menu======"); 
	  	printf("\n0. Ket thuc chuong trinh"); 
	  	printf("\n1. Phan qua thu NHAT"); 
	  	printf("\n2. Phan qua thu NHI"); 
	  	printf("\n3. Phan qua thu BA");
		printf("\nLua chon cua ban: ");
		scanf("%d", &luaChon);
		switch (luaChon){
			case 0:
				break;
			case 1:
				printf("\nPhan thuong cua ban la $500");
				break;
			case 2:
				printf("\nPhan thuong cua ban la $1000");
				break;
			case 3:
				printf("\nChuc ban may man lan sau!");
				break;
			default:
				printf("\nNhap vao cac so [0-3]");
		}	
	}while (luaChon < 0 || luaChon > 3); 
}

Xong!








[Tự Học Lập Trình C - Qua Các Bài Tập] COM108_Nhập Môn Lập Trình - Bài 3 - IF-ELSE SWITCH-CASE - P2 - Ôn Tập

YÊU CẦU:


Switch-Case căn bản

Bài 1:
Viết chương trình nhập đọc số Interger từ bàn phím, nếu số nhập vào:
  • số 2: thì in ra Thứ hai
  • số 3:               Thứ ba
  • số 4:               Thứ tư
  • số 5:               Thứ năm
  • số 6:               Thứ sáu
  • số 7:               Thứ 7
  • số 8:               Chủ nhật
  • số 1:               Chủ nhật
  • Không phải các số trên: không hợp lệ
Bài 2:
Viết một chương trình nhập 1 tháng trong năm. Hãy cho biết tháng đó là quý mấy của năm. Biết:
  • Tháng 1, 2, 3 quý I.
  • Tháng 4, 5, 6 quý II.
  • Tháng 7, 9, 10 quý III.
  • Tháng 10, 11, 12 quý IV
  • Các trường hợp còn lại: Thông báo tháng không hợp lệ
Ví dụ:
Input: Tháng = 4
Output: "Quý II"


Bài 3:
Viết chương nhập ký tự từ bàn phím. Hãy cho biết ký tự nhập vào có phải là nguyên âm hay không. Biết rằng nguyên âm là: u, e, o, a, i, U, E, O, A, I.

THỰC HIỆN:

Switch-Case căn bản
Viết chương trình nhập đọc số Interger từ bàn phím, nếu số nhập vào:
  • số 2: thì in ra Thứ hai
  • số 3:               Thứ ba
  • số 4:               Thứ tư
  • số 5:               Thứ năm
  • số 6:               Thứ sáu
  • số 7:               Thứ 7
  • số 8:               Chủ nhật
  • số 1:               Chủ nhật
  • Không phải các số trên: không hợp lệ
#include<stdio.h>

int main(){
	int n; 
	printf("\nNhap vao so nguyen duong n: "); scanf("%d", &n);
	switch (n){
		case 2: 
			printf ("\nThu hai"); 
			break;
		case 3: 
			printf ("\nThu ba"); 
			break;
		case 4: 
			printf ("\nThu tu"); 
			break;
		case 5: 
			printf ("\nThu nam"); 
			break;
		case 6: 
			printf ("\nThu sau"); 
			break;
		case 7: 
			printf ("\nThu bay"); 
			break;
		case 1: // không làm gì cả, chương trình tiếp tục thực hiện dòng lệnh bên dưới
		case 8: 
			printf ("\nCHU NHAT"); 
			break;
		
		default: 
			printf ("\nKHONG HOP LE!"); 
			break;
	}	
}
Viết một chương trình nhập 1 tháng trong năm. Hãy cho biết tháng đó là quý mấy của năm. Biết:
  • Tháng 1, 2, 3 quý I.
  • Tháng 4, 5, 6 quý II.
  • Tháng 7, 9, 10 quý III.
  • Tháng 10, 11, 12 quý IV
  • Các trường hợp còn lại: Thông báo tháng không hợp lệ
#include<stdio.h>

int main(){
	int n; 
	printf("\nNhap vao so nguyen duong n (n la so thang): "); scanf("%d", &n);
	switch (n){
		case 1: 
		case 2: 
		case 3: 
			printf ("\nQui I"); 
			break;
		case 4: 
		case 5: 
		case 6: 
			printf ("\nQui II"); 
			break;
		case 7: 
		case 8: 
		case 9: 
			printf ("\nQui III"); 
			break;
		case 10: 
		case 11: 
		case 12: 
			printf ("\nQui IV"); 
			break;
		default: 
			printf ("\nKHONG HOP LE!"); 
			break;
	}	
}
Viết chương nhập ký tự từ bàn phím. Hãy cho biết ký tự nhập vào có phải là nguyên âm hay không. Biết rằng nguyên âm là: u, e, o, a, i, U, E, O, A, I.
#include<stdio.h>

int main(){
	char kyTu; 
	printf("\nNhap vao mot ky tu: "); scanf("%c", &kyTu);
	switch (kyTu){
		case 'u':
		case 'U':
		case 'e':
		case 'E':
		case 'o':
		case 'O':
		case 'a':
		case 'A':
		case 'i':
		case 'I':								
			printf ("\n'%c' la NGUYEN AM!", kyTu); 
			break;
		default: 
			printf ("\nKHONG PHAI nguyen am!"); 
			break;
	}	
}



Xong!

[Tự Học Lập Trình C - Qua Các Bài Tập] COM108_Nhập Môn Lập Trình - Bài 7 - Chuỗi (String) Trong C - P2 - Ôn Tập

NỘI DUNG:
Ôn tập các kiến thức liên quan đến xử lý chuỗi trong C

YÊU CẦU:


Bài 1:
Viết chương trình dạng hàm với các yêu cầu:
Input: Nhập vào chuỗi bất kỳ từ bàn phím
Output:
71.1 Đếm các ký tự là các chữ cái a-z, A-Z trong chuỗi vừa nhập

71.2 Đếm các ký tự số 0-9 trong chuỗi vừa nhập

71.3 Đếm có bao nhiêu ký tự 'h' trong chuỗi (không phân biệt hoa thường)

71.4 Tìm ký tự 'a' trong chuỗi, nếu có trả về trị trí ký đầu tiên tìm thấy

Bài 2:
Xây dựng chương trình đăng nhập bằng username và password 
Input: Nhập username và password (gợi ý: tạo chuỗi userSys và passSys để so sánh chuỗi vừa nhập)
Output:
72.1 Hiển thị thông báo đăng nhập thành công nếu thông tin đăng nhập đúng ngược yêu cầu nhập lại cho đến khi đúng

72.2 
- Hiển thị thông báo đăng nhập thành công nếu thông tin đăng nhập đúng
- Ngược lại thông báo đăng nhập KHÔNG thành công nếu như nhập sai 3 lần.

THỰC HIỆN:

Bài 1:
Viết chương trình dạng hàm với các yêu cầu:
Input: Nhập vào chuỗi bất kỳ từ bàn phím
Output:
Đếm các ký tự là các chữ cái a-z, A-Z trong chuỗi vừa nhập
#include<stdio.h>
// Đếm các ký tự là các chữ cái a-z, A-Z trong chuỗi vừa nhập
int chuCai(char c){
	if ((c >= 'a' && c <= 'z') || (c >= 'A' && c <= 'Z') ) return 1;
	else return 0;
}

int demChuCai_aZ(char s[]){
	int i = 0;
	int dem = 0;
	while (s[i] != '\0'){
		if (chuCai(s[i])) dem ++;
		i++;
	}
	return dem;
}

int main(){
    char a[100];
	printf("\nNhap vao chuoi: ");
	
	fflush(stdin);
	gets(a);
	
	printf("\nCo '%d' CHU CAI trong chuoi '%s'", demChuCai_aZ(a), a);
}
Đếm các ký tự số 0-9 trong chuỗi vừa nhập
#include<stdio.h>
// Đếm các ký tự số 0-9 trong chuỗi vừa nhập
int kyTuSo(char c){
	if ((c >= '0' && c <= '9')  ) return 1;
	else return 0;
}
int demKyTu_09(char s[]){
	int i = 0;
	int dem = 0;
	while (s[i] != '\0'){
		if (kyTuSo(s[i])) dem ++;
		i++;
	}
	return dem;
}
int main(){
    char a[100];
	printf("\nNhap vao chuoi: ");
	
	fflush(stdin);
	gets(a);
    
    printf("\nCo '%d' KY TU SO trong chuoi '%s'", demKyTu_09(a), a);
}
Đếm có bao nhiêu ký tự 'h' trong chuỗi (không phân biệt hoa thường)
#include<stdio.h>
// Đếm có bao nhiêu ký tự 'h' trong chuỗi (không phân biệt hoa thường)
char inHoaKyTu(char c){
	if (c >= 'a' && c <= 'z') c -= 32;
	return c;
}

char inThuongKyTu(char c){
	if (c >= 'A' && c <= 'Z') c += 32;
	return c;
}

int demKyTu(char s[], char c){
	int i = 0;
	int dem = 0;
	while (s[i] != '\0'){
        if ( inHoaKyTu(s[i]) == inHoaKyTu(c)) dem ++;
        // if ( inThuongKyTu(s[i]) == inThuongKyTu(c)) dem ++;
		i++;
	}
	return dem;
}

int main(){
    char c;
    c = 'h'; // thay ký tự cần tìm vào chổ này
    char a[100];
	printf("\nNhap vao chuoi: ");
	
	fflush(stdin);
	gets(a);

    printf("\nCo '%d' KY TU '%c' trong chuoi '%s'", demKyTu(a, c), c, a);
}
Cách-Xử lý chuỗi trước
#include<stdio.h>
#include<string.h>

char inHoaKyTu(char c){
	if (c >= 'a' && c <= 'z') c -= 32;
	return c;
}

char* inHoaChuoi(char s[]){
	int i = 0;
	while (s[i] != '\0'){
		s[i] = inHoaKyTu(s[i]);
		i++;
	}
	return s;
}

char inThuongKyTu(char c){
	if (c >= 'A' && c <= 'Z') c += 32;
	return c;
}

char* inThuongChuoi(char s[]){
	int i = 0;
	while (s[i] != '\0'){
		s[i] = inThuongKyTu(s[i]);
		i++;
	}
	return s;
}

int demKyTu(char s[], char c){
    // xử lý chuỗi trước sau đó mới so sanh
	int i = 0;
	int dem = 0;
    /*
    Hàm tự định nghĩa
    */
    s = inHoaChuoi(s); c = inHoaKyTu(c); 
    // s = inThuongChuoi(s); c = inThuongKyTu(c);
    
    /*
    sử dụng hàm đã xây dựng trong thư viện string.h
    */
    // s = strlwr(s); c = inThuongKyTu(c);
	while (s[i] != '\0'){
        if ( s[i] == c) dem ++;
     	i++;
	}
	return dem;
}

int main(){
    char c;
    c = 'h'; // thay ký tự cần tìm vào chổ này
    char a[100];
	printf("\nNhap vao chuoi: ");
	
	fflush(stdin);
	gets(a);

    printf("\nCo '%d' KY TU '%c' trong chuoi '%s'", demKyTu(a, c), c, a);

}
Tìm kiếm ký tự trong chuỗi, nếu có trả về trị trí ký đầu tiên tìm thấy
#include<stdio.h>
// tìm kiếm ký tự trong chuỗi, nếu có trả về trị trí ký đầu tiên tìm thấy
char inHoaKyTu(char c){
	if (c >= 'a' && c <= 'z') c -= 32;
	return c;
}

char inThuongKyTu(char c){
	if (c >= 'A' && c <= 'Z') c += 32;
	return c;
}

int timViTriKyTu(char s[], char c){
	int i = 0;
	int dem = 0;
	while (s[i] != '\0'){
		
        if ( inHoaKyTu(s[i]) == inHoaKyTu(c)) return i;
    
		i++;
	}
	return dem;
}

int main(){
    char c;
    c = 'a'; // thay ký tự cần tìm
    char a[100];
	printf("\nNhap vao chuoi: ");
	
	fflush(stdin);
	gets(a);
	if (timViTriKyTu(a, c)) {
		printf("\nKy tu '%c' nam vi tri '%d' trong chuoi '%s'", c, timViTriKyTu(a, c), a);
	} else {
		printf("\nKhong tim thay '%c' trong chuoi '%s'", c, a);
	}
    
}

Bài 2:
Xây dựng chương trình đăng nhập bằng username và password 
Input: Nhập username và password (gợi ý: tạo chuỗi userSys và passSys để so sánh chuỗi vừa nhập)
Output:

Hiển thị thông báo đăng nhập thành công nếu thông tin đăng nhập đúng ngược yêu cầu nhập lại cho đến khi đúng
#include<stdio.h>
#include<string.h>
// Hiển thị thông báo đăng nhập thành công nếu thông tin đăng nhập đúng ngược yêu cầu nhập lại cho đến khi đúng
int main(){
	char user[100], pass[100];
	char userSys[] = "admin";
	char passSys[] = "123";
	
	int dem = 0;
	
	do {
		printf ("Nhap vao user: "); gets(user);fflush(stdin);
		printf ("Nhap vao pass: "); gets(pass);
	}while (strcmp(user, userSys) != 0 || strcmp(pass, passSys) != 0 );
	
	printf("\nDang nhap THANH CONG!");
}
- Hiển thị thông báo đăng nhập thành công nếu thông tin đăng nhập đúng
- Ngược lại thông báo đăng nhập KHÔNG thành công nếu như nhập sai 3 lần
#include<stdio.h>
#include<string.h>

int main(){
    /*
    - Hiển thị thông báo đăng nhập thành công nếu thông tin đăng nhập đúng
    - Ngược lại thông báo đăng nhập KHÔNG thành công nếu như nhập sai 3 lần
    */
	char user[100], pass[100];
	char userSys[] = "admin";
	char passSys[] = "123";
	
	int dem = 0;
	int trangThai = 1;
	
	do {
		printf ("Nhap vao user: "); gets(user);fflush(stdin);
		printf ("Nhap vao pass: "); gets(pass);
		dem ++;
        if ((strcmp(user, userSys) != 0 || strcmp(pass, passSys) != 0) && dem < 3 ){
        	printf("\nBan da dang nhap sai -> NHAP LAI!\n");
        }
		if (dem == 3) { // cho phép đăng nhập sai 3 lần
			trangThai = 0;
            printf("\nBan da dang nhap sai %d lan!", dem);
			break;
		}
	}while (strcmp(user, userSys) != 0 || strcmp(pass, passSys) != 0 );
	
	if (trangThai == 1) printf("\nDang nhap THANH CONG!");
	else printf("\nDang nhap THAT BAI!");
}


Xong!

[Tự Học Lập Trình C - Qua Các Bài Tập] COM108_Nhập Môn Lập Trình - Bài 6 - Mảng (Array) Trong C - P2 - Ôn Tập

NỘI DUNG:
Ôn tập về mảng trong C

YÊU CẦU:


Viết chương trình dạng hàm với các yêu cầu:
Input: Nhập vào mảng một chiều gồm n số nguyên, 
Output: 
1.1 Xuất mảng vừa nhập

1.2 Xuất ra các số chia hết cho 3 hoặc chia hết cho 5

1.3 Xuất ra tổng các số chẵn chia hết cho 3 có trong mảng

1.4 Đếm trong mảng có bao nhiêu số chia hết cho 7, và xuất số đếm ra màn hình


THỰC HIỆN:

Yêu cầu 1.1 Xuất mảng vừa nhập
Hàm nhập chuỗi một chiều
void nhapMangMotChieu(int n, int mangMotChieu[]){
	// hàm nhập chuỗi một chiều
	int i;
	for (i = 0 ; i < n ; i++){
		printf("Phan tu thu %d: ", i + 1);
		scanf("%d", &mangMotChieu[i]); 
	}
}
		
Xuất theo hàng dọc
void xuatMangMotChieu(int n, int mangMotChieu[]){
	// xuất theo hàng dọc
	int i;
	for (i = 0 ; i < n ; i++){
		printf("\nPhan tu thu %d: %d ", i + 1, mangMotChieu[i]);	
	}
}
		
Xuất theo hàng ngang
void xuatMangMotChieu_2(int n, int mangMotChieu[]){
	// xuất theo hàng ngang
	int i;
	for (i = 0 ; i < n ; i++){
		printf("%d\t", mangMotChieu[i]);	
	}
}
		
Hàm chính (nhớ In Cờ Lu De <sờ tôi đi ông chấm hờ>)
int main(){
	int n;
	n = 3;
	int mangMotChieu[n];
	printf("\nNhap gia tri cho MANG MOT CHIEU %d phan tu!\n", n);
	nhapMangMotChieu(n, mangMotChieu);
	
	printf("\nCac gia tri trong MANG MOT CHIEU:\n");
//	xuatMangMotChieu(n, mangMotChieu);
	xuatMangMotChieu_2(n, mangMotChieu);
}
		

Xuất ra các số chia hết cho 3 hoặc chia hết cho 5
void chiaHet_3or5(int n, int mangMotChieu[]){
	// Xuất ra các số chia hết cho 3 hoặc chia hết cho 5
	for (int i = 0; i < n; i++){
		if (kiemTraChiaHet(mangMotChieu[i], 3) || kiemTraChiaHet(mangMotChieu[i], 5))
			printf("%d ", mangMotChieu[i]);
	}
}
		
Xuất ra tổng các số chẵn chia hết cho 3 có trong mảng
void tongChanChiaHet_3(int n, int mangMotChieu[]){
	// Xuất ra tổng các số chẵn chia hết cho 3 có trong mảng
	int tong = 0;
	for (int i = 0; i < n; i++){
		if (kiemTraChiaHet(mangMotChieu[i], 2) && kiemTraChiaHet(mangMotChieu[i], 3))
			tong += mangMotChieu[i];
	}
	printf("\nTong cac so CHAN & CHIA HET cho 3: %d", tong);
}
		
Đếm trong mảng có bao nhiêu số chia hết cho 7, và xuất số đếm ra màn hình
void demChiaHet_7(int n, int mangMotChieu[]){
	// Đếm trong mảng có bao nhiêu số chia hết cho 7, và xuất số đếm ra màn hình
	int dem = 0;
	for (int i = 0; i < n; i++){
		if (kiemTraChiaHet(mangMotChieu[i], 7))
			dem ++;
	}
	printf("\nCo '%d' so chia het cho 7", dem);
}
		
Hàm kiểm tra chia hết
int kiemTraChiaHet(int a, int b){
	// hàm kiểm tra chia hết
	if (a % b == 0) return 1;
	return 0;
}
		
Full Code
#include<stdio.h>

void nhapMangMotChieu(int n, int mangMotChieu[]){
	int i;
	for (i = 0 ; i < n ; i++){
		printf("Phan tu thu %d: ", i + 1);
		scanf("%d", &mangMotChieu[i]); 
	}
}

int kiemTraChiaHet(int a, int b){
	// hàm kiểm tra chia hết
	if (a % b == 0) return 1;
	return 0;
}

void chiaHet_3or5(int n, int mangMotChieu[]){
	// Xuất ra các số chia hết cho 3 hoặc chia hết cho 5
	for (int i = 0; i < n; i++){
		if (kiemTraChiaHet(mangMotChieu[i], 3) || kiemTraChiaHet(mangMotChieu[i], 5))
			printf("%d ", mangMotChieu[i]);
	}
}

void tongChanChiaHet_3(int n, int mangMotChieu[]){
	// Xuất ra tổng các số chẵn chia hết cho 3 có trong mảng
	int tong = 0;
	for (int i = 0; i < n; i++){
		if (kiemTraChiaHet(mangMotChieu[i], 2) && kiemTraChiaHet(mangMotChieu[i], 3))
			tong += mangMotChieu[i];
	}
	printf("\nTong cac so CHAN & CHIA HET cho 3: %d", tong);
}
void demChiaHet_7(int n, int mangMotChieu[]){
	// Đếm trong mảng có bao nhiêu số chia hết cho 7, và xuất số đếm ra màn hình
	int dem = 0;
	for (int i = 0; i < n; i++){
		if (kiemTraChiaHet(mangMotChieu[i], 7))
			dem ++;
	}
	printf("\nCo '%d' so chia het cho 7", dem);
}
int main(){
	int n;
	n = 3;
	int mangMotChieu[n];
	printf("\nNhap gia tri cho MANG MOT CHIEU %d phan tu!\n", n);
	nhapMangMotChieu(n, mangMotChieu);
//	chiaHet_3or5(n, mangMotChieu);
//	tongChanChiaHet_3(n, mangMotChieu);
	demChiaHet_7(n, mangMotChieu);
	
}
		

Xong!
/*header slide*/