Cần tìm người giảng ngôn ngữ lập trình C !

Làm tạm 1 bài kiểm tra số nguyên tố. Chủ yếu là lý giải cách làm, sau khi hiểu thì có thể tự viết lại hoặc dùng phương pháp tối ưu hơn :) Tiếclà ko có nhiều thời gian để làm và ghi chú chi tiết hết các bài còn lại.


IsPrimeNumber.jpg
 
đóng góp bài kiểm tra Số nguyên tố = C++.
để kiểm tra số nguyên tố chỉ cần dò nghiệm từ khoảng 2 --> căn bậc 2 của (số cần tìm) là ok :D, đoạn code rõ ràng hơn, có gì thăc mắc thì cứ hỏi nhé.
viwfct
 
Làm tạm 1 bài kiểm tra số nguyên tố. Chủ yếu là lý giải cách làm, sau khi hiểu thì có thể tự viết lại hoặc dùng phương pháp tối ưu hơn :) Tiếclà ko có nhiều thời gian để làm và ghi chú chi tiết hết các bài còn lại.


IsPrimeNumber.jpg

Bài này của bác ko được rồi, theo em nhớ như này là ko tối ưu vì phải chạy những cái ko cần thiết. như bác viết nếu count lớn hơn 2 rồi thì vòng for vẫn chạy tiếp, đúng ra nên để lệnh kiểm tra biến đếm trong vòng for, nếu nó = 2 là nhẩy ra ngoài luôn. Mà bài này thuật toán của nó ko phải vậy. Em nhiều chuyện trình bày thuật giải cho nó sướng.
Kiểm tra 1 số có phải số nguyên tố hay ko, thuật toán nhớ ko nhầm là nó ko chia hết số nào từ 2->căn bậc 2 của chính nó. thì nó là số nguyên tố.
Thuật giải mô tả như sau.
input nhập vào 1 số
làm hàm kiểm tra số đó có phải số nguyên tố hay ko
output --> kết quả có phải số nguyên tố hay ko
Chương trình demo thuật giải theo ngôn ngữ tự nhiên.

Nhập vào 1 số x
func snt(x)
return true;
for i=2 to (căn bậc 2 của x)
if (x chia hết cho i) thì
{
return false;
exit; (thoát luôn ở đây ko cần duyệt tiếp)
}
next
end func
main chương trình thì đơn gian
if snt(x) thì ---> snt
else ---> ko phải snt

lâu rồi mới đc lên sàn những bài thế này cũng vui :cool:
 
Bài này của bác ko được rồi, theo em nhớ như này là ko tối ưu vì phải chạy những cái ko cần thiết. như bác viết nếu count lớn hơn 2 rồi thì vòng for vẫn chạy tiếp, đúng ra nên để lệnh kiểm tra biến đếm trong vòng for, nếu nó = 2 là nhẩy ra ngoài luôn. Mà bài này thuật toán của nó ko phải vậy. Em nhiều chuyện trình bày thuật giải cho nó sướng.
Kiểm tra 1 số có phải số nguyên tố hay ko, thuật toán nhớ ko nhầm là nó ko chia hết số nào từ 2->căn bậc 2 của chính nó. thì nó là số nguyên tố.
Thuật giải mô tả như sau.
input nhập vào 1 số
làm hàm kiểm tra số đó có phải số nguyên tố hay ko
output --> kết quả có phải số nguyên tố hay ko
Chương trình demo thuật giải theo ngôn ngữ tự nhiên.

Nhập vào 1 số x
func snt(x)
return true;
for i=2 to (căn bậc 2 của x)
if (x chia hết cho i) thì
{
return false;
exit; (thoát luôn ở đây ko cần duyệt tiếp)
}
next
end func
main chương trình thì đơn gian
if snt(x) thì ---> snt
else ---> ko phải snt

lâu rồi mới đc lên sàn những bài thế này cũng vui :cool:

Vâng, việc tối ưu là việc làm sau khi giải được, thủ thread vừa mới bắt học lập trình còn đang quên kiến thức toán nên mình phải nhắc lại mà
 

Announcements

Today's birthdays

Forum statistics

Threads
421,490
Messages
7,111,090
Members
173,667
Latest member
tmdt123

Most viewed of week

Most discussed of week

Most viewed of week

Most discussed of week

Back
Top Bottom