Kiểm tra xem số n có phải số SIÊU nguyên tố trong C

Bớt số và kiểm tra như thế nào nhỉ? :blush:
Mình có thể ktra số nt

1 Like

Cho ví dụ được không @Nhat_Nam, nghe hay hay :smile:

3 Likes

bớt số tức là “/10” đó bn :v

1 Like

À, nếu vậy thì @Honey_moon trả lời cũng hợp lý rồi

3 Likes

/10 là gì ạ. :smiley:
Anh ĐẠT đẹp trai :smile:

1 Like

à, tức là chia lấy nguyên. Có phải ý em là vậy không?

2 Likes

VD: 7393; 2939 khi bớt số như 739 vẫn là số nt ấy hi :smiley:

2 Likes

Vậy thì đó là chia lấy nguyên đấy em, làm như @Honey_moon là được

2 Likes

Dạ, vậy để chiều xem video của anh rồi làm thử xem.
Hihi, ko được e sang nhà a hỏi luôn <3 :smiley:

2 Likes

Mình hướng dẫn cho bạn cách làm tuần tự như này nhé. bạn thử heng:
bước 1 : xây dựng hàm kiểm tra số nguyên tố
bước 2 : cho vòng lặp đó chạy từ số nhập -1 về. nếu kiểm thấy số nào là nguyên tố thì trả return số nguyên tố đó về.
bước 3 : bạn tạo 1 biến tạm gán giá trị qua số đó
bước 4 thực hiện /10
bước 5 kiểm tra biến tạm sau khi chia cho 10. gọi hàm kiểm tra nguyên tố nếu đúng thì kết luận

2 Likes

:smile: :wink: :blush: (y) :sunny:

2 Likes

Diễn đàn mình có hàm kiểm tra số nguyên tố nếu bí. có j mà mò ko ra thì post code lên mình ngó giùm cho :smile:

2 Likes

Cảm ơn bạn hiền:
Bạn tốt bụng và chu đáo quá hi >_<

2 Likes

Nếu bạn mún nhận đc nhiều thì bạn phải cho đi. Bạn mún nhớ lâu thì bạn phải làm nhiều. Bạn mún mọi ng tốt bụng với bạn thì bạn hãy tốt bụng với ng khác. hỳ :wink: mình chỉ giúp đỡ trong khả năng thôi nhé. mình còn kém lắm

4 Likes

Hì hì :smile_cat: mình sẽ nhớ

2 Likes
#include <stdio.h>
#include <conio.h>
int soNguyenTo(int soA) 
{
	if (soA < 2) // Nếu số A nhỏ hơn 2
	{
		return 0;// trả về false
	}
	else if (soA>2)// Nếu số A lớn hơn 2
	{
		if (soA % 2 == 0)  // Xét xem A có chia hết cho 2 không?
		{
			return 0;// Nếu chia hết, return false.
		}
		for (int i = 3; i < sqrt((float)soA); i += 2)  // xét từ 3 đến căn bậc 2 của số A
		{
			if (soA%i == 0)  // nếu A chia hết cho một số nào đó trong đoạn này
			{
				return 0;// trả về kết quả sai
			}
		}
	}
	return 1;// sau tất cả các chỗ trên, nó mà không sai thì cuối cùng nó đúng :3
}
int main()
{
	int n;
	printf("nhap n:");
	scanf("%d", &n);
	int temp = n;
	temp /= 10; 
	if (soNguyenTo(temp) == 1)
	{
		printf("so %d la so siu nguyen to!!!", n);
	}
	else
	{
		printf("so %d khong phai la so siu nguyen to!!!",n);
	}
	getch();
	return 0;
}

post ra đây nhé Nam có j cho người nào cần

3 Likes

Cảm ơn bạn nhiều nha. Mình sẽ ngâm cứu kĩ hihi

1 Like

A post was merged into an existing topic: Topic lưu trữ các post off-topic - version 3

thiếu dấu bằng: i <= sqrt((float)soA)
soA là 1 số chính phương lẻ thì sẽ cho kết quả sai

1 Like

Vậy là n là siêu nguyên tố nếu với mọi k \ 10^k < n, n/10^k là số nguyên tố. Một số như vậy chỉ có thể là [2357][1379]*.

1 Like
83% thành viên diễn đàn không hỏi bài tập, còn bạn thì sao?