Bài tập lớn : Cho dãy số sau:6 9 13 16 21 25 hãy viết ra 9 giá trị tiếp theo.
Hướng dẫn: Đây là dãy số được tạo bởi tổng của số nguyên tố và số không nguyên tố, ta viết số nguyên tố trên 1 hàng, số không nguyên tố trên 1 hàng khác và công lại sẽ ra kết quả này
Để giải quyết bài này ta cần 2 mảng bằng nhau 15, sau đó điền giá trị vào các mảng tương ứng
Program tim_so; Uses crt; Const n=15; (* Khi muon tang do rong mang chi can sua lai n*) Type mang=array[1..n] of longint; Var A,B:mang; i,j,k,so:longint; Begin clrscr; A[1]:=2; so:=3;(* Bat dau xu ly tu so 2 cho toi khi day 2 mang *) i:=2;(* Chi so cua mang A*) k:=1;(* Chi so cua mang B *) Repeat (* Xac dinh so co phai la so nt ko neu la nt gan vao mang A nguoc lai gan vao B*) j:=2; (* Khi mà phép dư <>0 và chưa chia tới căn bậc 2 của số thì chia cho số kế tiếp*) While (so mod j <> 0)and(j<=sqrt(so)) do j:=j+1; IF j>Sqrt(so) then Begin A[i]:=so; (* neu la SNT thi gan vao va tang chi so len 1 *) i:=i+1; End ELSE if k<=n then (* Kiem tra xem mang B da day chua*) Begin B[k]:=so; (* Ko phai s.n.to thi gan vao mang b va tang chi so mang b len 1*) k:=k+1; End; (* ket thuc viet kiem tra va gan so *) so:=so+1;(* Kiem tra so tiep theo *) Until i>n; (* Thoát khi mang A đã điền đầy*) Writeln('Mang ',n,' phan tu la cac so nguyen to'); For i:=1 to n do write(A[i]:5); Writeln; Writeln('Mang ',n,' phan tu la cac so khong phai so nguyen to'); For i:=1 to n do write(B[i]:5); Readln; Writeln('Day so can tim gom cac gia tri mang A[i] + B[i]'); For i:=1 to n do write(A[i]+B[i]:5); Readln End.