Boi duong hsg tin9
Chia sẻ bởi Nguyễn Thị Thúy Liễu |
Ngày 06/11/2018 |
40
Chia sẻ tài liệu: boi duong hsg tin9 thuộc Tin học 9
Nội dung tài liệu:
CHUYÊN ĐỀ XỬ LÝ SỐ - XỬ LÝ CHUỖI
Bài 1: XỬ LÝ CHỮ SỐ
Lấy chữ số bằng chuỗi (xâu ký tự )
Thủ tục biến đổi giữa chuỗi và số.
Val(s,x)
Thủ tục
Chuyển chuỗi số s thành con số x
Str(x,s)
Thủ tục
Chuyễn con số x thành chuỗi số s
Qui tắc : + Lấy một biến chuỗi chứa con số
+ Sử dụng cấu trúc chuỗi lấy chữ số :
Khi biến chuỗi được nhập hay gán giá trị như S:= ’3456’
Chuỗi S có cấu trúc mãng nghĩa là S[n] là ký tự thứ n của chuỗi S
Như S[1] là ký tự ‘3’, S[2] là ký tự ‘4’, S[1] là ký tự ‘5’,...
+ Dùng hàm biến chuỗi chữ số thành con số để xử lý :
Ví dụ : Viết chương trình nhập vào con số nguyên dương n và tính tổng các chữ số của n. Lưu ý n có số chữ số từ 1 đến 255.
Chương trình
Program Tongchuso;
uses Crt;
Var conso:string;
function TCS(x:string):integer;
Var i,chuso,tong:integer;
Begin
tong:=0;
For i:=1 to length(x) do
begin
val(x[i],chuso);
tong:=tong+chuso;
end;
TCS:=tong;
end;
Begin
clrscr; write(` Nhap con so:`) ;readln(conso);
writeln(` Tong chu so = `, TCS(conso));
readln;
end.
Khai báo tên chương trình
Sử dụng đơn vị lệnh Crt
Khai báo biến toàn cục conso kiểu chuỗi
Khai báo hàm TCS với tham trị x kiểu chuỗi
Khai báo biến cục bộ i, chuso, tong kiểu số nguyên
Gán giá trị biến tong ban đầu bằng 0
lặp từ i bằng 1 đến độ dài thực sự của chuỗi x
Biến ký tự thứ i của chuỗi x thành chuso
Tong mới bằng tổng cũ công chuso
Gán TCS là tong đã tính được
Xoá màn hình; nhập con số
- Bài tập:
Bài 1: Con số nguyên dương n gọi là con số song trùng m với m là số nguyên dương khi n chia hết cho m và tổng chữ số của n cũng chia hết cho m. Viết chương trình
a) Nhập vào n, m. Hãy cho biết n có là số song trùng hay không?
b) Nhập vào hai số nguyên dương k, h , tìm tất cả số song trùng m từ k đến h?
Bài 2: Con số nguyên dương n gọi là song tố khi n là số nguyên tố và tổng chữ số của nó cũng là số nguyên tố. Hãy viết chương trình nhập vào 2 số nguyên dương k, h, hãy tìm số tất cả con số song tố từ k đến h?
Bài 3: Con số nguyên dương gọi là số nhị nguyên khi n có dạng 3k + 1 và tổng các chữ số của n cũng có dạng 3k +1. Viết chương trình nhập vào 2 số nguyên dương k, h. Hãy tìm các số nhị nguyên từ k đến h?
Bài 4: Cho một con số nguyên dương n, người ta biến đổi con số thành một con số m có 1 chữ số bằng cách: Tính tổng các chữ số của n ta được n1, nếu n1 có từ 2 chữ số trở lên thì lại tính tổng chữ số của n1 ta được n2, tiếp tục đến khi chỉ còn 1 chữ số. Viết chương trình nhập vào số n và cho biết sau khi biến đổi số n theo cách nêu trên ta được con số m là bao nhiêu?
Mã ACCII của ký tự số
Các hàm, thủ tục về mã accii của ký tự
ord(ch)
Hàm
Tính mã số accii của ký tự ch
Chr(n)
Hàm
Cho ra ký tự có mã accii là n
Mã số accii ký tự số: ‘0’,’1’,...,’9’ là 48,49,...,58 nghĩa là ord(‘1’) =49 , chr(48)=’0’
Lọc chữ số trong một chuỗi có nhiều loại ký tự:
+ Lấy từng ký tự trong chuỗi S, dùng biến ký tự ch:= S[i]
+ Sử dụng điều kiện tập hợp: ch in [‘0’..’9’] để lọc ký tự chữ số
Ví dụ: Viết chương trình nhập vào một chuỗi gồm các ký tự là mẫu tự, khoảng trắng và chữ số. Các chữ số liền nhau trong chuỗi tạo thành con số. Hãy cho biết có bao nhiêu con số trong chuỗi?.
Program locso;
uses
Bài 1: XỬ LÝ CHỮ SỐ
Lấy chữ số bằng chuỗi (xâu ký tự )
Thủ tục biến đổi giữa chuỗi và số.
Val(s,x)
Thủ tục
Chuyển chuỗi số s thành con số x
Str(x,s)
Thủ tục
Chuyễn con số x thành chuỗi số s
Qui tắc : + Lấy một biến chuỗi chứa con số
+ Sử dụng cấu trúc chuỗi lấy chữ số :
Khi biến chuỗi được nhập hay gán giá trị như S:= ’3456’
Chuỗi S có cấu trúc mãng nghĩa là S[n] là ký tự thứ n của chuỗi S
Như S[1] là ký tự ‘3’, S[2] là ký tự ‘4’, S[1] là ký tự ‘5’,...
+ Dùng hàm biến chuỗi chữ số thành con số để xử lý :
Ví dụ : Viết chương trình nhập vào con số nguyên dương n và tính tổng các chữ số của n. Lưu ý n có số chữ số từ 1 đến 255.
Chương trình
Program Tongchuso;
uses Crt;
Var conso:string;
function TCS(x:string):integer;
Var i,chuso,tong:integer;
Begin
tong:=0;
For i:=1 to length(x) do
begin
val(x[i],chuso);
tong:=tong+chuso;
end;
TCS:=tong;
end;
Begin
clrscr; write(` Nhap con so:`) ;readln(conso);
writeln(` Tong chu so = `, TCS(conso));
readln;
end.
Khai báo tên chương trình
Sử dụng đơn vị lệnh Crt
Khai báo biến toàn cục conso kiểu chuỗi
Khai báo hàm TCS với tham trị x kiểu chuỗi
Khai báo biến cục bộ i, chuso, tong kiểu số nguyên
Gán giá trị biến tong ban đầu bằng 0
lặp từ i bằng 1 đến độ dài thực sự của chuỗi x
Biến ký tự thứ i của chuỗi x thành chuso
Tong mới bằng tổng cũ công chuso
Gán TCS là tong đã tính được
Xoá màn hình; nhập con số
- Bài tập:
Bài 1: Con số nguyên dương n gọi là con số song trùng m với m là số nguyên dương khi n chia hết cho m và tổng chữ số của n cũng chia hết cho m. Viết chương trình
a) Nhập vào n, m. Hãy cho biết n có là số song trùng hay không?
b) Nhập vào hai số nguyên dương k, h , tìm tất cả số song trùng m từ k đến h?
Bài 2: Con số nguyên dương n gọi là song tố khi n là số nguyên tố và tổng chữ số của nó cũng là số nguyên tố. Hãy viết chương trình nhập vào 2 số nguyên dương k, h, hãy tìm số tất cả con số song tố từ k đến h?
Bài 3: Con số nguyên dương gọi là số nhị nguyên khi n có dạng 3k + 1 và tổng các chữ số của n cũng có dạng 3k +1. Viết chương trình nhập vào 2 số nguyên dương k, h. Hãy tìm các số nhị nguyên từ k đến h?
Bài 4: Cho một con số nguyên dương n, người ta biến đổi con số thành một con số m có 1 chữ số bằng cách: Tính tổng các chữ số của n ta được n1, nếu n1 có từ 2 chữ số trở lên thì lại tính tổng chữ số của n1 ta được n2, tiếp tục đến khi chỉ còn 1 chữ số. Viết chương trình nhập vào số n và cho biết sau khi biến đổi số n theo cách nêu trên ta được con số m là bao nhiêu?
Mã ACCII của ký tự số
Các hàm, thủ tục về mã accii của ký tự
ord(ch)
Hàm
Tính mã số accii của ký tự ch
Chr(n)
Hàm
Cho ra ký tự có mã accii là n
Mã số accii ký tự số: ‘0’,’1’,...,’9’ là 48,49,...,58 nghĩa là ord(‘1’) =49 , chr(48)=’0’
Lọc chữ số trong một chuỗi có nhiều loại ký tự:
+ Lấy từng ký tự trong chuỗi S, dùng biến ký tự ch:= S[i]
+ Sử dụng điều kiện tập hợp: ch in [‘0’..’9’] để lọc ký tự chữ số
Ví dụ: Viết chương trình nhập vào một chuỗi gồm các ký tự là mẫu tự, khoảng trắng và chữ số. Các chữ số liền nhau trong chuỗi tạo thành con số. Hãy cho biết có bao nhiêu con số trong chuỗi?.
Program locso;
uses
* Một số tài liệu cũ có thể bị lỗi font khi hiển thị do dùng bộ mã không phải Unikey ...
Người chia sẻ: Nguyễn Thị Thúy Liễu
Dung lượng: |
Lượt tài: 0
Loại file:
Nguồn : Chưa rõ
(Tài liệu chưa được thẩm định)