Số Palindrom là số mà khi viết các chữ số theo thứ tự ngược lại thì số tạo thành cũng chính bằng số ban đầu.. Số hoàn hảo là số có giá trị bằng tổng các ước số của nó (không kể ước s[r]
(1)(2)I Số nguyên tố
Một số tự nhiên N (N>1) số nguyên tố N có
hai ước số N (tức khơng có ước số đoạn [2, N-1]
Tính chất: Nếu N khơng có ước đoạn [2, ]
N khơng có ước đoạn [ ,N-1] , suy N số nguyên tố
Kiểm tra số nguyên tố: Ta cần kiểm tra xem N có ước
trong đoạn [2, ] hay không
N N
(3)I Số nguyên tố
If N<2 then Writeln(N, ' khong la so nguyen to') Else
Begin i:=2;
While (i<=sqrt(N)) and (N mod i<>0) do i:=i+1; If i>sqrt(N) then Writeln(N, ' la so nguyen to') Else Writeln(N, ' khong la so nguyen to');
(4)I Số nguyên tố
Bài toán: Liệt kê số nguyên tố đoạn [1,N]
Cách 1: Thử số M đoạn [1,N] kiểm
tra tính nguyên tố M For M:=2 to N do
Begin i:=2;
While (i<=sqrt(M)) and (M mod i<>0) do i:=i+1; If i>sqrt(M) then Writeln(M)
(5)I Số nguyên tố
Cách 2: Sử dụng phương pháp sàng Eratosthene
Trước tiên xóa bỏ số khỏi tập số nguyên tố Số
tiếp theo số số số nguyên tố, xóa tất bội khỏi bảng
Số khơng bị xóa sau số số nguyên tố
tiếp theo (số 3), xóa bội 3…
Q trình tiếp tục đến gặp số nguyên tố lớn
(6)I Số nguyên tố
(7)Const max=100000;
Var P:Array[1 max] of byte; i,j,N:Longint;
Begin
Write('Nhap so tu nhien N ='); Readln(N);
Fillchar(P,Sizeof(P),0);
For i:=2 to trunc(sqrt(N)) do
If P[i]=0 then
Begin
j:=i*i;
While j<=N do
Begin
P[j]:=1; j:=j+i; End; End;
For i:=2 to N do
If P[i]=0 then Writeln(i);
(8)II Ước số - Bội số
1. Ước số chung lớn hai số
Thuật toán Euclid:
a b = UCLN(a,b) =
UCLN(b, a mod b) b<>0 While b>0 do
Begin
r := a mod b; a := b;
(9)II Ước số - Bội số
2. Bội số chung nhỏ hai số
Áp dụng công thức:
UCLN(a,b) * BCNN(a,b) = a*b
(10)II Ước số - Bội số
2. Bội số chung nhỏ hai số
Áp dụng công thức:
UCLN(a,b) * BCNN(a,b) = a*b
Tìm UCLN áp dụng công thức suy BCNN * Chú ý: Hai số tự nhiên gọi nguyên tố
(11)II Ước số - Bội số
3. Một số dạng tập:
- Đếm số ước số - Tính tổng ước số
- Phân tích thành thừa số nguyên tố
(12)III Xử lý chữ số
Bài toán:
Cho số tự nhiên N Yêu cầu: a) Đếm số chữ số N
b) Tính tổng chữ số N c) Tìm chữ số N
d) Tìm số đảo ngược chữ số N
Hai phép toán bản: DIV MOD
a := N mod 10; N := N div 10;
lấy chữ số tận N
(13)III Xử lý chữ số
A:=N mod 10; N:=N div 10; Đếm Tổng Đảo
(14)Dem:=0; Tong:=0; Dao:=0;
Repeat
a := N mod 10; Dem := Dem + 1; Tong:= Tong + a; Dao := Dao * 10 + a N:=N div 10;
Until N=0;
Writeln('So chu so = ' , Dem); Writeln('Tong chu so = ' , Tong); Writeln('Chu so dau tien = ' , a);
(15)III Xử lý chữ số
Một số tốn tương tự:
- Xóa chữ số tận bên trái N
- Đổi chỗ chữ số đầu chữ số cuối N - Xóa khỏi N tất chữ số
- Tìm chữ số tận 2N
(16)IV Một số toán khác
1. Số hạnh phúc số có 2N chữ số cho tổng N chữ số đầu tổng N chữ số cuối Tìm số hạnh phúc có 2N chữ số (1N4)
2. Số Palindrom số mà viết chữ số theo thứ tự ngược lại số tạo thành số ban đầu Tìm số Palindrom có K chữ số (1K9)
3. Số hồn hảo số có giá trị tổng ước số (khơng kể ước số nó) Tìm số hồn hảo
trong đoạn [a,b] với 1ab108
4 Hai số gọi đôi bạn tổng ước số số
(17)IV Một số toán khác