Bài tập lập trình buổi 4: Viết hàm kiểm tra một số nguyên môn Kỹ thuật lập trình mạng | Đại học Bách Khoa, Đại học Đà Nẵng

Bài tập lập trình buổi 4: Viết hàm kiểm tra một số nguyên môn Kỷ thuật lập trình | Đại học Bách Khoa, Đại học Đà Nẵng giúp sinh viên tham khảo, ôn luyện và phục vụ nhu cầu học tập của mình cụ thể là có định hướng, ôn tập, nắm vững kiến thức môn học và làm bài tốt trong những bài kiểm tra, bài tiểu luận, bài tập kết thúc học phần, từ đó học tập tốt và có kết quả cao cũng như có thể vận dụng tốt những kiến thức mình đã học

1. Viết hàm kiểm tra một số nguyên có phải là số nguyên tố hay không? Nhập vào một số nguyên
bất kì và in ra màn hình số đó có phải là số nguyên tố hay không?
#include<stdio.h>
#include<math.h>
int SoNguyenTo(int n);
int main()
{
int n,i;
printf("\nNhap so n nguyen duong lon hon hoac bang 2:");
scanf("%d",&n);
if (SoNguyenTo(n) ==1){ printf("%d la so nguyen to ", n);}
else { printf ("%d khong la so nguyen to ",n);}
}
int SoNguyenTo(int n) {
int i;
for (i=2;i<=sqrt(n);++i){
if (n%i==0){
return 0;
break;
}
}
return 1;
}
2. Tương tự viết hàm kiểm tra số hoàn hảo, số chính phương, số palindrome.
- Số hoàn hảo
#include<stdio.h>
int SoHoanHao(int n){
int sum=0;
for (int i=1;i<n;i++){
if (n%i==0) sum+=i;
}
if (sum==n && n!=0) return 1;
return 0;
}
int main()
{
int n;
printf("Nhap so n");
scanf("%d",&n);
int kiemtra = SoHoanHao(n);
if (kiemtra==1) printf ("%d la so hoan hao",n);
else printf("%d khong la so hoan hao",n);
return 0;
}
- Số chính phương
#include<stdio.h>
int SoChinhPhuong(int n){
if (n<1)return 0;
int i=1;
while (i*i<=n){
if (i*i==n)return 1;
i++;
}
return 0;
}
int main(){
int n;
printf("Nhap so n");
scanf("%d",&n);
int kiemtra=SoChinhPhuong(n);
if (kiemtra==1) printf("%d la so chinh phuong",n);
else printf("%d khong la so chinh phuong",n);
}
- Số palindrome
#include<stdio.h>
int SoDoiXung(int n){
int DoiXung = 0;
while (n>0) {
DoiXung= DoiXung *10+n%10;
n/=10;
}
return DoiXung;
}
int Ham(int n){
if (SoDoiXung(n)==n) return 1;
return 0;
}
int main(){
int n;
printf ("Nhap so n");
scanf("%d",&n);
int kiemtra=Ham(n);
if (kiemtra==1)printf("%d la so doi xung",n);
else printf("%d khong la so doi xung",n);
return 0;
}
3. Viết hàm tính UCLN và BCNN, sau đó tính UCLN và BCNN của 5 số nhập từ bàn phím.
#include<stdio.h>
int UCLN(int a,int b){
int r;
while (b!=0){
r=a%b;
a=b;
b=r;
}
return a;
}
int BCNN (int a, int b){
return (a*b)/UCLN(a,b);
}
int main (){
int a[5],i;
printf("Nhap lan luot 5 so nguyen");
for(i=0;i<5;i++) scanf ("%d",&a[i]);
int u=UCLN(a[0],a[1]);
int b=BCNN(a[0],a[1]);
for (i=2;i<5;i++){
u=UCLN(u,a[i]);
b=BCNN(b,a[i]);
}
printf("UCLN: %d\n",u);
printf("BCNN: %d\n",b);
return 0;
}
| 1/3

Preview text:

1. Viết hàm kiểm tra một số nguyên có phải là số nguyên tố hay không? Nhập vào một số nguyên
bất kì và in ra màn hình số đó có phải là số nguyên tố hay không? #include #include int SoNguyenTo(int n); int main() { int n,i;
printf("\nNhap so n nguyen duong lon hon hoac bang 2:"); scanf("%d",&n);
if (SoNguyenTo(n) ==1){ printf("%d la so nguyen to ", n);}
else { printf ("%d khong la so nguyen to ",n);} } int SoNguyenTo(int n) { int i; for (i=2;i<=sqrt(n);++i){ if (n%i==0){ return 0; break; } } return 1; }
2. Tương tự viết hàm kiểm tra số hoàn hảo, số chính phương, số palindrome. - Số hoàn hảo #include int SoHoanHao(int n){ int sum=0;
for (int i=1;iif (n%i==0) sum+=i; }
if (sum==n && n!=0) return 1; return 0; } int main() { int n; printf("Nhap so n"); scanf("%d",&n); int kiemtra = SoHoanHao(n);
if (kiemtra==1) printf ("%d la so hoan hao",n);
else printf("%d khong la so hoan hao",n); return 0; } - Số chính phương #include int SoChinhPhuong(int n){ if (n<1)return 0; int i=1; while (i*i<=n){ if (i*i==n)return 1; i++; } return 0; } int main(){ int n; printf("Nhap so n"); scanf("%d",&n); int kiemtra=SoChinhPhuong(n);
if (kiemtra==1) printf("%d la so chinh phuong",n);
else printf("%d khong la so chinh phuong",n); } - Số palindrome #include int SoDoiXung(int n){ int DoiXung = 0; while (n>0) { DoiXung= DoiXung *10+n%10; n/=10; } return DoiXung; } int Ham(int n){ if (SoDoiXung(n)==n) return 1; return 0; } int main(){ int n; printf ("Nhap so n"); scanf("%d",&n); int kiemtra=Ham(n);
if (kiemtra==1)printf("%d la so doi xung",n);
else printf("%d khong la so doi xung",n); return 0; }
3. Viết hàm tính UCLN và BCNN, sau đó tính UCLN và BCNN của 5 số nhập từ bàn phím. #include int UCLN(int a,int b){ int r; while (b!=0){ r=a%b; a=b; b=r; } return a; } int BCNN (int a, int b){ return (a*b)/UCLN(a,b); } int main (){ int a[5],i;
printf("Nhap lan luot 5 so nguyen");
for(i=0;i<5;i++) scanf ("%d",&a[i]); int u=UCLN(a[0],a[1]); int b=BCNN(a[0],a[1]); for (i=2;i<5;i++){ u=UCLN(u,a[i]); b=BCNN(b,a[i]); } printf("UCLN: %d\n",u); printf("BCNN: %d\n",b); return 0; }