Viết hàm in ra các số nguyên tố trong mảng 1 chiều a có n phần tử.
Nhập vào 1 mảng và hiển thị các số nguyên tố có trong mảng đó
Trước tiên bạn phải hiểu định nghĩa thế nào là số nguyên tố: Số nguyên tố là số chỉ chia hết cho một và chính nó.
- Ta tạo 1 hàm có tham số để kiểm tra số nguyên tố trả về true ,false hoặc 1, 0……
- Duyệt từng phần tử trong mảng => gọi hàm kiểm tra SNT ,truyền tham số là a[i] để kiểm tra SNT cho từng phần tử
- Nếu phần tử nào thỏa mãn điều kiện ==>là số nguyên tố
#include<stdio.h> void nhap(int a[], int &n){ printf("Nhap so phan tu mang: "); scanf("%d",&n); for(int i=0; i<n; i++){ printf("a[%d]: ",i); scanf("%d",&a[i]); } } int kiemtra_NT(int n){ if(n<2) return 0; else{ for(int i=2;i<=n/2;i++) if(n%i==0) return 0; return 1; } } void insonguyento(int a[], int n){ printf("\nCac so nguyen to co trong mang la: \n"); for(int i=0;i<n;i++) if(kiemtra_NT(a[i])) printf("%5d",a[i]); } int main(){ int a[100]; int n; nhap(a,n); insonguyento(a,n); return 0; }
Kết quả
Nhap n: 5 a[0]: 8 a[1]: 7 a[2]: 9 a[3]: 11 a[4]: 12 Cac so nguyen to co trong mang la: 7 11
Thanks anh nhé, rất hay ạ