Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (74.07 KB, 1 trang )
Ngày 8/3/2009
Bài tập Pascal
Bài 1: Số đơn điệu
Định nghĩa: Các số nguyên dương luân phiên tăng giảm hoặc giảm tăng được gọi là các số đơn điệu.
Ví dụ: 4537 vì 4 < 5 > 3 < 7
Yêu cầu: Viết chương trình xác định số chữ số đầu tiên lớn nhất tạo thành số đơn điệu của một số cho trước.
Dữ liệu: DuLieu.Vao
Kết quả: KetQua.Ra
Ví dụ:
DuKieu.Vao KetQua.Ra
4537 4
*Phân tích tìm thuật giải:
- Các dạng số đơn điệu: Có 2 dạng phụ thuộc vào hai chữ số đầu.
- Dạng 1:
Chữ số thứ nhất lớn hơn chữ số thứ hai. Ví dụ: 7564
Đặt: a1=7; a2=5; a3=6; a4=4. Ta có: a1 > a2; a2 < a3; a3 > a4
Gọi i là chữ số thứ i. Khi đó:
If i mod 2 <> 0 then a[i] > a[i+1]
If i mod 2 = 0 then a[i] < a[i+1]
- Dạng 2:
Chữ số thứ hai lớn hơn chữ số thứ nhất . Ví dụ: 5746
Đặt: a1=5; a2=7; a3=4; a4=6. Ta có: a1 < a2; a2 > a3; a3 < a4
Gọi i là chữ số thứ i. Khi đó:
If i mod 2 <> 0 then a[i+1] > a[i]
If i mod 2 = 0 then a[i+1] < a[i]
*Từ đó ta có chương trình
Var
xau : string; i, n : integer;
kt : boolean;
so1, so2,x1,x2, z : integer;
St1 : Text; St2: Text;