Thân cây (sqrt (n)) pascal
Bài toán kiểm tra một số có phải là số nguyên tố không là một bài toán hết sức cơ bản khi bạn học bất kì một ngôn ngữ lập trình nào, trong bài viết này mình chia sẻ với các bạn thuật toán kiểm tra số nguyên tố trong pascal đơn giản và dễ hiểu nhất, nó không phải là thuật toán tối ưu nhưng dễ hiểu và phù hợp với đối tượng học sinh THCS dưới đây hãy tham khảo với onthihsg để có cách tìm số nguyên tố Show
Video thuật toán kiểm tra số nguyên tốNhững bài viết liên quan
Nội dung bài toán kiểm tra số nguyên tố trong pascalViết chương trình kiểm tra một số n (n <2 tỉ) có phải là số nguyên tố hay không Hướng dẫn Hàm kiểm tra số nguyên tố Dữ liệu vào nhà thơ. nguyễnto. inpDữ liệu ra file. nguyễnto. outChứa số nYes (No)Ý tưởng của thuật toán. Kiểm tra đúng như định nghĩa số nguyên tố, ta chỉ cần xem số đó có lớn hơn 1 không và có bao nhiêu ước, nếu chỉ có hai ước thì là số nguyên tố còn ngược lại thì không phải Thuật toán tìm số nguyên tốChương trình viết hàm kiểm tra số nguyên tố viết bằng Free pascalprogram kiem_tra_nguyen_to; var m:longint;f:text; {------ chuong trinh con kiem tra so nguyen to ----} function ngto(n:longint):boolean; var i:longint; begin if n<2 then ngto:=false else ngto:=true; for i:=2 to trunc(sqrt(n)) do if n mod i = 0 then begin ngto:=false; break; {thoat vong lap} end; end; {--- het CT con------} {----Than chuong trinh chinh ------} begin {----Doc file ----} assign(f,'nguyento.inp'); reset(f); readln(f,m);close(f); {----Mo file de ghi----} assign(f,'nguyento.out'); rewrite(f); if ngto(m) then write(f,'yes') else write(f,'no'); close(f); end. Hầu hết những chương trình mà mình viết đều sử dụng chương trình con, theo mình nên tập cho học sinh thói quen như vậy ngay từ những bài tập đầu tiên Bạn cũng có thể tham khảo chương trình kiểm tra số nguyên tố trong Scratch Sau khi học sinh nắm được thuật toán kiểm tra số nguyên tố ta có thể phát triển thêm một số bài toán liên quan như sau Một số bài toán về số nguyên tốVịnh 1. 1. Viết chương trình nhập vào một số n, xuất ra những số nguyên tố nhỏ hơn hoặc bằng n và tổng của tất cả những số nguyên tố đó Dữ liệu vào nhà thơ. Sum_nt. inpDữ liệu ra file. Sum_nt. outChứa số n– Dòng 1. chứa các số nguyên tố <=n cách nhau 1 khoảng trắng– Dòng 2. Chứa tổng các số nguyên tố trên Bài tập trên mình yêu cầu học sinh sử dụng chương trình co để giải quyết qua đó rèn luyện cho học sinh tư duy kế thừa Ý tưởng của thuật toán
program Dem_nguyen_to; var m,k,s:longint;f:text; {------ chuong trinh con kiem tra so nguyen to ----} function ngto(n:longint):boolean; var i:longint; begin if n<2 then ngto:=false else ngto:=true; for i:=2 to trunc(sqrt(n)) do if n mod i = 0 then begin ngto:=false; break; {thoat vong lap} end; end; {--- het CT con------} {----Than chuong trinh chinh ------} begin {----Doc file ----} assign(f,'sum_nt.inp'); reset(f); read(f,m);close(f); {----Mo file de ghi----} assign(f,'sum_nt.out'); rewrite(f); k:=1; S:=0; while k<=m do begin if ngto(k) then begin write(f,k,' '); s:=s+k; end; k:=k+1; end; writeln(f); write(f,S); close(f); end. Vịnh 1. 2. Viết chương trình phân tích một số tự nhiên n (n <2 tỉ) ra thừa số nguyên tố Dữ liệu vào nhà thơ. pt_nt. inpDữ liệu ra file. pt_nt. outChứa số nVD. 100 1 dòng. chứa kết quảVD. 2. 2. 5. 5 Đối với bài toán này ta chia số đó (nếu chia hết) cho số nguyên tố (duyệt từ số nguyên tố nhỏ đến lớn) Trong bài viết này mình sẽ giới thiệu với các bạn về thuật toán kiểm tra số chính phương trong Pascal và scratch và một số bài tập có liên quan Các bạn đã biết số chính phương pascal là số viết được dưới dạng bình phương của một số tự nhiên chẳng hạn 0, 1, 4, 9, 16, 25, … số chính phương được ứng dụng rất nhiều trong toán học, thuật toán kiểm tra số chính phương thì lại hết sức đơn giản bên dưới với onthihsg nhé. Những bài viết liên quan
Video hướng dẫn kiểm tra số chính phương pascalHướng dẫn về số chính phương pascalSố chính phương Tiếng Anh là “Square numbers”. Đây là loại số có căn bậc hai bằng đúng của một số nguyên. Hay các bạn cũng có thể hiểu đơn giản là. số chính phương là một số tự nhiên có căn bậc hai cũng sẽ phải là một số tự nhiên. Về bản chất, số chính phương là bình phương của một số tự nhiên nào đó. Hay số chính phương chính bằng diện tích của một hình vuông với cạnh là số nguyên kia. Với số nguyên bao sẽ gồm các số nguyên dương, nguyên âm cùng số 0 Hàm kiểm tra số chính phương trong pascalDưới đây là hàm kiểm tra số chính phương. readln(n); . =trunc(sqrt(n); IF sqr(x)=n then write(n,’la so chinh phuong); ELSE write(n,’ khong phai la mot so chinh phuong Thuật toán kiểm tra số chính phươngVì căn bậc hai và bình phương là hai phép toán ngược nhau nên mình lợi dụng điều này để xây dựng thuật toán kiểm tra số chính phương. Nôm na như thế này nhé, mình muốn kiểm tra xem số 5 có phải là số chính phương không thì mình tính căn bậc hai của 5, sau đó chỉ lấy phần nguyên thôi kết quả là 2, lại lấy 2 bình phương lại ta được 4, 4 không bằng 5 nên 5 không phải là số chính phương Thuật toán có thể ghi ngắn gọn lại như sau ” Nếu bình phương của phần nguyên của căn bậc hai của n đúng bằng n thì n là số chính phương còn không thì n không phải là số chính phương” Câu chữ hơi nhiều “ngoặc” vì vậy bạn hãy ngẫm nghĩ cho kĩ để hiểu thuật toán Chương trình kiểm tra số chính phương trong pascal
vuông(n). Hàm tính bình phương của n thân cây(x). Cho phần nguyên của x sqrt(n). Tính căn bậc hai của n Như vậy sqr(trunc(sqrt(n))) tính bình phương của phần nguyên của căn bậc hai của n Viết chương trình kiểm tra số chính phương trong pascal nâng caoProgram KT_Sochinhphuong; End; Begin Ở đây lệnh trong Scratch hơi khác trong Pascal một chút nhưng thuật toán thì không có gì thay đổi, hàm “làm tròn xuống” trong Scratch giống như hàm trunc() trong Pascal Bài tập luyện tập liên quan đến số chính phươngCác bạn hãy luyện tập chương trình sau để ôn lại cách sử dụng chương trình con, thuật toán cộng dồn và thuật toán kiểm tra số chính phương bài tập 1. Viết chương trình nhập vào một số n (n <2 tỉ), xuất ra những số chính phương nhỏ hơn hoặc bằng n và tổng của chúng Dữ liệu vào nhà thơ. Tim_cp. inpDữ liệu ra file. Tim_cp. outChứa số n (n <2 tỉ)Dòng 1. Dãy các số chính phươngsê-ri 2. Tổng số hẹp Xin chào và hẹn gặp lại các bạn trong bài viết về số hoàn hảo Bài tập 2. Viết chương trình pascal nhập N từ bàn phím. Đếm xem có bao nhiêu số chính phương từ 1 tới n (sử dụng câu lệnh lặp và câu lệnh điều kiện) đơn giản thôi nha. Dưới đây là viết chương trình kiểm tra số chính phương pascal |