01/10/2018, 09:20
Vấn đề về số nguyên tố
http://codepad.org/tkbNUjxU
em gặp vấn đề với đề bài xuất ra các số nguyên tố có trong mãng: đúng hết với mọi trường hợp nhưng duy nhât trường hợp 2 và 3 thì sai( vì thuật toán em chạy từ g đến căn bậc 2 số muốn xét, nhưng mà 2 và 3 khai căn thì không lớn hơn g nên code dưới k chạy)
làm sao để khắc phục ạ
Bài liên quan
Bởi vì có ngoại lệ nên bạn chỉ cần thêm 2 trường hợp kiểm tra xem phải là 2 và 3 là xong rồi. Topic về số nguyên tố này đã có rất nhiều người tạo rồi bạn. Bạn có thể dùng tính năng search mà.
Viết hàm kiểm tra ntn 2 và 3 vẫn nhận tốt (lí do là (int)sqrt(2) < 2), do bạn viết sai đó bởi vì phải kiểm tra xong một số rồi mới xét cộng được hay không.
Mà đừng quên 1 với 0
Thật ra là thuật toán bị sai ?a có thể giúp em sữa lại được ko? ví dụ em nhập số 9 thì nó lại ra là số nguyên tố
sao 2 và 3 nhận vẫn tốt anh. 2 và 3 ko chạy được mà k chạy được thì nó đâu vào biến tổng đâu ạ. thêm nữa là số 9… sai, do đó là thuật toán sai(khi nào anh rãnh có thể giúp em sữa lại thuật toán được k ạ)
Bạn ý có kiểm tra, nhưng điều kiện sai
Còn điều kiện if của em sai vì sao, anh nghĩ em nên tự tìm hiểu.
Còn đây là cách sửa khi không cần viết thêm 1 hàm khác để check
số 1 không phải số nguyên tố nhé